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

captain_flint.jpg

Привет, Хабр, салют, ИнфоПротектор. В трудное время мы живем, не находите? Люди эгоистичны, не признают ценность чужих трудов, любят приходить сразу на все готовое. Интеллектуальная собственность для многих вообще выглядит не более чем бюрократической шуткой: «Как же это так, информация должна быть свободной, ведь это ИН-ФОР-МА-ЦИЯ!!!11». Согласен, в идеале это так. Эти ваши анархии, мятежнические настроения и философии андерграундных хакеров/пиратов, стоящих на страже прав простого люда, мне не чужды. Но парадокс в том, что истинная справедливость – это еще и отплачивать всем за их труд и заслуги, поэтому в большинстве случаев пиратство – антагонистическое предприятие. Но вот политика предоставления услуг по защите интеллектуальной собственности, предлагаемая таким замечательным вендором, как ИнфоПротектор, вызвал у меня праведный гнев.

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

Как все было


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

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

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

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

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

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


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

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

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

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

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

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

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


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

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

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

Скрипт под спойлером:

fckInfoprotector.py
#!/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: Пуск -> Панель управления -> Оборудование и звук -> Звук -> Запись -> Показать отключенные устройства и выбрать «Стерео микшер»:

1.png

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

2.png


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


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

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

3.png

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

4.png

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

$X=captured\_video\_duration\times 50\div original\_video\_duration$


5.png

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

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

Под занавес


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

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

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

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

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

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

Йо-хо, громче черти!
Поделиться публикацией

Комментарии 51

    0

    удолил

      0
      В принципе, в свое время «защищенные» книгочиталки так и канули в Лету.
      Оказалось, что при выходе сколь-либо популярной книги всегда находятся люди, делающие скриншоты или фотографии экрана монитора, и потом распознающие их с OCR-переводом в стандартный текст.
        0
        Вот намудрил так на мудрил.
        Конечно можно свою программу наваять, модифицировать методанные других программ, запустить из виртуалки, а в материнской OS это все снимать, но зачем?
        Как по мне, самое простое и быстрое решение взять внешнее хардварное устройство и записать курс в личный видеоархив.
        Памяти даже на смартфонах хватит, да и объективы уже давно стали хорошими, про обычные видеокамеры даже заикаться не буду.
        0
        который жаловался даже на дрова NVIDIA, как на средство записи экрана!

        да, потому что есть GeForce Experience
          +2
          Да, но, по-моему, это все же ненормально, когда перед запуском ролика конечный пользователь (в лице меня), купивший продукт, обязан проделать овермного манипуляций (в частности, отключить ShadowPlay из GeForce Experience), чтобы просто заставить тот самый продукт работать.
          +3
          А еще аппаратные платы видео захвата. Цена вопроса, конечно, в итоге будет негуманная, но если поставить на поток…
          +4
          Копирастия, бессмысленная и беспощадная!
          Курс-то хоть хороший оказался?
            +3
            Как-то забыл о самом курсе, если честно, ИнфоПротектор подогнал круче развлечение. Но, на самом деле, когда тестишь варианты, и видос всегда мелькает перед глазами, даже лучше усвоилось, поэтому да, курс тоже ничего такой xD
              +1
              ИнфоПротектор подогнал круче развлечение.

              Так вот это и был САМ КУРС!

              ЗЫ: а я бы сделал качественную экранку :)
            +3

            Очень мутное решение. У вас так или иначе через 15 минут начнется нехилый рассинхрон аудио. Можно купить HDMI сплитер, которого как огня боятся все защищённые видео. И этот поток записать внешним медиа рекордером или вторым компом с видеозахватом. Меньше всего гемора, но дороже всего.


            Но я бы проигрался с заменой заголовков окон, если их палят. Можно же элементарно через InqSoft Window Scanner менять заголовки на какие угодно

              +2
              Эти защитники видео еще в видеоряд встраивают метки, по которому со слитой в общественность записи можно считать идентификатор пользователя-пирата.
              И в лицензии курса будет что-нибудь типа «вы должны нам 100500 денег, если запись утечет в сеть»
              (мы, конечно, говорим о восстановлении права просмотра урока в одно лицо с трех девайсов, один из которых на Solaris Os)
                +4

                Значит 360p хватит всем)

                +1
                Согласен про рассинхрон, но удача в том, что обычно такие курсы делаются нарезками по 10-15 мин на один «урок», поэтому при таком подходе задержки картинки/звука незначительны. Плюс, никто не заставляет удалять отдельный файл аудиоряда после склейки — можно уточнять интересующие моменты (если они совсем плохи в плане рассинхрона), сводя воспроизведение вручную. Муторно, но это совсем при безысходности и необходимости решения «здесь и сейчас».
                  0
                  сводить нужно в редакторах, поддерживающих растяжку во времени. В magix pro достаточно растянуть видео под размер аудиодорожки правильным инструментом.
                +1
                Инфопротектор еще очень нестабильно работает на MacOS — билд постоянно вылетает из-за ошибок доступа к памяти.

                Не пробовали реверсить бинарник .ipr? Судя по тому, что интернет требуется только для активации, а во время просмотра можно спокойно выключить доступ к сети — ключ для декодирования бинарника либо зашит в сам бинарник, либо получается единовременно при запуске видео.
                  0
                  Первое, что пришло в голову, если честно. Реверс немного не моя специализация, поэтому не стал прыгать в омут, но теперь уже думаю покопаться на досуге.
                  +1
                  Я тут на днях полчаса пытался в винде поменять местами звуковые каналы. Потом до меня дошло и я на усилителе разъёмы переткнул.

                  Самый тупой вариант всегда был через запись камерой с экрана. В минусах качество, но если вы у себя дома, то можно и вполне пристойную экранку получить. :)
                  Ещё, как вариант, захват с выхода видеокарты. Но тут надо докупать оборудование, потому ради одного раза это невыгодно.
                    +7

                    Вот софт с такой, простите, за-щит-ой, и стоит выкладывать. Потому что это ужасно: за свои же деньги Вы не получаете никакого сервиса, более того, вынуждены ещё и использовать какой-то невнятный плеер чтобы воспроизвести это, нельзя посмотреть это на консоли/медиацентре/телефоне в любой удобной обстановке или без интернета в поезде или самолёте и так далее.


                    Не подумайте, что я противник лицензионного контента — вовсе нет. Я покупаю контент в Steam, одобряю подход к покупке игр на консолях, например.


                    1. До радикальных поборников копирайта никак не дойдёт, что лучший способ монетизировать — это удобство, удобство, и ещё раз удобство — и оплаты, и дистрибуции. Пример: я скачиваю пиратскую копию какой-нибудь игры, она мне ну очень нравится в процессе и я хочу наблюдать, что будет с этим проектом дальше — открываю и покупаю её в Steam — получаю и возможность обновлений, и удобство сетевых игр (хотя этим не пользуюсь, но это есть и много для кого важно). Есть возврат, если прошло менее 2 часов в игре, у консолей же на этот пункт есть демо-версии "на попробовать" перед покупкой. Ещё пример — сервисы музыкального стриминга, которые давно это поняли — подписка стоит недорого, есть оффлайн-кэш, при этом практически никто не занимается выдиранием аудиопотока и прочего, хотя это тривиально. Почему? Удобство.
                    2. Подобная политика "проприетарный плеер с проприетарной защитой на проприетарной ОС, запуск только с 9 до 18, пока наш сервер работает" устарела, неизбежно и безвозвратно, на любые методы защиты найдётся решение её обхода, вопрос лишь в (а) времени, (б) востребованности контента. Если в Вашем случае не нашлось решения — значит, возможно, это не столь востребовано, увы.
                    3. Помимо удобства, есть такая штука, как краудфандинг и его близкие "аналоги". Пример: некоторые музыкальные коллективы сами выкладывают свои записи — в соцсети, Soundcloud и прочее, при этом не бедствуют — они этим создают себе лояльную аудиторию и автоматически рекламируют себя.

                    Разумеется, не всё можно подвести под вышеописанное, нет ничего идеального, но аудио, видео, курсы, книги — хорошо подходят. Софт и прочее — меньше подходят, однако, и тут есть варианты — к примеру, платная поддержка и обучение в приложению к "бесплатному" FOSS (беспланое — в смысле не требующее непосредственной покупки).


                    Ещё из примеров — весьма частых — видео к конференциям. Непосредственным "платным" участникам сразу выдаётся ссылка на курс, в виде простых файлов или на каком-либо видеохостинге, при этом организаторы просят, чтобы файлы не распространяли до некоторого периода, например, полгода — после этого "запрет" снимается и материалы становятся публичными. Почему никто (или почти никто, невозможно говорить в абсолюте) не заинтересован в "выкладке" их сразу? Во-первых, уважение и этика, во-вторых, нежелание делиться в виду того, что уже оплатил "ранний доступ" — всё честно и редко кто-то с этим не соглашается.

                      +2
                      Еще вариант: написать небольшую программу, которая может менять названия заголовков форм + дочерних по ID процесса.

                      Грубый пример:

                      procedure TForm1.Button1Click(Sender: TObject);
                      begin
                        SetWindowText(FindWindow(nil, 'Безымянный - Блокнот'), 'Delphi World FOREVER !!!');
                      end;


                      Исходников и примеров полно получения всех открытых окон и их ID, думаю за пол часа справились бы.

                      Далее просто запустить любую понравившуюся программу для записи видео, изменить текст нужного окна/окон данного скриншотера, хоть на «хххххх11111», потом запустить ваше видео и спокойно записывать экран.
                        +1
                        Имеет право на жизнь, только не уверен, что защита детектит только название формы окна: проверка еще идет по метаданным исполняемого файла захватчика экрана. Когда пробовал менять их с помощью того же Resource Hacker, большинство тестируемых приложений просто не хотело больше запускаться.
                        +5
                        Регулярно покупаю drm-free софт и различную электронную дистрибьюцию через humble bundle и gog. Думаю, что раз у них всё хорошо и они успешно развиваются, то это что-нибудь да значит. Очень надеюсь, что всякие ИнфоПротекторы сдуются, а создатели качественного контента придут к drm-free. А уж тем более вставлять палки в колёса легальному потребителю — фу таким быть. В конце концов, если даже что-то скачиваешь с торрентов, и понравилось, то всё равно захочится поблагодарить авторов. Так что пиратство стимулирует к покупке качественных вещей, и позволяет голосовать рублём более объективно.
                          0
                          resolution='1080p'

                          Это не очень хорошая идея, потому что разрешение не обязано быть 1080p или 1440p. (Вот лично мне, например, 720p до сих пор достаточно.) Поэтому лучше было бы что-то типа
                          resolution='1920x1080'

                          или еще лучшк
                          screen_width=1920,screen_height=1080

                          А всякие 1080p и т.п. — по сути, синтаксический сахар.
                            0
                            Дык, конечно, это синтаксический сахар, просто, чтобы удобнее было работать с кодом. «1080p» в данном случае — это не разрешение выходного видео, это разрешение монитора, от которого будет отталкиваться скрипт при высчитывании нужной для записи области экрана.
                            –8
                            Вспоминается…
                            Приезжает мужик на запорожце на стоянку, вылез, включил сигнализацию, замок навесил… Водитель рядом стоящего мерса, не выдерживает:
                            «Мужик, ты нормальный ваще, у меня такая крутая тачка, так я и то так не
                            предохраняюсь от угона, а твою колымагу все-равно никто не украдет!!!!»
                            Водила запорожца: «Ну да… украсть-то не украдут… но на прошлой
                            недели нагадили!!!!»

                            Любую защиту возможно взломать, дело лишь в соотношении цена/стоимость.
                            И это относится не только к компьютерным делам.
                            И гораздо большая ответственность в принципе наступает за последствия — к примеру угон. Поэтому особенно хвалиться возможностью «взлома» курса я бы не стал. Курс защищен, это уже некоторое предостережение, а то что его можно заскриншотить — это не значит что его можно выкладывать на торренты.
                              +5
                              а мне тут вспомнилось как я диск с игрой лет 10 назад купил за свои деньги (лицензионный), а он через несколько месяцев читаться перестал. А скопировать его нельзя было т.к. «лицензионный, защищенный» и все такое. Как итог пришлось скачивать пиратскую версию, которая оказалась сразу же с последним патчем. Угадайте, сколько лицензионных игр я потом купил?

                              Но при этом много раз играл в «условно-бесплатные» (ну это где можно играть либо бесплатно, либо покупать что-то за деньги) и тратил на них гораздо больше, чем мог бы заплатить за диск.
                                –4
                                Давайте уже дополучу свою порцию минусов но отвечу.
                                Заменим предмет. Предположим вы купили автомобиль за свои деньги и он сломался.
                                А тут на стоянке как раз такой же и вы умеете его заводить замкнув проводки зажигания.
                                Угадать сколько лет вам дадут.
                                А то что это компьютерная программа, а не автомобиль — это определяется уровнем воспитания и уровнем страха за поимку, не более того.
                                Нет такого понятия что вот это можно тырить, а вот это вот нельзя.
                                И в некоторых странах это работает, а в некоторых ав принципе и автомобиль можно взять.
                                  +4
                                  стоп стоп стоп… вы вводите в себя заблуждение. Вы (как и те кто материально заинтересованы в таком цифровом лицензионном рабстве) очередной раз пытаетесь проводить аналогию с материальными объектами, чтобы установить правовые нормы. Программная копия или медиа контент это не материальный объект, и кража его равна краже мешка картошки. Это вообще другое и нужно вводить другие нормы ответственности и прав.
                                  Вас принуждают покупать автомобиль определенной марки? Вам встаривают в машину блокираторы, чтобы вы не переходили к конкурентам, причем блокиратор кушает бензин за ваш счет? А в софте этого полно.
                                    +1
                                    capitannemo как уже отметил Alexufo ваш пример некорректен. Давайте я вам более корректный пример приведу (да и то не в точку будет): билет на просмотр фильма.

                                    Пускай я покупаю билет на 1-й ряд 1-е место на фильм который будет идти в субботу 4 мая в 19 часов в кинотеатре «Суперкино» в городе Иваново.

                                    Из этого очевидно что я буду смотреть этот фильм:
                                    — в городе Иваново (не в любом другом, где есть сеть кинотеатров «Суперкино»);
                                    — в кинотеатре «Суперкино», а не «Суперфильм»;
                                    — в субботу 4 мая 2019 года;
                                    — сеанс в 19 часов;
                                    — я приду один;
                                    — я сяду на первый ряд;
                                    — займу место №1;

                                    Это понятные и очевидные условия, я понимаю и принимаю их покупая билет. Хотя плачу я не за это, а за просмотр фильма.

                                    А вот если я покупаю диск с этим фильмом (например, после просмотра кино прямо в кассе кинотеатра), то где, когда, с кем и т.п. — это моё личное дело (за исключением показа в коммерческих целях, как я понимаю).
                                      +1
                                      Покупая диск с игрой за 1000 условных рублей — вы купили диск как физический носитель за 100 рублей и еще за 900 — купили содержимое диска. При этом поломка физического носителя — лишила вас всей покупки.
                                      С автомобилем — это примерно как если бы в контракте на приобретение был прописан полный запрет на любые ремонтные работы. Купил — езди пока не сломалось, а дальше на выброс.
                                        +1
                                        Вопрос утраты оригинала и цены копии. Вы взяли на стоянке чужой автомобиль, хозяин остался без автомобиля. Вы пришли на стоянку с магическим устройством, которое создало вам точную копию автомобиля, на котором вы и уехали, а хозяин оригинала остался со своим автомобилем и ничего не заметил.
                                        0

                                        Хм, десять лет назад — это не Сталкер ли, с его печально известной защитой Старфорс?
                                        И меня не обошла эта напасть. Пришлось качать NoCD, так как защита очень уж быстро сделала диск нечитаемым.

                                          0
                                          В точку, именно он. А до того, как пойти скачивать я еще винду успел из-за него переставить. Грешил на свои кривые руки, но друг имел неосторожность попросить диск поиграть и тоже переустановил Винду.

                                          А со СтарФорсом у меня еще Механоиды 1 и Механоиды 2 были, очень дергался, но повезло, работали исправно.
                                      +7
                                      Я конечно немного параноик (возможно), но вот тема «купил, а там внутри исполняемый бинарик»… как-то напрягает.
                                      Сегодня там только защита от копирования контента, а завтра там троян приложенный будет…

                                      Вы спросите а почему там должен появится троян, а я спрошу — а где гарантии, что он там не может появится?
                                        0
                                        «специалисты Microsoft подтверждают, что первые случаи заражения начались именно с установки обновления M.E.Doc» — это про NotPetya и вполне «хороший» софт, если что…
                                        +1
                                        В Windows начиная с 7, то есть уже много лет, далеко не в каждой конфигурации системы возможна запись текущего звукового потока, именно по причинам копирайта, чтобы ушлые пользователи не записывали чего им не положено. Стерео микшера в отключённых устройствах просто нет, и вообще нигде нет. Решение — использовать ПО, умеющее работать с WASAPI в качестве источника. Из бесплатного это Audacity.

                                        image
                                          0

                                          Интересно. Было бы интересно узнать как себя ведёт программа если она запущена:


                                          • в сандбоксе (а-ля Sandboxie) с порезанными правами на определение сандбоксинга
                                          • в виртуалке, с порезанными правами на определение виртуализации
                                          • на маке под иксами (xquartz)
                                          • с изменением названий окон и запускаемых файлов рекордеров
                                            0
                                            3. Песочницы, виртуальные машины и стриминг контента с удаленных подключений (rdesktop, RAdmin, TeamViewer) тоже не вариант – не по годам умный софт умеет определять и их, самоубиваясь при каждом удобном случае.
                                              0

                                              Просто песочницы/вмки — понятное дело, там это удовольствие определяется довольно просто. Интересно узнать что будет если, скажем, выпилить из доступных источников оси инфу о том, что программа запускается в сандбоксе или вмке.

                                            0
                                            По факту стоило бы выложить.

                                            Я лет 10 назад выкладывал на торенты сборник Высоцкого, который был тоже зашифрован (правда там все проще было, загзипованные mp3 файлы с другим расширением, а метаданные отдельно).
                                            Просто из принципа — когда я покупал диски, никто не сказал что там будет свой глючный кривой проигрыватель, который будет к тому же на рандоме после каждой песни останавливаться и выбрасывать MessageBox c ошибкой «Вставьте диск 3».
                                              0
                                              Надеюсь я не доживу до тех счастливых времен когда видео контент начнут продавать в комплекте со специальными очками (типа активных затворных), где частота открывания каждого из окуляров уникальна для конкретного ролика. Скринкаст будет сильно затруднен бытовыми средствами.
                                                +1
                                                Что помешает нацепить эти очки на камеру?
                                                  0
                                                  Ничего не мешает, кроме того что у камеры 1 объектив, а в одни глаз выводится половина картинки.
                                                  Также камера достаточно плохо умеет в светочувствительность, так что, если нацепить очки, картинка будет не только темной, но мерцающей.
                                                  А если представить (теория заговора) что производители камер будут одевать не снимаемый поляризационный фильтр на объектив, перпендикулярный фильтру в очках…
                                                  0
                                                  Аппаратная запись видео (HDMI-сплиттер), а потом программно убрать «ненужные» кадры.
                                                  +7
                                                  Вы бы назвали хотя бы учебную платформу, а не сам курс — чтобы другие не попали на те же грабли.
                                                    0
                                                    Понятно почему люди обращаются к инфопротектору, но как мне кажется лучшая защита это на видео накладывать водяной знак с кодом покупателя — тогда будет ясно откуда растут ноги в распространении курса по трекерам. А как смотреть курс exe на Linux? об этом подумали?
                                                    7 лет назад покупал курс и в самом конце когда скачал 8 гб выяснил про инфопротектор.
                                                    Переинсталлировал WIN — и селяви лицензия.
                                                    Не обязательно на каждый файл ставить метку можно выбрать один файл и поставить в нём.
                                                    Тем более сейчас уже умеют снимать защиту с инфопротектора. Покупают курс на левый паспорт, а потом в сладчину его раздают.
                                                      0

                                                      Интересно, а через ffmpeg получилось бы захватить? Например, с использованием gdigrab или WSL + Xming

                                                        +1
                                                        А если запустить это курс в виртуальной машине и уже её записывать? И пусть себе отслеживает процессы запущенные в виртуалке.
                                                          0
                                                          Песочницы, виртуальные машины и стриминг контента с удаленных подключений (rdesktop, RAdmin, TeamViewer) тоже не вариант – не по годам умный софт умеет определять и их, самоубиваясь при каждом удобном случае.
                                                            0
                                                            Ясно, спасибо. Это как вариант предложил. Ну, а про запись смартфоном, выше уже писали. И учитывая качество камер в современных аппаратах — не самый плохой вариант.

                                                        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                        Самое читаемое