Защита .NET приложения от декомпиляции

Программы, напи­санные на всех .NET языках (таких как C#, VB.NET, F# и т.д.) очень легко деком­пи­ли­ро­вать, т.к. они хранятся в виде MSIL кода и детальных мета­данных, позво­ля­ющих почти полно­стью восста­но­вить исходный код. Обфускаторы или еще их называют протекторы, препят­ствуют этому, уничтожая все данные способные помочь в реверс-инжи­ни­ринге, и защищая Ваш код.

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

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



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

Защищаем свое .NET приложение

Существует очень много протекторов, таких как: Themida, Confuser, Enigma, VMProtect, .NET Reactor. И пожалуй, про Reactor мы и поговорим…



 

А теперь про саму программу

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

В принципе, в Settings вкладке вы можете задать дополнительные параметры протекту. Например: в Force Admin Privileges вы можете задать True, и программа будет требовать права администратора; Хотя по сути, если вы задали все параметры в прошлом пункте, то ничего настраивать не надо.

Когда все настроили, жмем на кнопку справа Protect! Начинает идти процесс…

 

 

Приложение полностью работает, и расшифровать данную защиту сможет только профессионал, через какой-нибудь debugger.

По итогу

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

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

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

 

Скачать можно по ссылкеhttps://anonfiles.com/Z9M6D46ao9/Eziriz.NET.Reactor.5.9.8.0_fu11_zip, это найденный на просторах сети интернет чей-то кряк, так что мы за него не отвечаем. Если что, то вот еще ссылка на VirusTotal

RuCoreNET - лучшее для вас!


Поделись статьей с друзьями


40 просмотров


0 0 vote
Рейтинг статьи
Подписаться
Уведомление о
guest
0 Комментарий
Inline Feedbacks
View all comments


Do NOT follow this link or you will be banned from the site!
0
Would love your thoughts, please comment.x
()
x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: