Разработчики DENUVO всего навсего лишь увеличивали "толщину" виртуальной машины VMProtect и ... больше ничего не делали!

Разработчики DENUVO всего навсего лишь увеличивали "толщину" виртуальной машины VMProtect и ... больше ничего не делали! Denuvo, Cracklab, Vmprotect, Взлом, Длиннопост

Данный факт был подтвержден после выхода свежей версии DENUVO_Profiler - программы, которая находится в открытом доступе и официально предназначена для помощи в исследовании "потрохов" защиты. В частности речь идет о виртуальной машине VMProtect 2.0 и новейшей версии VMProtect 3.0, которая активно используется до сих пор.

Разработчики DENUVO всего навсего лишь увеличивали "толщину" виртуальной машины VMProtect и ... больше ничего не делали! Denuvo, Cracklab, Vmprotect, Взлом, Длиннопост

Как несложно заметить - количество контекстов виртуальной машины ("толщина") монотонно возрастало от Lords of the Fallen - всего навсего 10 контекстов версии VMProtect 2.0 и заканчивая Assassin’s Creed Origins - 19 контекстов VMProtect 3.0.  Наибольшая "толщина" виртуального слоя зафиксирована в Unravel - рекордные 40 (!!!) контекстов VMProtect 2.0 и 19 контекстов VMProtect 3.0, что является очень огромным значением. Очевидно, данный шаг продиктован агонией разработчиков DENUVO хоть как-то переломить ситуацию в лучшую сторону в плане взломостойкости защиты.

Разработчики DENUVO всего навсего лишь увеличивали "толщину" виртуальной машины VMProtect и ... больше ничего не делали! Denuvo, Cracklab, Vmprotect, Взлом, Длиннопост
Собственно, первоначальная идея DENUVO строилась как раз на "утолщении" виртуального слоя, ибо инструментов наподобие представленного DENUVO_Profiler у взломщиков и в помине не было: можно наращивать количество контекстов виртуальной машины и не делать лишней работы, т.к. вручную изменить логику работы виртуальной машины даже 10 контекстов в Lords of the Fallen слишком трудоёмкое занятие, которое займет несколько месяцев (собственно, чем занимался хакер Voksi в Doom 4). Со временем, когда был написан трейсер виртуальной машины VMProtect - стало возможным изучить логику работы защиты DENUVO при чтении секретной таблицы (DENUVO X-Table) с двойными словами (DWORD), которая извлекалась из файлов лицензии.
Разработчики DENUVO всего навсего лишь увеличивали "толщину" виртуальной машины VMProtect и ... больше ничего не делали! Denuvo, Cracklab, Vmprotect, Взлом, Длиннопост
Связав формирование рандомной матрицы из DENUVO X-Table с уникальным Hardware ID (HWID) Вашего компьютера, выявились некоторые уязвимости в алгоритме защиты, что дало возможность обойти защиту не нарушая логику работы виртуальной машины VMProtect. HWID состоит из четырех ключевых элементов Вашей системы Windows: CPUID процессора, системных структур KUSER_SHARED_DATA, данных 3 системных библиотек kernel32.dll-ntdll.dll-kernelbase.dll (находятся в C:\Windows\System32\), структуры Process Environment Block (PEB):
Разработчики DENUVO всего навсего лишь увеличивали "толщину" виртуальной машины VMProtect и ... больше ничего не делали! Denuvo, Cracklab, Vmprotect, Взлом, Длиннопост
В дальнейшем, когда виртуальную машину VMProtect научились успешно исследовать, не считаясь с "толщиной"  её брони, разработчики не смогли придумать ничего лучше, как взять на вооружение CPS стиль программирования - обычная особенность работы компиляторов разворачивать код в специальном виде, с добавлением некоторой обфускации.

DENUVO 4.0 лишился главного козыря, который VMProtect успешно обеспечивал до конца - защиты от редактирования взломщиками логики работы виртуальной машины (НА САМОМ ДЕЛЕ, в привате  И ЭТА ФИТЧА ЗАЩИТЫ УСПЕШНО ВЗЛОМАНА! Авторы VMProtect знают об этом, но предпочитают молчать). Это развязало руки хакерам. В итоге, 4 версию ломали уже те, кому просто не лень написать скрипт, который палил все места чтения данных HWID/секретной таблицы DENUVO. За несколько дней все это дело без особого труда патчилось - редактировалось и пихалось в качестве кряка. Никто не вникал в тонкости построения рандомной матрицы и не разбирался с криптографией (как связан какой-то CPUID со вторым байтом пятого двойного слова в секретной таблице DENUVO). К слову, принципиально в этой области у DENUVO ничего принципиально не изменилось - с помощью примитивных операций СЛОЖИТЬ, СДВИНУТЬ, XOR'ить байты и контрольные константы вязать HWID с секретной таблицей.

DENUVO 5.0 - некоторая попытка использовать плюсы 4 версии с добавлением кода, генерируемого нейросетью на основе математических уравнений. Звучит как-бы круто, однако на самом деле дилемма защиты потрохов DENUVO от быстрого взлома обеспечивается тем же VMProtect 3.0 и Нидерландской Irdeto, которая шарашит спутниковыми тарелками.