Классический форум-трекер
canvas not supported
Нас вместе: 4 232 579

Под чёрным флагом пост, или Как я не выложил видеокурс на трекер


Страницы:   Пред.  1, 2, 3, 4, 5, 6  След. 
 
RSS
Начать новую тему   Ответить на тему    Торрент-трекер NNM-Club -> Поговорим -> Новости P2P, Копирайт, Блокировки
Автор Сообщение
Maximus ®
Вольный стрелок
Uploader 100+
Стаж: 17 лет 6 мес.
Сообщений: 5097
Ratio: 25.179
Поблагодарили: 13237
100%
nnm-club.gif
В трудное время мы живем, не находите? Люди эгоистичны, не признают ценность чужих трудов, любят приходить сразу на все готовое. Интеллектуальная собственность для многих вообще выглядит не более чем бюрократической шуткой: «Как же это так, информация должна быть свободной, ведь это ИН-ФОР-МА-ЦИЯ!!!11». Согласен, в идеале это так. Эти ваши анархии, мятежнические настроения и философии андерграундных хакеров/пиратов, стоящих на страже прав простого люда, мне не чужды. Но парадокс в том, что истинная справедливость – это еще и отплачивать всем за их труд и заслуги, поэтому в большинстве случаев пиратство – антагонистическое предприятие. Но вот политика предоставления услуг по защите интеллектуальной собственности, предлагаемая таким замечательным вендором, как ИнфоПротектор, вызвал у меня праведный гнев.

Под катом история о том, как я приобрел платный видеокурс, выпал в осадок после осознания того, что я не смогу сохранить видеоролики из оного для повторного просмотра в будущем, разозлился на тех, кто скропал этот квазизащитный софт (который, ко всему прочему, безжалостно лагает и жрет много ресурсов машины) и решил немного восстановить справедливость… Не нарушая закон, конечно же. Amen.

ДИСКЛЕЙМЕР. Все нижеизложенное опубликовано в исследовательских целях и призвано выполнить исключительно образовательную функцию. Автор не несет ответственности за неправомерное использование информации из данного поста и ни в коем случае не призывает воспринимать его как «инструкцию к действию».

Как все было

Выдались свободные выходные, и решил я выложить честно заработанные XXXX р. на 5-и часовой видеокурс. Назовем его «Курсом повышения квалификации для работника общепита», чтобы не возникло никаких параллелей. Вообще, я не сторонник восприятия информации через видеоуроки (о-о-очень контрпродуктивно), но здесь прямо не удержался – пал жертвой красочных рекламных баннеров.

Оплатил, на почту прилетело письмо, содержащее ссылки на загрузку материалов, придуманные (ссылки) рандомайзером ИнфоПротектора и выплюнутые на близлежащий CDN. В теле письма – благодарности автора за приобретение и регистрационный ключ, которым предлагалось активировать покупку.

Скачиваю архив. В архиве папка. В папке исполняемый файл. В исполняемом файле яйцо. Запускаю exe'шник – здесь-то мне и выложили всю правду, которая в свободном пересказе звучит примерно так (читать гнусавым голосом):
    К данному видеокурсу применен механизм защиты цифровой информации компании «ИнфоПротектор»; для первого запуска (читать «активации продукта») необходим доступ в Интернет; просмотр видеороликов возможен только из нашей программы, из нашего плеера; установка видеокурса возможна только на двух компьютерах (видеокурс привязывается к конфигурации окружения ОС / железа, как выяснится позже).

Вот на этом моменте я немного огорчился. Т. е. мало того, что меня обозвали бесчестным человеком, которому лишь бы лишить чужой труд монетизации, так еще и курс, за который я выложил приличную сумму, будет доступен мне только до переустановки системы.

«Так не пойдет», – решил я и начал серию экспериментов.

Ограничения, налагаемые ИнфоПротектором

Чтобы не тратить время зря, для начала я обратился ко всемирной паутине, чтобы узнать, что уже люди накопали о механизме защиты этих ребят (все тонкости работы защиты, разумеется, не раскрываются).

Что удалось узнать:

Ключ активации генерируется случайным образом при оплате курса и используется для того, чтобы быть аутентифицированным сервером, который в случае успеха высылает клиенту AES-ключ для расшифрования видеоматериалов, доступных из-под кастомного плеера компании. Реверсить приложение долго и максимально трудоемко (т. е. нецелесообразно для такого рода задачи), поэтому этот путь я решил оставить.
Использование средств записи экрана безжалостно блокируется по целому ряду направлений: на одном хосте нельзя одновременно запустить плеер и любой screen capturer, т. к. программа детектит запущенные процессы с их метаданными: названия заголовков окон; описание исполняемых файлов; названия вендоров, вшитых в exe'шники приложений захвата; даже браузер, открытый на страничке, в названии которой есть слово «Fraps», к примеру, также является предметом для алерта и завершении работы плеера.
Песочницы, виртуальные машины и стриминг контента с удаленных подключений (rdesktop, RAdmin, TeamViewer) тоже не вариант – не по годам умный софт умеет определять и их, самоубиваясь при каждом удобном случае.

Но несмотря на последние два пункта самым реальным вектором атаки остается все же запись экрана, реализовать которую можно попробовать несколькими способами:

Найти программу для захвата, которая бы не содержала слов-маячков в своем названии/производителе/описании, которую не знает ИнфоПротектор, и на которую, следовательно, последний не будет триггериться. Минусы: долго, скучно и не факт, что в принципе выполнимо.
Найти опенсорс-продукт, обладающий нужным функционалом, и скомпилировать свою версию захватчика экрана, заменив в исходниках все, что защите ИнфоПротектора в теории может показаться подозрительным. Минусы: долго, скучно, трудоемко (обычно такие проекты довольно громоздки, состоят из сотен (?) файлов и имеют кучи зависимостей в исходниках, поэтому просто Ctrl-H не прокатит, это тебе не mimikatz править, чтобы Windows Defender не стриггерить).
Написать свое решение на чем-нибудь скриптовом, чтобы не рисковать со скомпилированным исполняемым файлом неизвестной природы (неизвестно, что на это скажет эта зараза), реализующее тривиальный функционал быстрого снятия скриншотов с выбранной области экрана (благо, ИнфоПротектор это позволяет), и отдельно записать звуковую дорожку, что тоже оказалось легитимным и максимально простым действом.

Минусов третьего пункта не обнаружилось, поэтому можно приступать.

Заскриншотить весь мир

Первое: разберемся, как автоматизировать процесс создания тучи скриншотов с помощью скрипта. Конечно, это: Python, и еще OpenCV, и еще MSS, и еще PIL.

Процесс предельно прост:

Выставим размер окна плеера, равным разрешению выходного видео, которое мы хотели бы иметь (логично учесть место для элементов управления скриптом – окно с терминалом, например, которое не должно попасть в область записи). Это можно сделать такой чудесной софтиной.
Расположим окно плеера в такой позиции, как найти которую было бы проще всего объяснить скрипту – правый нижний угол экрана (думаю, система отсчета, связанная с границами экрана — самый удобный вариант).
Натравим уже написанный скрипт (который будет чуть ниже) делать скриншоты этой области.
Не трогаем эту неуклюжую систему в процессе всего проигрывания видео.

Скрипт под спойлером:
Код: выделить все
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

# Usage: python3 fckInfoprotector.py <WIDTH> <HEIGHT>

import sys

import numpy as np
import cv2
from mss.windows import MSS as mss
from PIL import Image

class Capturer:

  def __init__(self, w, h, resolution='1080p', fps=24.975):
    if resolution == '1080p':
      self.monitor = {
        'top': 1080 - h,
        'left': 1920 - w,
        'width': w,
        'height': h
      }

    elif resolution == '1440p':
      self.monitor = {
        'top': 1440 - h,
        'left': 2560 - w,
        'width': w,
        'height': h
      }

    else:
      raise ValueError('Unsupported monitor resolution')

    self.sct = mss()

    self.vid = cv2.VideoWriter(
      'output.avi',
      cv2.VideoWriter_fourcc(*'XVID'),
      fps=fps,
      frameSize=(
        self.monitor['width'],
        self.monitor['height']
      )
    )

  def mainloop(self):
    try:
      while True:
        sct_img = self.sct.grab(self.monitor)
        sct_img_size = (sct_img.width, sct_img.height)

        img = Image.frombytes(
          'RGB',
          sct_img_size,
          sct_img.rgb
        )

        frame = cv2.cvtColor(
          np.array(img),
          cv2.COLOR_BGR2RGB
        )

        self.vid.write(frame)

    except KeyboardInterrupt:
      cv2.destroyAllWindows()
      print('Interrupted')

if __name__ == '__main__':
  if len(sys.argv) != 3:
    print(f'Usage: {sys.argv[0]} <WIDTH> <HEIGHT>')
    sys.exit()

  w, h = (int(x) for x in sys.argv[1:3])
  capturer = Capturer(w, h, fps=50.0)
  capturer.mainloop()
Записать аудиодорожку

Ну здесь совсем элементарно: Windows позволяет сделать это встроенными средствами.

Для Windows 7: Пуск -> Панель управления -> Оборудование и звук -> Звук -> Запись -> Показать отключенные устройства и выбрать «Стерео микшер»



Теперь при начале записи к нашей и без того неуклюжей конструкции добавляется еще такая кнопка, на которую тоже нужно нажимать:



Объединить две половинки целого

После того, как видеоряд и звуковое сопровождение готовы, остается эту конструкцию склеить. Будем делать это в чудесном видеоредакторе под название VirtualDub.

Откроем видео:



Добавим аудиодорожку:



Изменим фреймрейт видео, т. к. в оригинальном плеере он оказался непостоянным. Поэтому, чтобы видео и аудио имели одну и ту же длину, снизим частоту кадров с 50 (мы специально взяли с запасом, когда записывали) до X, где X рассчитывается по формуле:

X=captured_video_duration×50÷original_video_duration


Да, при таком подходе могут быть незначительные рассинхроны голоса и картинки, но это вынужденные жертвы.

Добавим компрессию видео по желанию и F7! Получили ролик из видеокурса.

Под занавес

Почему этот пост наполнен таким негодованием? Постараюсь объяснить.

Во-первых, при покупке курса я нигде не нашел упоминаний о том, что я буду ограничен в его использовании всеми возможными способами. Я специально вернулся на страничку магазина и попытался найти в договоре оферты хоть что-нибудь, что укажет мне на то, что для использования курса я буду вынужден быть привязанным к конкретному персональному компьютеру. Нет, в соглашении только стандартные слова.

Во-вторых, мне непонятна логика друзей из ИнфоПротектора: зачем столько усилий и кривой софт (который жаловался даже на дрова NVIDIA, как на средство записи экрана!), если в конце концов, у злоумышленника, которому лень будет заниматься тем бредом, что описал здесь я, просто есть возможность сделать «экранку», поставив перед монитором камеру на штативе?

В-третьих, многие скажут: «Так ведь DVD-диски тоже были защищены от копирования!». Да, все так. Только вот диск я мог взять куда угодно, посмотреть его столько раз, сколько мне нужно (имею право), и он работал бы так же исправно, сколько компьютеров я бы не поменял.

Поэтому предлагаю ИнфоПротектору более действенное решение: не только вырубать плеер, если обнаружен инстанс процесса интерпретатора скриптового языка, но и поставить обязательным условием наличие у купившего курс веб-камеры, к которой будет прикреплен сотрудник (пускай, низшего звена), рьяно фиксирующий, не выполняет ли зритель противоправных действий. Думаю, это решит множество проблем с пиратством (нет).

Закон и великий Договор я не нарушил, материалы на просторы Интернета не выкладывал и не собираюсь, единственное мое преступление – любопытство.

Йо-хо, громче черти!

habr.com

_________________
«Если ты ненавидишь, значит тебя победили» – Конфуций
Vipeg
Стаж: 12 лет 6 мес.
Сообщений: 14
Ratio: 1039
Раздал: 37.26 TB
100%
nnm-club.gif
Давайте не путать авторов и так называемых "правообладателей". Вторые - вот настоящее зло. Вот кто хочет, один раз кинув автору копейки, постоянно выгребать гешефт, ведь они "вложились", "предоставили платформу" и "доносят продукт до потребителя в удобном виде". Вот где фейспалм.
Паразиты - это ненужные звенья в цепочке доставки контента.
Ourger
Стаж: 6 лет 8 мес.
Сообщений: 183
Ratio: 0.556
Поблагодарили: 4
100%
nnm-club.gif
immortal1977 писал(а): Перейти к сообщению
litres так продает некоторые свои книги: вместо pdf предлагает смотреть их в своей читалке. И все бы ничего, но их читалка крайне криво работает на планшете huawei, пользоваться одно мучение, а альтернативы нет.


эти книги тоже скачиваются с сайта с помощью программы Internet Download Manager как картинки, потом посто распознается текст и вот уже есть книга в формате pdf.
glass99
Стаж: 8 лет 5 мес.
Сообщений: 139
Ratio: 9.391
Поблагодарили: 1
100%
ussr.gif
Покупал прогу за 500 ойро.
Не нашу.
Ну, она доступна на торрентах, но, поскольку я с её помощью зарабатывал - там принципиально важно иметь лицензионную (не потому что организация, а во избежание траблов).
Там система следующая - прогу купил - года три ей пользуешься, она регулярно обновляется (без доплаты).
Через 3-4 года - выходит принципиально новая версия - и её уже - нужно покупать снова.

Как-то с самого начала не задалось - ключ не активировался - поэтому сутки объяснялся с авторами. Ладно, объяснился. Вероятно - испугались жалобы в paypal (оплачивал через него), но не суть.

Попользовался всего год - а потом, та компания - вообще свернула это направление.
Следовательно - обновлений больше не будет.
Я-то рассчитывал, что ещё года 2-3 она будет актуальна, а - упс.
Дело в том, что там привязка к браузерам. Которые обновляются постоянно и часто.
И, без обновлений - сей софт малоактуален.

В общем, я это расценил - как кидок.

Причём - я-то хотя бы год пользовался актуальной версией.
А, некоторые - покупали за пару месяцев до сворачивания проекта (предупреждений о том, что поддержка прекратится - не было).
Теперь вот 10 раз подумаю, стоит ли софт оплачивать, при таком отношении.
nyukmedia
Стаж: 10 лет 4 мес.
Сообщений: 207
Ratio: 0.528
Раздал: 16.5 GB
2.14%
ukraine.gif
Истина проста - курсы надо делать такими чтобы не было смысла их тырить.
paramedik1
Uploader 100+
 
Стаж: 14 лет 7 мес.
Сообщений: 4889
Ratio: 154.668
Поблагодарили: 2898
100%
ussr.gif
nyukmedia писал(а): Перейти к сообщению
Истина проста - курсы надо делать такими чтобы не было смысла их тырить.

Это по принципу Неуловимого Джо? И кому будут нужен столь убогий материал?

По теме - беспроигрышный вариант. Аппарат с платой удаленного доступа. На нем запускается файл, пишется звук, а с другого подключиться и посредством ilo, ipmi все зафиксировать.
DarknessStorm
Стаж: 12 лет 4 мес.
Сообщений: 181
Ratio: 18.618
Раздал: 2.686 TB
28.66%
japan.gif
Maximus писал(а): Перейти к сообщению

Закон и великий Договор я не нарушил, материалы на просторы Интернета не выкладывал и не собираюсь, единственное мое преступление – любопытство.


Я бы нарочно, специально выложил бы в открытый доступ данный курс или любой иной материал/софт с подобным подходом, т.е. не указание изначальных условий оферты)... или даже невзирая на их наличие.
jura_22
Стаж: 14 лет 11 мес.
Сообщений: 17
Ratio: 5.83
30.77%
Будь мужиком! Снимай CAMRip!
savsoft
Стаж: 12 лет 11 мес.
Сообщений: 3102
Ratio: 1.164
37.47%
Amon2501 писал(а): Перейти к сообщению
А потому что все хотят быть рантье, никто не хочет работать.


Произвел молокозавод 1 млн. бутылок молока. Заплатил за одну - можешь забрать все?

P.S.1. Так что ваш пример очень неудачный. В реале команда производит программный продукт не один месяц. И чтобы отбить затраты и получить разумную прибыль нужно продать разумное количество копий за разумные деньги. Так что в этом случае копия программного продукта соответствует одной бутылке молока.

P.S.2. Но вообще закон о копирастах уже вышел за пределы нормальности. Будь такие законы раньше, то никогда бы не было библиотек, пунктов проката, видеомагнитофонов, магнитофонов и т.д.
valdo666
Стаж: 12 лет 11 мес.
Сообщений: 214
Ratio: 1.602
0%
israel.gif
А вам не кажется, ребята, что все эти ограничения, которые бьют по простым пользователям, появляются именно из-за пиратства?
Если бы большинство пользователей были порядочными, и понимали что за любым видеокурсом стоят живые люди и вложенная работа, за которую кто-то должен заплатить, то, возможно, не было всех этих DRM, copy protection и т.п.

Когда мы говорим про большие компании аудио/видео-записи, то там, как известно, бОльшая часть прибыли идёт компании а не автору. Но ведь есть же исключения. Иногда небольшие компании или даже одиночки создают хороший контент, почему вы считаете нормальным что за это не надо платить?
EDV64
Стаж: 13 лет 2 мес.
Сообщений: 217
Ratio: 441.287
Раздал: 225.1 TB
100%
russia.gif
Внешний видеозахватчик с HDMI входом, не? AVERMEDIA EzRecorder 130 ER130 - гуглится, например, в одном желто-оранжевом ритейлере, и цена 6.7К...
Azelle
Стаж: 12 лет 11 мес.
Сообщений: 13
Ratio: 0.389
9.77%
russia.gif
А еще можно видеовыход видеокарты (если есть) подключить к тв тюнеру и произвести запись программой от тюнера :)))
savsoft
Стаж: 12 лет 11 мес.
Сообщений: 3102
Ratio: 1.164
37.47%
valdo666 писал(а): Перейти к сообщению
А вам не кажется, ребята, что все эти ограничения, которые бьют по простым пользователям, появляются именно из-за пиратства?
Если бы большинство пользователей были порядочными, и понимали что за любым видеокурсом стоят живые люди и вложенная работа, за которую кто-то должен заплатить, то, возможно, не было всех этих DRM, copy protection и т.п.

Когда мы говорим про большие компании аудио/видео-записи, то там, как известно, бОльшая часть прибыли идёт компании а не автору. Но ведь есть же исключения. Иногда небольшие компании или даже одиночки создают хороший контент, почему вы считаете нормальным что за это не надо платить?


Достаточно лет работал в ИТ-отделах разных крупных производств. И достаточно слышал, да что они там делают - кнопочки нажимают. За десятилетия наблюдал, как менялось сознание, от работает только производство, а все остальные (бухгалтеры/экономисты/финансисты/маркетологи/продавцы и т.д.) нахлебники. Постепенно от произвести акцент ушел до продать, но ИТ-шники в производственных компаниях все еще не имеют достойного уважения, за редким исключением.

P.S. Мы живем в 21 веке, веке цифровой экономики, где информация стала товаром. Но барыги стали еще жаднее, чтобы продать больше молока, нужно больше ресурсов, а чтобы продать больше копий - ресурсы нужны, но меньше. Вот и ставят копирасты знак равно между скачать эпизод сериала, который крутят по телевизору и скачать достаточно дорогой софт.
alex12nnm
Только чтение
Стаж: 11 лет 8 мес.
Сообщений: 1875
Ratio: 0.548
100%
ussr.gif
При капитализме (а равно и феодализме и рабовладизме) информация считается свободной, если только её впаривают почтенной публике вместе с рекламой или пропагандой. Иначе она считается интеллектуальной собственностью кого то.
зы- Тьфу, прости меня Господи, а ведь интеллектуалная собственность то у человека одна - это его мозги, и придумав ими что-нибудь человек повышает их ценность, продукт же их никоей собственностью уже являться не может, как, впрочем, и прочие человеческие выделения.
lesss
Стаж: 14 лет 11 мес.
Сообщений: 4694
Ratio: 3M
100%
Слово - кейлоггер, автору знакомо? Нет? Ну, пускай познакомится.)
sasha40rus
Стаж: 13 лет 1 мес.
Сообщений: 42
Ratio: 2.235
0.34%
Откуда: Koenigsberg
russia.gif
Amon2501 писал(а): Перейти к сообщению
А потому что все хотят быть рантье, никто не хочет работать. Чтобы еще раз получить зарплату надо еще раз поработать. А они хотят один раз сделать какой то видеокурс и ВЕЧНО с него рубить бабло, не делая ничего нового. И даже только поэтому пиратство-хорошо.


Вот правильно. А главный урод - Шекспир. Как написал свои пьесы - так их все переиздают да переиздают. Пускай работает!!!! Чтобы зарплату получить.
Показать сообщения:   
Начать новую тему   Ответить на тему    Торрент-трекер NNM-Club -> Поговорим -> Новости P2P, Копирайт, Блокировки Часовой пояс: GMT + 3
Страницы:   Пред.  1, 2, 3, 4, 5, 6  След.
Страница 2 из 6