Nesen, rakstot programmatūru, es nācu klajā ar ideju, ja es palaižu programmu, .exe labi aizsargāta, bet, ja dll nav aizsargāta, mana lietojumprogramma izmantos dll failu, vai citi atkļūdos manu programmu, izmantojot dll failu?
Šodien uzrakstīsim īpašu programmu, lai to pārbaudītu, izmantosim lietojumprogrammu, lai izsauktu metodi dll, šādi:
Kods ir vienkāršs:
DLL kods:
Lietotnes kods:
Pēc tam es izveidoju jaunu projektu, izveidoju jaunu klases bibliotēku un kopēju to pašu tipu un cs failu šādi:
Aizstāsim ģenerēto dll ar šādu attēlu:
Programma veiksmīgi izsauc mūsu viltoto dll metodi, kā mēs varam novērst mūsu radīto dll viltošanu?
Es domāju par vienkāršu ideju, pievienojiet lietojumprogrammai resursu failu, aizpildiet ielādējamo dll failu un faila md5 vērtību, programmas palaišanas ieejas punktu un vispirms pārbaudiet ielādējamā dll md5 vērtību
Ja DLL faila MD5 vērtība neatbilst resursu sarakstā esošā faila MD5 vērtībai, tas nozīmē, ka DLL fails ir viltots vai ļaunprātīgi manipulēts. Tas nav praktizēts, tas ir loģiski iespējams!
|