Как стать автором
Обновить

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

При установке в виртуализированной среде можно получить одинаковые hardwareid для разных компьютеров?
Зависит, наверное, от виртуальной машины. Вы о какой говорите? VMWare, VirtualPC?
Ни о какой конкретной, вопрос на уровне теории. Привязка к оборудованию + виртуализация оборудования
=?
Если для разных ответы разные, то можно весь список?
Ну смотрите, вот ниже в комментариях дали параметры того, что входит в Hardware ID. Если в какой-то виртуальной машине все параметры останутся неизменными при переносе на другое железо, то и Hardware ID останется неизменным. Виртуальная машина тут ничем не отличается от физической.
Понял, спасибо
не очень сложно
Можно, для этого достаточно слегка подпатчить само приложение. Вообще принципиально нового в подходе ничего не заметил. Распаковка vmp ведёт к падению всей защиты.
Совершенно верно, 100%-надежного в мире ничего не существует (в том числе защиты). Есть только техники, которые чрезвычайно затрудняют взлом (настолько, что Skype в полной мере до сих пор не взломан), две из таких техник — виртуализация и асимметричная криптография. Но не очень понятно, как подмена CPUID связана со степенью защиты.
Зачем же Вы так сразу, что Skype не взломан, тут правильнее говорить, что у Вас нет информации об этом. Никто и не говорит только о подмене CPUID информации. Вообще, один из стандартных методов обхода привязки к железу — подмена информации о железе или уже готового HWID, от которого зависит ключ активации, после чего известную пару HWID\SN вшивают в саму защите. Вашу статью я прочитал по диагонали, никаких новых методик защиты не встретил. Встаёт вопрос — к чему всё это?
SN у вас протухнет через пару дней, а подделка HWID вам вообще ничего не даст. Встает вопрос — к чему вы это написали?
Выше речь шла о использовании одной пары HWID\SN на разных системах, я привёл достаточно очевидный вариант этого. Этот вариант действует и на других системах защиты. Встаёт вопрос, а что же нового несёт эта защита? В сравнении с WinLicense, Armadillo, etc?
С точки зрения крякера:
Во-первых: cервер подписки выдает вам ограниченный по времени серийник, который протухнет через пару дней.
Во-вторых: HWID это вы не сможете подменить «стандартными» средствами по причине того, что не все компоненты HWID получаются через API.
В-третьих: открытый ключ не патчится также просто как в других защитах.

С точки зрения вендора:
Система позволяет буквально в 2 клика начать продавать свою программу с помощью описанного в статье сервиса.

Какие вам еще нужны аргументы?
Я вот не пойму, вы привели 3 аргументы с точки зрения исследователя, и все 3 — пускание пыли в глаза. Давайте по этим трём пунктам сравним с WL.
Первое — не совсем понял чем отличается от обычной онлайн активации, с виду это она же, названная словами «серийник», «протухнет».
Второе — и чем получение не через winapi затрудняет подмену? Ну и в сравнении c WL, там получение HWID идёт с помощью драйвера, что на порядок безопаснее, чем в ring-3.
Третье — и в чём проблема патча ключа со снятым vmp (а я так понимаю реклама тут не vmp, а некой новой системы защиты от RentSoft).

С точки зрения вендора да, тут предоставляется некий онлайн сервис от авторов. Я так понимаю это единственное существенно отличие этой системы от иных с точки зрения менеджера лицензий?
Если вы будете читать статьи и коменты к ним по диагонали, то на вас придется убить очень много времени чтобы по несколько раз повторять одно и тоже.
Первое — не совсем понял чем отличается от обычной онлайн активации, с виду это она же, названная словами «серийник», «протухнет».

Сервер активации выдает ВРЕМЕННЫЙ серийник (с ограничением времени жизни).
Второе — и чем получение не через winapi затрудняет подмену?

Тем что CPUID этом машинная инструкция и вы устанете искать её в

завиртуализированном коде.

Вы опять пытаетесь обмануть слабопоготволенный люд умными словами. Выполнение CPUID перехватывается ещё проще, чем вызов winapi. Приведу пруф: deroko.phearless.org/cpuid_break.rar.
И снова Вы говорите о временных серийниках. Поддержка временных серийников есть почти во всех менеджерах лицензий. Я не пойму, Вы вообще способны признать, что сделали по некоторым пунктам велосипед? С пеной у рта пытаетесь пропихнуть некоторые фишки, которые успели мхом обрасти за свои. Чего ради? Хотите дезориентировать честный народ с хабра и нажиться на нём?
Если у вас так все просто и замечательно, то почему мы до сих пор не видим от вас реальных примеров замены открытого ключа/подмены HWID в программах под VMProtect? Может быть уже пора перейти от теории к практике, темболее судя по вашим словам это вообще не проблема?
А почему Вы их должны увидеть? Как в мире реинженеринга проверяется стойкость защиты? Выкладывается защищенный софт и назначается гонорар за его взлом. Собственно это — единственный показатель хорошей защиты. На Вашем сайте такого предложения не нашёл.
Будем считать спор завершённым. Если что — объявляйте на сайте открытый конкурс по Вашей защите (RentSoft). Выводы таковы: не ломаемых защит нет, действительно новое в этой защите — авторский сервер лицензий.
Первая часть вывода, очевидно, верная: неломаемых в теории защит и правда не бывает (но бывают неломаемые на практике).

А вторая честь — не совсем: новое в RentSoft вовсе не схема защиты, новое — это сама схема продаж, схема ежемесячной абонентской платы. (На самом деле, она тоже сама по себе не новая, но то, как мы для этого массово используем счета личных кабинетов интернет-провайдеров и насколько ко всему этому легко подключиться — новое.)
Достойный ответ. Это я и хотел услышать с самого начала беседы. Кстати, и на практике неломаемых защит нет, как показывает история. Сначала не ломаемой считали SF, при этом её ломали, пусть и не на паблике, потом xtreamprotector, его тоже раскурочили и и т.д.
Иван, а почему Вы решили сотрудничать именно с drVano?
Ну и в сравнении c WL, там получение HWID идёт с помощью драйвера, что на порядок безопаснее, чем в ring-3.

Защита из ring-3 не должна ползать в ring0 — это скорее огромный минус WL чем плюс.
Третье — и в чём проблема патча ключа со снятым vmp (а я так понимаю реклама тут не vmp, а некой новой системы защиты от RentSoft).

У вас уже есть успешный опыт по патчу открытого ключа в программах с лицензированием VMProptect? Если да, то ссылки в студию.

С точки зрения вендора да, тут предоставляется некий онлайн сервис от авторов. Я так понимаю это единственное существенно отличие этой системы от иных с точки зрения менеджера лицензий?

Вот если бы вы не читали статью по диагонали, то увидели бы что RentSoft предоставляет еще и канал продаж среди своих партнеров + биллинг микроплатежей+удобное администрирование всего этого дела. Вендору одиночке (да и не только одинночке) наработать это все самостоятельно просто не реально.
>Защита из ring-3 не должна ползать в ring0
Вы ничего не путаете? Ваша голословность и попытки меня оскорбить (ниже) поражают. Пожалуйста, подтверждайте свои слова хоть чем-нибудь, кроме «чесслово» и ссылками на свой сомнительный авторитет.

>У вас уже есть успешный опыт по патчу открытого ключа в программах с лицензированием VMProptect? Если да, то ссылки в студию.
Есть широчайший опыт по патчу софта, накрытого vmp и его распаковки. Кучу таких примеров Вы можете найти опять же на форуме exelab (там же Вы найдёте людей, которые за деньги Вам декомипилируют вм). Вы хотите ссылок на релизы софта, накрытого vmp? Такое ощущение, что Вы сами не в курсе про это.
Вот пруфлинк на обсуждение одного из публичных инструментов для декомпиляции exelab.ru/f/index.php?action=vthread&forum=13&topic=15906&page=0

>канал продаж среди своих партнеров + биллинг микроплатежей+удобное администрирование всего этого дела
Да, это я заметил, собственно только это новшество я и заметил среди всего вышесказанного.
Вы ничего не путаете?

Основная ваша проблема состоит в том, что вы не оцениваете защиту с точки зрения конечного пользоватлея. Если на вашу программу будет постоянно орать UAC или антивируc при любой попытке пролезть в ring0, то вашу программу снесут в этот же день.
Есть широчайший опыт по патчу софта, накрытого vmp и его распаковки. Кучу таких примеров Вы можете найти опять же на форуме exelab (там же Вы найдёте людей, которые за деньги Вам декомипилируют вм).

У вас очень оригинальный стиль ведения диалога. Сначала вы говорите, что подменить открытый ключ не проблема, а теперь начинаете переводить стрелки на ваш любимый форум. В приличном обществе такие аргументы не канают.

Иван Юрьевич, ну чего Вы сразу так. Неужели антивирусы кричат на фимку, когда она грузит драйвер? Я пользовался софтом под wl и фимой, проблем не испытывал, а вот уровень защиты при наличии драйвера, как правило выше.
Да, я говорил, что подменить ключ не проблема. Если это проблема, то в чём она? В снятии вмп? Для Вас не секрет, что вмп декомпилируют, ссылка на инструмент есть выше, там же есть обсуждения. Если Вы считаете, что проблема в том, чтобы запатчить защиту без вмп — Вы так же крупно заблуждаетесь.
Вы всегда любили поспорить на тему полный ли шлак вмп, много истерик было по этому поводу. А вашу вм сначала декомпилили в привате, сейчас уже на паблике. Заканчивайте детский сад, Вань.
Ради интереса пошерстил сейчас запросы на взлом на вашем любимом форуме — насчитал как минимум 3 программы под VMProtect. По ним до сих пор нет никакой движухи. Какая-то у вас тут очередная нестыковочка.
Вы пытаетесь этим сказать, что вмпрот не декомпилируют или что? Я выше привёл ссылку на топик, да Вы её и сами наизусть знаете. Какое утверждение Вы сейчас отстаиваете?
Я вам уже давно предлагаю перейти от теории (есть декомпилятор и он какбе работает) к практике (берем этот декомпилятор, снимаем всю защиту и патчим открытый ключ), но судя по количеству невылеченных прог под вмпротом у вас и ваших сотрудников по цеху дальше теории дело так и не пошло.
Берите публичные версии пары защит — vmp и RentSoft, пакуйте ими калькулятор и назначайте гонорар в 5k$, коли Вы так уверены в себе и своей защите.
Я согласен — готовьте свои 5к, чтобы у нас был взаимный интерес.
Вы хотите поспорить лично со мной? Я и сам скажу, что защитой этой не занимаюсь. А вот публичный конкурс — вполне хорошее предложение, многие разработчики так делают. Думаю, vamit'у будет хороший толчок для дальнейшего развития декомпилятора)
Я смотрю что даже за деньги у вас дальше бла-бла-бла дело не идет :)) Слив защитан.
Постойте, о каком сливе Вы говорите? Я не вижу, чтобы Вы вложили у себя на сайте упакованное приложение и озвученный гонорар. Получается, что Вы испугались и начали идти в обратку? Или уверенность в защите сразу пропала?
VMProtect это вам не UPX и простой распаковкой он не снимается :))
AsProtect — не UPX и простой распаковкой не снимается, но это вовсе не означает, что он не снимается вообще, то же самое можно сказать и про vmp, к слову, его декомпиляция уже автоматизирована.
Странно, как Вы начали защищать vmp, Ваш ник на exelab не dermatolog?
Вы для начала определитесь снимается хоть что-то сложнее UPX-а распаковкой или нет :))
Сходу назову ExeCryptor, распаковывается он просто, а вот расчистка кода там на порядок сложнее, чем в vmp.
Вы не ответили на вопрос по поводу вашего ника, Вы и есть автор vmp?)
Да я имею непосредственное отношение к VMProtect Software. А вы, насколько я понял, очередной школьник с exelab?
Сразу обзываться… Вмпрот всегда славился хамами и кидалами (и это не моё мнение, меня эта контора слабо интересует, интересующимся предлагаю почитать forum.exelab.ru). А вообще неплохо ознакомиться с профайлом, прежде, чем писать такое;)
Ну судя по вашему уровню знаний вы совсем недавно занялись реверсингом, поэтому я не вижу ничего оскорбительного в том, что вещи были названы своими именами.
По поводу оскорблений в наш адрес — мы собственно и не ждем ничего другого со стороны реверсеров :))
Как Вы можете судить о моём уровне знаний, когда вы — один из разработчиков вмп (ребят, над вами смеются и на клабе, и на руборде). Не позорились бы и признали, что сделали велик, но катафот поставили не на колесо, а на руль. Собственно вся вышеописанная система полностью опирается на vmp, а сложность вмп можно оценить по отзывам на форумах соответствующей тематики. drVano, давайте закончим спор, или перейдём с тыканья пальцами и выплёскиванием своих умозаключений на обоснованную чем-то беседу (Ваш опыт за обоснование я принять не могу).
Я с удовольствием закончу этот бесполезный спор после того как вы докажете свое утверждение на деле:
Третье — и в чём проблема патча ключа со снятым vmp (а я так понимаю реклама тут не vmp, а некой новой системы защиты от RentSoft).

Если нет проблемы с подменой открытого ключа, то будьте добры примеры РЕАЛЬНЫХ взломов с подменой ключа, в противном случае все ваши посты не больше чем очередное bla-bla-bla.
Давайте софт накрытый только RentSoft и выставляйте гонорар за его взлом, да такой, чтобы смотреть было не лень, тогда разговор будет идти несколько иной. Или Вы хотите, чтобы я потратил своё время на то, чтобы доказать Вам, что Ваша защита не такая великая, как Вы её позиционируете?
И зря не ждёте, читали nfo к сегодняшнему релизу ida pro 6.1? Ваш протектор там упомянут, релизёры встали на защиту Вас от eset.
А можно узнать ваш механизм получения HardwareID?
Насколько я знаю, вопрос достаточно нетривиальный.
CPUID+MAC+HDD+Host
Хотелось бы иметь свой сервер лицензий, т.е. иметь независимость от RentSoft.
Это не проблема, на rentsoft.ru/soft/add/?from=habr6 аж 2 способа работы через ваш собственный сервер лицензий. Можно через них подключиться.
А почему бы не воспользоваться собственным CA, с указанием RevocationPath, подробнее тут…
www.eclectica.ca/howto/ssl-cert-howto.php
Уточните мысль, пожалуйста. При чем тут CA?
Ну как причем, если стоит задача сделать ту функциональность которую предлагает ваш стартап, то на маке/айфоне я написал за 57 строчек на ObjC кода + keyServices. Путем проверки аутентичности SSL сертификата (+expiration time + revocation events).
А про бэкненд я уже привел линк выше. Извините, я честно не догоняю кому может понадобится такие услуги.
«Такие» — это какие? Мне кажется, мы о разных вещах говорим, наша платформа совсем про другое. Мы предоставляем для вендоров десктопного софта под Win32:
а) систему подписочного лицензирования (что включает: сервер лицензий, механизмы защиты от взлома, прием и агрегацию платежей через разные способы, документооборот)
б) новые каналы продаж на новом незанятом рынке (60 интернет-провайдеров с 4 млн абоненов, софт вендора в этом случае с точки зрения покупателя выглядит, как допуслуга провайдера, поэтому конверсия зашкаливает; об этом в конце статьи подробно).

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

Мы вообще-то не хотим пользователей насильно ограничивать, у нас другая идея — сделать так, чтобы коммерческий софт не бил по карману людям, чтобы им было удобнее и комфортнее его подключать за абонентскую плату, чем выискивать в интернете и нарушать при этом закон.
> Вкратце — принцип работы DSA и RSA основан на так называемой «проблеме факторизации»
Только RSA. DSA — задача дискретного логарифмирования.
Да, хотя они и «родственники». Не сводятся ли задача факторизации и задача дискретного логарифмирования к чему-то одному? Мне навскидку не удалось про это найти.
Как-то слабо искали: portal.acm.org/citation.cfm?id=894497 Да, в некотором смысле они связаны, но на практике алгоритмы решения разные.
Искал и правда «навскидку». :-) Спасибо. Оттуда: «To summarize: solving the discrete logarithm problem for a composite modulus is exactly as hard as factoring and solving it modulo primes.»
А чем, например, ваша система лицензирования лучше аналогов (типа Sentinel HASP?

И есть ли у вас Managed сборки(чтоб использовать в .net)? (потому что у HASP, например, нету, и это создает огромные трудности при подключении к .Net проектам--ведь надо подключать нативные сборки).
Лучше или нет — это решать разработчикам. Могу сказать, чем наша система отличается:

1. У нас целая платформа, а не только система лицензирования, т.е. еще и новый канал продаж (интернет-провайдеры, у которых абоненты подключают имеющееся на платформе ПО из своего личного кабинета и оплачивают их в том же чеке, в котором платят ежемесячно за интернет). Т.е. добавив продукт, вы сразу попадаете и в наши каналы продаж, и в автоматизированный документооборот.
2. Мы работаем только со схемой подписки и сейчас — только в России (потому что верим, что в России только схема подписки и может тягаться с пиратством: пиратствуют люди от безысходности, а мы даем решение, которое не бьет по карману).
3. VMProtect (протектор, который является одним из способов подключения к платформе) бесплатен для создания «подписочных» версий продуктов. Мы работает лишь за комиссию с платежей конечных пользователей, т.е. по схеме разделения доходов от продаж.

Для .NET пока, к сожалению, защиты нет. Есть подозрение, что удовлетворительно надежной защиты для .NET-приложения и не сделать. Впрочем, к платформе можно подключиться, и написав свой собственный сервер лицензий и свою собственную защиту — это очень просто, см. rentsoft.ru/soft/add/?from=habr6
Спасибо!
Насколько сложно подменить открытый ключ в программе?
Поддерживаю вопрос. Это довольно распространенный способ взлома асимметричных схем.
RSA работает с открытым ключем через криптоконтейнер + все критичные функции системы лицензирования завиртуализированы.
RSA работает с открытым ключем через криптоконтейнер + все критичные функции системы лицензирования завиртуализированы. насколько сложно это взломать — решайте сами :)
В чем именно заключаются средства защиты «криптоконтейнером» ключа от подмены?
Вы используете сертификаты?
Ваш сертификат заверен каким-либо УЦ, включенным в доверенные УЦ операционной системы?
Криптоконтейнеры не имеют отношения к сертификатам. Это просто внутренний класс, через который RSA работает с открытым ключем (сам ключ лежит в памяти в зашифрованном виде и расшифровывается частями при операциях с большими числами).
Чем он зашифрован?
А какая разница?
Неважно. Тут главное вовремя остановиться и не стать параноиком. Я однажды делал простым XOR'ом, а расшифровку виртуализировал темидой.
ситуация с Java, аналогично как и .Net — скорее всего не будет?
(ответ в комментарии выше я прочитал :)

Писать свой сервер лицензий и защиту не хочется совсем.
А протекторы для Java вообще существуют? Если существуют, напишите сюда их, пожалуйста — подключим. (То же самое, кстати, и с .NET.)
У нас есть протектор для питона, поэтому я не исключаю, что существуют для Java ;)

Надеялся, что если у вас всё серьезно поставлено на поток, то вы знаете больше.
У нас отношение к протекторам для Java и .NET немного скептическое, чем-то похожее на отношение к «протектору для BAT-файлов». Надеюсь, что мы ошибаюсь — нельзя знать всего и сразу. На поток мы подключение вендоров как раз ставим (интернет-провайдеров — давно поставили), сейчас вендоры и партнеры вот такие: rentsoft.ru/partners/?from=habr6. Подключаем новые протекторы и приглашаем новых вендоров/шароварщиков к сотрудничеству.
Спасибо, интересное сравнение. Судя по этому сравнению, .NET Reactor — лучший? Это действительно так, или же это их обзор просто? :-)
я кинул то, с чем работал:) попутно там в сравнении есть функциональность защищаторов для .net
Я правильно понял из скриншота, что у Вас используется DSA, и при этом длина ключа 64 бита?
Из какого скриншота? В VMProtect используется RSA 2048 бита.

DSA в статье описывается в статье один из асимметричных методов генерации цифровой подписи, но в VMProtect вместо нее RSA-шифрование.
Вы озаглавили статью «Асимметричная криптография ...», но описали собственно характеристики системы и криптопротокол настолько скомканно, что из прочтения неясно практически ничего.

Скриншот — вот этот — что означают цифры после дефиса?:
image
Это просто код, который пользователь получает и вводит в программу после того, как оформил подписку. :-) Отношения к криптографии он не имеет, это, считайте, личный логин+пароль клиента на витрине, где он купил продукт.
Посмотрел на вашем сайте — среди прочего вы предлагаете купить по схеме с подпиской различные антивирусы. Т.е. теперь вирусописателям достаточно будет выяснить от чего срабатывает ваша защита от, к примеру, user-mode-отладчика, после чего при заражении заставлять защиту сработать — и ваш протектор сделает за них всю работу по нейтрализации антивируса. Или всё не так?
Это не связанные вещи. Антивирусы — это просто одни из существующих вендоров, которые уже добавились на нашу платформу и продаются по подписке. Кроме антивирусов на ней есть и другой софт, тот же ABBYY, например, или Keepsoft.
В том-то и дело, что антивирус — немного необычное ПО, требующее особенного подхода. Как минимум потому, что в случае с 1С или игрушкой вектор атаки на ваш протектор только один — заставить защищенный продукт работать бесплатно, то в случае с security-софтом добавляется еще один не менее важный вектор атаки — заставить ваш протектор _помешать_ работе оплаченного и законно используемого софта.
Маленькое уточнение: протектор не наш, это разработка VMProtect Software, которой уже несколько лет, и которой пользуется множество народу (в основном шароварщики) для продажи на Запад. Вот сайт разработчика: vmpsoft.com/, а вот — неплохая статья с обзором протекторов: beachatm.blogspot.com/2010/10/blog-post_26.html
А на вопрос сможете ответить? Действительно интересно, если некий вредоносный софт полезет в протектор и он отключит антивирус… Как быть в этой ситуации?
Что значит «полезет в протектор» и как он «отключит антивирус»?

Еще раз: антивирусы не связаны с протекторами. Вместо антивирусов мог бы быть любой другой софт, просто так получилось, что антивирусы — лидеры продаж, поэтому они наиболее активны и давно добавлены на нашу платформу, одни из первых. Но это обычные вендоры, такие же, как мы.
Я подразумеваю ситуацию, когда будет предпринята попытка вмешательства в защиту (в ваш протектор), и в целях предотвращения несанкционированного доступа к защищаемому приложению (читайте, антивирусу) протектор выключит приложение. Разве такое невозможно?
Это вопрос к разработчикам антивирусов. Наверное, они учитывают эту ситуацию. Вообще, у большинства антивирусов своя собственная защита от взлома, никак не связанная с VMProtect-ом (хотя бы потому, что они появились раньше).
Мы с Вами, похоже, подразумеваем немного разные вещи :)
Вы говорите о том, что антивирус должен сам заботиться о собственной безопасности в этом случае. А я говорю о том, что в ваш протектор встроена система отключения приложения при отсутствии подписки или несанкционированного получения доступа к функциям приложения, верно? Так вот, что мешает вирусу или любому другому злонаправленному приложению сделать нечто, что заставит ваш протектор отключить приложение?
Я, если честно, понял о чем говорит Иван только почитав на их сайте по ссылке о вариантах подключения к их платформе — rentsoft.ru/soft/add/

Использование предлагаемого ими протектора — только один из вариантов. Можно использовать свой, или вообще не использовать никакого. Вероятнее всего антивирусные вендоры используют вариант «Ваш собственный сервер лицензий», описанный по той ссылке. В этом случае, вероятно, антивирусное ПО периодически обращается к «своему» серверу, который, в свою очередь, обращается к серверу rentsoft за информацией о статусе подписки.

Иван, я всё правильно понял?
Зачем вирусу в этом случае что-то знать о протекторе? Почему, например, просто не забить файл приложения нулями? Оно ведь в этом случае точно так же не будет работать, какая разница…
А как же система самозащиты антивируса, которая не даст внешнему приложению что-то сделать с его файлами?
А если немного дизассемблировать и инвертировать результат работы функции проверки подлинности?
Как же вы ее инвертируете, если там RSA (асимметричная криптография). Т.е. keygen написать не выйдет. Насчет дизассемблирования — вы получите не код программы, а некие инструкции с использованием виртуальной машины, система команд которой, во-первых, неизвестна, а во-вторых, еще и разная в разных продуктах и зависит от кода кода активации, выданного сервером лицензии. В общем, легко взломать точно не получится, VMProtect давно существует на рынке.
насколько я помню, про Armadillo несколько лет назад тоже так говорили… а потом придумали метод подмены HWIDа, потом и кейгены появились… так что это всё вопрос времени, и только)
Возможно я чего-то не понимаю, поправьте, если ошибаюсь, но, как я понял, схема такая: есть ключ, с помощью него дешифрует система команд виртуальной машины, затем машина запускается и выполняет нужные инструкции, который производят полезное действие(«например печатают Hello World»). Вопрос — что мешает нам поставить отладчик уровня ядра(привет DDK) и получить дамп всех инструкций 86-го процессора, которые сделала виртуальная машина? Допустим среди них есть какие проверки(взятие системного времени, для проверки, что мы еще можем работать или проверка CPUID). Такую команду вполне реально обнаружить, и заменить на нопы, после чего сделать из полученного дампа запускаемый exe, лишенный всякой защиты. Пример со скайп не корректен, т.к. можно привести аргумент «неуловимого Джо» — зачем кому-то взламывать бесплатную программу для ip-телефонии? Разве что для попытки узнать протокол и получить возможность прослушивать разговоры(сомнительно, что осуществимо в принципе), но в таком случае на месте этого взломщика я бы хранил полное молчание.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории