Исследователь выпустил большую статью с разбором защиты Denuvo

от admin

Как стало известно, исследователь Коннор-Джей выпустил большую статью, посвященную разбору защиты Denuvo.

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

Исследователь рассказывает про принципы работы Denuvo, а так же о тех методах защиты, которые используют инженеры австрийской компании. Статья может оказаться полезна тем пользователям, которые захотят разобраться в защите и попытаться взломать её, поскольку она дает неплохую базовую подготовку для этого.

Для тех, кто не силен в реверс-инжениринге, основная мысль в статье: принцип работы Denuvo на основе виртуальной машины не является чем-то уникальным и новым, но её современные версии — это действительно сложный механизм защиты, на взлом которого требуется много времени. По словам Коннор-Джея, на данный момент существует четыре способа взлома защиты.

Исправление проверок идентификаторов оборудования

Способ заключается в ручном исправлении каждой проверки идентификации оборудования, гарантируя, что каждый раз возвращается правильная информация об оборудовании (“правильная” здесь означает оборудование, которое расшифрует правильную константу). Однако это чрезвычайно сложно — взломщик сталкивается не только со сложным CRC, но и со случайностью, из-за которой одному человеку практически невозможно найти все проверки, не говоря уже о том, чтобы исправить их.

Исправление расшифровки констант

Аналогично исправлению всех проверок информации об оборудовании, вместо этого можно попытаться настроить таргетинг на процедуры расшифровки констант, возвращая правильную константу в отличие от того, что было неправильно расшифровано из-за несогласованной информации об оборудовании. Этот подход гораздо разумнее, чем исправление всех проверок информации об оборудовании, поскольку в настоящее время в этих процедурах не существует CRC или случайности. Однако в трассировке из более чем 10 000 000 инструкций x86 найти расшифровку одной константы — непростая задача.

Читать:
Процессоры Intel Core Ultra 200HX могут улучшить игровой процесс несколькими способами благодаря нейронному чипу

Полное восстановление binary.exe

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

Исследователь выпустил большую статью с разбором защиты Denuvo

Гипервизор

Несколько более продвинутый подход заключается в использовании гипервизора для подделки всей необходимой информации об оборудовании. Это, конечно, легче сказать, чем сделать. Хотя и AMD, и Intel поддерживают возможность перехвата инструкций, таких как CPUID и XGETBV, и подключение системного вызова с уровня гипервизора также не слишком сложно. По мнению Коннор-Джея, единственным сложным разделом было бы исправление проверок NTDLL и KUSER без взлома всех остальных приложений на компьютере.

Warez-группам запрещено использовать гипервизор при создании взлома, поскольку такие взломы не слишком безопасны, однако p2p-группы и пользователи не скованы таким ограничением — исследователь удивлен, что p2p-группы до сих пор не используют данный метод взлома.

Итоги

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

Похожие публикации