Защитить приложение .Net от деобфускаторов?

Я знаю, что мы можем защитить .Net-приложения от декомпиляции с помощью обфускаторов.

Но я где-то читал, что есть некоторые деобфускаторы (например, de4dot), которые могут деобфускировать запутанные приложения .Net. Они могут нейтрализовать действие некоторых обфускаторов, таких как Eazfuscator.NET. Таким образом, они могут декомпилировать даже запутанные приложения .Net.

Это правильно? Если да, то как защитить приложения от деобфускаторов?


person Mahdi Ghiasi    schedule 16.12.2011    source источник


Ответы (4)


Ни одно приложение не защищено на 100%, но коммерческие обфускаторы довольно хорошо усложняют задачу.

person Preet Sangha    schedule 16.12.2011
comment
Можете ли вы назвать названия некоторых из этих коммерческих обфускаторов, которые значительно усложняют деобфускацию? А что насчет бесплатных обфускаторов? Разве они не в безопасности? - person Mahdi Ghiasi; 16.12.2011
comment
stackoverflow.com/questions/71195 / - person Preet Sangha; 16.12.2011
comment
Могу ли я использовать вместе несколько обфускаторов? это повысит безопасность? - person Mahdi Ghiasi; 16.12.2011
comment
Вам придется поговорить с их производителями - person Preet Sangha; 16.12.2011

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

person ChrisBint    schedule 16.12.2011
comment
Но в компиляторе C ++ этот процесс намного сложнее. Означает ли это, что мы не должны создавать ценные программы с .Net? - person Mahdi Ghiasi; 16.12.2011

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

Он также имеет особую защиту от de4dot - если вы попытаетесь запустить de4dot на сборках, запутанных с помощью Crypto Obfuscator, он выйдет из строя.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я работаю в LogicNP Software, разработчике Crypto Obfuscator.

person logicnp    schedule 25.04.2012
comment
Похоже, он вас зацепил: github.com/0xd4d/de4dot/wiki/Changelog - person CAD bloke; 14.08.2012
comment
@CADbloke - Это похоже на гонку вооружений - мы тоже за ним. - person logicnp; 14.08.2012
comment
Но каждый раз, когда они его взламывают, все, что вы запутали, становится уязвимым, так что вы можете скрыть только новый IP до следующего раунда. Или мне что-то здесь не хватает? Подлинный вопрос. - person CAD bloke; 15.08.2012
comment
У вас есть защита от этого в 218? - person HGMamaci; 18.06.2018

Почему нет? Вы можете попробовать ILProtector. Это бесплатный защитник .NET. Он защищает код .NET с помощью виртуализации кода. В этом случае уровень защиты кода многократно повышается по сравнению с обфускацией. Ваш код не распознается дизассемблерами и декомпиляторами, такими как de4dot, IL DASM или .NET Reflector.

person Ivan Developer    schedule 01.04.2012
comment
Уменьшит ли это производительность приложения? - person Mahdi Ghiasi; 05.04.2012
comment
Не проверял, но думаю изменится незначительно, если вообще - person Ivan Developer; 08.04.2012
comment
Похоже, он тоже его взломал: github.com/0xd4d/de4dot/wiki/Changelog ... v1.9.0 - person CAD bloke; 14.08.2012
comment
ILProtector шифрует инструкции метода. Это НЕ виртуализация. Это банальное шифрование кода, как и в любом другом протекторе. Похоже, эта функция называется виртуализацией просто потому, что это звучит для автора модно. - person ogggre; 30.08.2012