Zlonamjerni softver

Napadi, sprečavanje i otkrivanje otmice DLL otmice

Napadi, sprečavanje i otkrivanje otmice DLL otmice

DLL je kratica za Dynamic Link Libraries i vanjski su dijelovi aplikacija koje se izvode na Windowsima ili bilo kojem drugom operativnom sustavu. Većina aplikacija same po sebi nisu cjelovite i kôd pohranjuju u različite datoteke. Ako postoji potreba za kodom, srodna datoteka se učitava u memoriju i koristi. To smanjuje veličinu datoteke aplikacije, a istovremeno optimizira upotrebu RAM-a. Ovaj članak objašnjava što je Otmica DLL-a i kako to otkriti i spriječiti.

Što su DLL datoteke ili knjižnice dinamičkih veza

DLL datoteke su Dynamic Link Libraries i kao što je vidljivo iz naziva, proširenja su različitih aplikacija. Bilo koja aplikacija koju koristimo može ili ne mora koristiti određene kodove. Takvi se kodovi pohranjuju u različite datoteke i pozivaju se ili učitavaju u RAM samo kada je potreban srodni kod. Dakle, sprema datoteku aplikacije da postane prevelika i da spriječi da aplikacija preusmjeri resurse.

Stazu za DLL datoteke postavlja operativni sustav Windows. Put se postavlja pomoću globalnih varijabli okoliša. Prema zadanim postavkama, ako aplikacija zatraži DLL datoteku, operativni sustav gleda u istu mapu u kojoj je aplikacija pohranjena. Ako se tamo ne pronađe, ide u druge mape postavljene globalnim varijablama. Putanja su vezani uz prioritete i pomaže sustavu Windows u određivanju mapa u potrazi za DLL-ovima. Tu dolazi do otmice DLL-a.

Što je otmica DLL-a

Budući da su DLL-ovi proširenja i neophodni za korištenje gotovo svih aplikacija na vašim računalima, oni su prisutni na računalu u različitim mapama kako je objašnjeno. Ako se izvorna DLL datoteka zamijeni lažnom DLL datotekom koja sadrži zlonamjerni kôd, poznata je kao Otmica DLL-a.

Kao što je ranije spomenuto, postoje prioriteti gdje operativni sustav traži DLL datoteke. Prvo pregledava istu mapu kao i mapa aplikacije, a zatim kreće u pretragu na temelju prioriteta postavljenih varijablama okruženja operacijskog sustava. Stoga ako je dobar.dll datoteka nalazi se u mapi SysWOW64 i netko stavlja loše.dll u mapi koja ima veći prioritet u odnosu na mapu SysWOW64, operativni sustav će koristiti loše.dll datoteku, jer ima isto ime kao i DLL koji traži aplikacija. Jednom u RAM-u može izvršiti zlonamjerni kod sadržan u datoteci i može ugroziti vaše računalo ili mreže.

Kako otkriti otmicu DLL-a

Najjednostavnija metoda za otkrivanje i sprečavanje otmice DLL-a je upotreba alata nezavisnih proizvođača. Na tržištu su dostupni dobri besplatni alati koji pomažu u otkrivanju pokušaja hakiranja DLL-a i njegovom sprječavanju.

Jedan od takvih programa je DLL Hijack Auditor, ali podržava samo 32-bitne programe. Možete ga instalirati na računalo i skenirati sve svoje Windows programe da biste vidjeli koje su sve aplikacije ranjive na otmicu DLL-a. Sučelje je jednostavno i samo po sebi razumljivo. Jedini nedostatak ove aplikacije je što ne možete skenirati 64-bitne programe.

Drugi program za otkrivanje otmice DLL-a, DLL_HIJACK_DETECT, dostupan je putem GitHub-a. Ovaj program provjerava jesu li neki od njih ranjivi na otmicu DLL-a. Ako jest, program o tome obavještava korisnika. Aplikacija ima dvije verzije - x86 i x64, tako da svaku možete koristiti za skeniranje i 32-bitne i 64-bitne aplikacije.

Treba napomenuti da gore navedeni programi samo skeniraju aplikacije na Windows platformi radi ranjivosti i zapravo ne sprečavaju otmicu DLL datoteka.

Kako spriječiti otmicu DLL-a

Pitanjem bi se prvo trebali pozabaviti programeri, jer ne možete puno učiniti osim da pojačate svoje sigurnosne sustave. Ako umjesto relativnog puta programeri počnu koristiti apsolutni put, ranjivost će se smanjiti. Čitanje apsolutne staze, Windows ili bilo koji drugi operativni sustav neće ovisiti o sistemskim varijablama za putanju i ići će ravno prema predviđenom DLL-u, čime se odbacuju šanse za učitavanje istog naziva DLL-a u stazu višeg prioriteta. Ni ova metoda nije nepropusna jer, ako je sustav ugrožen i cyber kriminalci znaju točan put DLL-a, zamijenit će izvorni DLL lažnim DLL-om. To bi prepisalo datoteku tako da se izvorni DLL promijeni u zlonamjerni kod. Ali opet, cyber kriminalac će morati znati točan apsolutni put spomenut u aplikaciji koja poziva na DLL. Proces je težak za cyber kriminalce i stoga se na njega može računati.

Vraćajući se na ono što možete učiniti, samo pokušajte povećati sigurnosne sustave kako biste bolje osigurali svoj Windows sustav. Koristite dobar vatrozid. Ako je moguće, upotrijebite hardverski vatrozid ili uključite vatrozid usmjerivača. Koristite dobre sustave za otkrivanje upada kako biste znali pokušava li se netko igrati s vašim računalom.

Ako se bavite rješavanjem problema s računalima, možete povećati sigurnost i na sljedeći način:

  1. Onemogućite učitavanje DLL-a s udaljenih mrežnih dionica
  2. Onemogućite učitavanje DLL datoteka iz WebDAV-a
  3. U potpunosti onemogućite uslugu WebClient ili je postavite na ručnu
  4. Blokirajte TCP priključke 445 i 139 jer se najviše koriste za kompromitiranje računala
  5. Instalirajte najnovija ažuriranja operativnog sustava i sigurnosnog softvera.

Microsoft je objavio alat za blokiranje napada otmice DLL opterećenja. Ovaj alat umanjuje rizik od napada otmice DLL-a sprečavajući da aplikacije nesigurno učitavaju kod iz DLL datoteka.

Ako želite bilo što dodati u članak, molimo komentirajte u nastavku.

Korisni alati za Linux igrače
Ako volite igrati igre na Linuxu, velika je vjerojatnost da ste možda koristili aplikacije i uslužne programe poput Wine, Lutris i OBS Studio za pobol...
HD Remastered igre za Linux koje ranije nisu imale Linux izdanje
Mnogi programeri i izdavači igara dolaze s HD remasterom starih igara kako bi produžili životni vijek franšize, molimo obožavatelje da zatraže kompati...
Kako koristiti AutoKey za automatizaciju Linux igara
AutoKey je uslužni program za automatizaciju radne površine za Linux i X11, programiran na Python 3, GTK i Qt. Koristeći njegovu skriptiranje i MACRO ...