DLL-eltérítési sebezhetőségi támadások, megelőzés és észlelés

A DLL(DLL) a Dynamic Link Libraries rövidítése , és a (Dynamic Link Libraries)Windowson(Windows) vagy bármely más operációs rendszeren futó alkalmazások külső részei . A legtöbb alkalmazás önmagában nem teljes, és a kódot különböző fájlokban tárolja. Ha szükség van a kódra, a kapcsolódó fájl betöltődik a memóriába, és felhasználható. Ez csökkenti az alkalmazásfájl méretét, miközben optimalizálja a RAM használatát . Ez a cikk elmagyarázza, mi az a DLL-eltérítés(DLL Hijacking) , és hogyan észlelhető és megelőzhető.

Mik azok a DLL fájlok(Files) vagy Dynamic Link Libraries

DLL-eltérítés

A DLL(DLL) fájlok Dynamic Link Libraries , és ahogy a névből is kitűnik, különböző alkalmazások kiterjesztései. Bármely általunk használt alkalmazás használhat bizonyos kódokat, vagy nem. Az ilyen kódokat különböző fájlokban tárolják, és csak akkor hívják meg vagy töltik be a RAM -ba , ha a kapcsolódó kódra szükség van. Így megóvja az alkalmazásfájlt attól, hogy túl nagy legyen, és megakadályozza, hogy az alkalmazás elkapja az erőforrásokat.

A DLL fájlok elérési útját a Windows operációs rendszer határozza meg. Az elérési út a Global Environmental Variables segítségével van beállítva . Alapértelmezés szerint, ha egy alkalmazás DLL -fájlt kér, az operációs rendszer ugyanabba a mappába néz, amelyben az alkalmazás található. Ha ott nem található, akkor a globális változók által beállított más mappákba megy. Az útvonalakhoz prioritások kapcsolódnak, és ez segít a Windowsnak(Windows) meghatározni, hogy mely mappákban keresse a DLL(DLLs) -eket . Itt jön be a DLL -eltérítés.

Mi az a DLL-eltérítés?

Mivel a DLL(DLLs) -ek kiterjesztések, és csaknem az összes alkalmazás használatához szükségesek a számítógépen, a számítógépen különböző mappákban találhatók, amint azt a magyarázatban kifejtjük. Ha az eredeti DLL -fájlt rosszindulatú kódot tartalmazó hamis (DLL)DLL -fájlra cserélik , azt DLL-eltérítésnek(DLL Hijacking) nevezik .

Amint azt korábban említettük, prioritások vannak arra vonatkozóan, hogy az operációs rendszer hol keresi a DLL fájlokat. Először(First) ugyanabba a mappába néz, mint az alkalmazásmappa, majd keresni kezd az operációs rendszer környezeti változói által beállított prioritások alapján. Így ha egy good.dll fájl a SysWOW64 mappában van, és valaki egy bad.dll fájlt egy olyan mappába helyez el, amelynek magasabb prioritása van, mint a SysWOW64 mappában, akkor az operációs rendszer a bad.dll fájlt fogja használni, mivel annak ugyanaz a neve, mint a DLL -nek. kérte a pályázat. A RAM -ba kerülve végrehajthatja a fájlban található rosszindulatú kódot, és feltörheti számítógépét vagy hálózatait.

Hogyan lehet felismerni a DLL-eltérítést

A DLL(DLL) -eltérítés észlelésének és megelőzésének legegyszerűbb módja harmadik féltől származó eszközök használata. A piacon elérhető néhány jó ingyenes eszköz, amely segít a DLL - feltörési kísérletek észlelésében és megelőzésében.

Az egyik ilyen program a DLL Hijack Auditor , de csak a 32 bites alkalmazásokat támogatja. Telepítheti a számítógépére, és átvizsgálhatja az összes Windows-alkalmazást, hogy megtudja, melyik alkalmazás sebezhető a DLL - eltérítéssel szemben. A felület egyszerű és magától értetődő. Ennek az alkalmazásnak az egyetlen hátránya, hogy nem tudja beolvasni a 64 bites alkalmazásokat.

Egy másik program a DLL -eltérítés észlelésére,  a DLL_HIJACK_DETECT, elérhető a GitHubon(GitHub) keresztül . Ez a program ellenőrzi az alkalmazásokat, hogy megbizonyosodjon arról, hogy valamelyikük sebezhető-e a DLL - eltérítéssel szemben. Ha igen, a program tájékoztatja a felhasználót. Az alkalmazásnak két verziója van – x86 és x64 , így mindegyiket használhatja a 32 bites és a 64 bites alkalmazások vizsgálatára is.

Megjegyzendő, hogy a fenti programok csak a Windows platformon lévő alkalmazásokban keresik a biztonsági réseket , és valójában nem akadályozzák meg a DLL - fájlok eltérítését.

Hogyan lehet megakadályozni a DLL-eltérítést

A problémát elsősorban a programozóknak kell megoldaniuk, mivel nem sok mást tehet, mint a biztonsági rendszereinek feljavítását. Ha a programozók relatív elérési út helyett abszolút elérési utat kezdenek használni, a sérülékenység csökken. Az abszolút elérési út beolvasásakor a Windows vagy bármely más operációs rendszer nem függ az elérési út rendszerváltozóitól, és egyenesen a tervezett DLL -hez megy , ezáltal kizárja annak esélyét, hogy az azonos nevű DLL -t magasabb prioritású elérési úton töltsék be. Ez a módszer sem hibabiztos, mert ha a rendszer kompromittálódik, és a kiberbűnözők tudják a DLL pontos elérési útját , akkor az eredeti (DLL)DLL -t hamis DLL -re cserélik .. Ez a fájl felülírását jelenti, így az eredeti DLL rosszindulatú kódká változik. A kiberbûnözõnek azonban tudnia kell a DLL(DLL) -t kérõ alkalmazásban említett pontos abszolút elérési utat . A folyamat nehéz a kiberbűnözők számára, ezért számítani lehet rá.

Visszatérve arra, hogy mit tehet, próbálja meg felnagyítani a biztonsági rendszereket, hogy jobban megvédje Windows rendszerét(secure your Windows system) . Használj jó tűzfalat(firewall) . Ha lehetséges, használjon hardveres tűzfalat, vagy kapcsolja be az útválasztó tűzfalát. Használjon jó behatolásérzékelő rendszereket , hogy tudja, ha valaki próbál játszani a számítógépével.

Ha a számítógépek hibaelhárításával foglalkozik, biztonsága érdekében a következőket is elvégezheti:

  1. DLL -betöltés letiltása távoli hálózati megosztásokról
  2. Tiltsa le a DLL -fájlok betöltését a WebDAV -ból(WebDAV)
  3. Teljesen tiltsa le a WebClient szolgáltatást, vagy állítsa manuálisra
  4. Blokkolja(Block) a 445-ös és 139-es TCP -portokat, mivel ezeket leginkább kompromittáló számítógépekre használják
  5. Telepítse az operációs rendszer és a biztonsági szoftver legújabb frissítéseit.

A Microsoft(Microsoft) kiadott egy eszközt a DLL - terhelés elleni támadások blokkolására. Ez az eszköz csökkenti a DLL - eltérítő támadások kockázatát azáltal, hogy megakadályozza, hogy az alkalmazások nem biztonságosan töltsenek be kódot a DLL - fájlokból.

Ha bármit hozzá szeretne adni a cikkhez, kérjük, kommentben írja alá.(If you would like to add anything to the article, please comment below.)



About the author

Számítógépes technikus vagyok, és több mint 10 éves tapasztalattal rendelkezem ezen a területen. Szakterületem a Windows 7 és a Windows Apps fejlesztése, valamint a Cool Websites tervezése. Rendkívül járatos és tapasztalt vagyok ezen a területen, és értékes eszköz lennék minden olyan szervezet számára, amely vállalkozását bővíteni szeretné.



Related posts