Megdöbbentő lehet annak felismerése, hogy egy támadási vektor fut az orra alatt a hálózatában. Ön kivette a részét a hatékonynak tűnő biztonsági védelem bevezetésével, de a támadónak így is sikerült megkerülnie azokat. Hogyan volt ez lehetséges?
Bevezethették volna a folyamatinjektálást, ha rosszindulatú kódokat illesztenek be a törvényes folyamatokba. Hogyan működik a folyamatinjektálás, és hogyan előzhető meg?
Mi az a folyamatinjektálás?
A folyamatinjektálás egy olyan folyamat, amelynek során a támadó rosszindulatú kódokat fecskendez be a hálózat legitim és élő folyamatába. Elterjedt a rosszindulatú támadásoknál, lehetővé teszi a kiberszereplők számára, hogy a legigénytelenebb módon fertőzzék meg a rendszereket. Egy fejlett kibertámadási technika, a behatoló rosszindulatú programokat szúr be az érvényes folyamatokba, és élvezi e folyamatok kiváltságait.
Hogyan működik a folyamatinjektálás?
A leghatékonyabb támadások azok, amelyek a háttérben futhatnak anélkül, hogy gyanút keltenének. A rosszindulatú programokat általában úgy észlelheti, hogy felvázolja és megvizsgálja a hálózatában található összes folyamatot. De a folyamatinjektálás észlelése nem olyan egyszerű, mert a kódok a törvényes folyamatok árnyéka alatt rejtőznek.
Mivel engedélyezőlistára helyezte engedélyezett folyamatait, az észlelőrendszerek érvényességüket tanúsítják anélkül, hogy valami nem stimmelne. Az injektált folyamatok a lemezes kriminalisztikai eljárást is megkerülik, mivel a rosszindulatú kódok a legális folyamat memóriájában futnak.
A támadó a kódok láthatatlanságát arra használja, hogy elérje a hálózat minden olyan területét, amelyhez az általa rejtőzködő legitim folyamatok hozzáférhetnek. Ez magában foglal bizonyos adminisztrátori jogosultságokat, amelyeket senkinek nem adna meg.
Bár a folyamatinjektálás könnyen észrevétlen marad, a fejlett biztonsági rendszerek képesek észlelni őket. Tehát a kiberbűnözők magasabbra teszik a mércét azzal, hogy a legigénytelenebb módon hajtják végre, amit az ilyen rendszerek figyelmen kívül hagynak. Olyan alapvető Windows-folyamatokat használnak, mint a cmd.exe, msbuild.exe, explorer.exe stb. hogy ilyen támadásokat indítson.
3 Injekciós eljárási technikák
Különböző eljárásokhoz különböző befecskendezési technikák léteznek. Mivel a kiberfenyegetés szereplői nagyon jól ismerik a különböző rendszereket és azok biztonsági helyzetét, a legmegfelelőbb technikát alkalmazzák sikerarányuk növelésére. Nézzünk meg néhányat közülük.
1. DLL injekció
A DLL (Dynamic Link Library) injekció egy folyamatinjektálási technika, amelyben a hacker a dinamikus hivatkozási könyvtár, hogy befolyásoljon egy végrehajtható folyamatot, és arra kényszerítse, hogy az Ön által nem szándékolt módon viselkedjen, vagy elvárják.
A támadás azzal a szándékkal fecskendezi be a kódot, hogy felülírja az eredeti kódot a rendszerben, és távolról irányítsa azt.
A több programmal kompatibilis DLL injekció lehetővé teszi a programok számára, hogy többször használják a kódot anélkül, hogy elveszítenék érvényességét. Ahhoz, hogy a DLL-befecskendezési folyamat sikeres legyen, a rosszindulatú programnak tartalmaznia kell a hálózaton lévő szennyezett DLL-fájl adatait.
2. PE befecskendezés
A hordozható végrehajtás (PE) egy folyamatbefecskendezési módszer, amelynek során a támadó egy érvényes és aktív folyamatot fertőz meg a hálózatban egy káros PE-képpel. Egyszerűbb, mint más folyamatinjektálási technikák, mivel nem igényel shell kódolási készségeket. A támadók könnyen megírhatják a PE kódot alap C++ nyelven.
A PE befecskendezés tárcsa nélküli. A rosszindulatú programnak nem kell átmásolnia az adatait egyetlen lemezre sem, mielőtt az injekció megkezdődik.
3. Üregesedés folyamata
A Process Hollowing egy folyamatbefecskendezési technika, ahol a támadó ahelyett, hogy egy létező legitim folyamatot használna, új folyamatot hoz létre, de megfertőzi azt rosszindulatú kóddal. A támadó az új folyamatot svchost.exe fájlként vagy jegyzettömbként fejleszti. Így akkor sem fogja gyanúsnak találni, ha a folyamatlistáján felfedezi.
Az új rosszindulatú folyamat nem indul el azonnal. A kiberbûnözõ inaktívvá teszi, összekapcsolja a legitim folyamattal, és helyet teremt neki a rendszer memóriájában.
Hogyan előzhető meg a folyamatinjektálás?
A folyamatinjektálás tönkreteheti a teljes hálózatot, mivel a támadó a legmagasabb szintű hozzáféréssel rendelkezhet. Sokkal könnyebbé teszi a munkájukat, ha a beinjektált folyamatok az Ön legértékesebb eszközeihez tartoznak. Ez az a támadás, amelyet meg kell akadályoznia, ha nem áll készen arra, hogy elveszítse az irányítást a rendszere felett.
Íme néhány leghatékonyabb módszer a folyamatinjektálás megelőzésére.
1. Az engedélyezési lista elfogadása
Az engedélyezési lista az a folyamat egy sor alkalmazás felsorolása amely a biztonsági értékelése alapján beléphet a hálózatába. Biztosan ártalmatlannak ítélte az engedélyezőlistán szereplő elemeket, és ha a bejövő forgalom nem esik az engedélyezőlista hatálya alá, akkor nem tudnak áthaladni.
Az engedélyezési listával történő folyamatinjektálás elkerülése érdekében felhasználói bevitelt is hozzá kell adnia az engedélyezőlistához. Kell lennie egy olyan bemeneti készletnek, amely átmegy a biztonsági ellenőrzéseken. Tehát, ha egy támadó az Ön joghatóságán kívül bármilyen bevitelt végez, a rendszer blokkolja őket.
2. Folyamatok figyelése
Amennyire a folyamatinjektálás megkerül bizonyos biztonsági ellenőrzéseket, megfordíthatja azt, ha kiemelt figyelmet fordít a folyamat viselkedésére. Ehhez először fel kell vázolni egy adott folyamat várható teljesítményét, majd össze kell hasonlítani a jelenlegi teljesítményével.
A rosszindulatú kódok jelenléte a folyamatban bizonyos változásokat okoz, függetlenül attól, hogy milyen csekélyek a folyamatban. Általában figyelmen kívül hagyja ezeket a változtatásokat, mert jelentéktelenek. De ha a folyamatfigyelés révén szeretné felfedezni a várható teljesítmény és a jelenlegi teljesítmény közötti különbségeket, észre fogja venni az anomáliát.
3. Kimenet kódolása
A kiberfenyegetés szereplői gyakran használják Cross-Site Scripting (XSS) veszélyes bejuttatáshoz kódok egy folyamatinjektálásban. Ezek a kódok szkriptekké alakulnak, amelyek az Ön tudta nélkül futnak a hálózat hátterében. Ezt megelőzheti, ha átvizsgálja és megtisztítja az összes gyanús bemenetet. Ezek viszont adatként jelennek meg, nem pedig rosszindulatú kódként, ahogy azt szándékozták.
A kimeneti kódolás a HTML kódolással működik a legjobban – ez a technika lehetővé teszi változó kimenetek kódolását. Meghatároz néhány speciális karaktert, és helyettesíti őket alternatívákkal.
Akadályozza meg a folyamatinjektálást az intelligenciavezérelt biztonsággal
A folyamatinjektálás egy füstszűrőt hoz létre, amely elfedi a rosszindulatú kódokat egy érvényes és működő folyamaton belül. Amit látsz, az nem az, amit kapsz. A támadók megértik ennek a technikának a hatékonyságát, és folyamatosan használják a felhasználók kizsákmányolására.
A folyamatinjekciók elleni küzdelemhez túl kell járnod a támadó eszén azáltal, hogy nem annyira nyilvánvaló a védekezésben. Hajtson végre olyan biztonsági intézkedéseket, amelyek a felszínen láthatatlanok lesznek. Azt fogják hinni, hogy játszanak veled, de anélkül, hogy tudnák, te játszod őket.