Нещодавно, коли я писав програмне забезпечення, я придумав ідею: якщо я запускаю програму .exe добре захищеною, але якщо DLL не захищений, мій додаток буде використовувати файл DLL, чи будуть інші налагоджувати мою програму через файл DLL?
Сьогодні напишемо спеціальну програму для тестування, використаємо додаток для виклику методу в dll, наступним чином:
Код простий:
Код DLL:
Код додатку:
Потім я створюю новий проєкт, нову бібліотеку класів і копіюю той самий тип і cs-файл, наступним чином:
Замінимо згенеровану dll на наступний графік:
Програма успішно викликає метод dll, який ми створили, як запобігти підробці створеного dll?
Я придумав просту ідею: додати файл ресурсу до додатку, заповнити dll-файл для завантаження, значення md5 файлу, точку входу програми, і спочатку перевірити значення md5 dll, яке потрібно завантажити
Якщо значення MD5 файлу DLL не відповідає значенням MD5 файлу у списку ресурсів, це означає, що DLL-файл був підроблений або зловмисно підроблений. Це ще не практикувалося, але це логічно можливо!
|