Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 19046|Отговор: 0

[WinForm] Как .net/c# приложение гарантира, че извиканият dll няма да бъде заменен от фалшифициране?

[Копирай линк]
Публикувано в 19.10.2017 г. 17:14:49 ч. | | | |
Наскоро, когато пишех софтуер, ми хрумна идея: ако пусна програма .exe добре защитена, но ако DLL не е защитена, приложението ми ще използва dll файла, дали другите ще дебъгват програмата ми през DLL файла?

Днес нека напишем специална програма за тестване, нека използваме приложението, за да извикаме метод в dll, както следва:



Кодът е прост:

DLL код:

Код на приложението:



След това създавам нов проект, създавам нова библиотека с класове и копирам същия тип и cs файл, както следва:



Нека заменим генерирания dll със следната фигура:



Програмата успешно извиква dll метода, който сме създали, как можем да предотвратим създаването на dll?

Измислих проста идея – да добавя ресурсен файл към приложението, да попълня dll файла за зареждане и стойността md5 на файла, входната точка на програмата, и първо да проверя стойността md5 на dll-а, която трябва да се зареди

Ако стойността MD5 на DLL файла не съответства на MD5 стойността на файла в списъка с ресурси, това означава, че DLL файлът е фалшифициран или злонамерено манипулиран. Това не е практикувано, логически е възможно!




Предишен:Скалата на разтягане на форма на Winform
Следващ:.net/c# използва силни подписи, за да защити собствените си DLL-и от фалшифициране
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com