Living Off the Land Binaries, pogosto imenovane LOLBins, predstavljajo enega najbolj vztrajnih izzivov v sodobni zaznavi groženj. Kot penetracijski tester dosledno ugotavljam, da so te tehnike med najučinkovitejšimi pri obvodu varnostnih kontrol, prav zato, ker so orodja, ki se uporabljajo, legitimne, podpisane Microsoftove datoteke, ki obstajajo na vsakem sistemu Windows. Ta objava se navezuje na MITRE ATT&CK tehniko T1218 (izvajanje prek sistemskih datotek) in njene številne podtehnike, moj cilj pa je pomagati branilcem zgraditi učinkovito zaznavo okoli teh pogosto zlorabljenih orodij.
Zlorabe posameznih sistemskih programov, skript in knjižnic dokumentira projekt LOLBAS.
Zakaj so LOLBins učinkoviti
Temeljni izziv z zaznavo LOLBin je dvojna narava teh orodij. Vsak LOLBin ima legitimen namen in v mnogih okoljih se ta orodja dnevno uporabljajo s strani sistemskih administratorjev, namestitvenih programov in avtomatiziranih procesov. Rešitve za belo listo aplikacij običajno dovoljujejo te datoteke, ker so podpisane s strani Microsofta in potrebne za normalno delovanje sistema. Napadalci izkoriščajo to prirojeno zaupanje z uporabo teh orodij za prenos datotek, izvajanje kode in izvajanje drugih zlonamernih dejanj. Ključ za branilce ni blokiranje teh orodij v celoti, kar bi pokvarilo legitimno funkcionalnost, temveč spremljanje anomalnih vzorcev uporabe, ki kažejo na zlorabo.
Pogosti LOLBins in njihovi vzorci zlorabe
Razumevanje specifičnih načinov zlorabe vsakega orodja branilcem pomaga zgraditi ciljana pravila zaznave. Tu so najpogosteje zlorabljeni LOLBins, na katere naletim med angažmaji.
- certutil.exe (T1140) - Namenjen upravljanju certifikatov, certutil lahko prenaša datoteke iz URL-jev z zastavico -urlcache in kodira ali dekodira Base64 podatke. Branilci bi morali spremljati certutil.exe z argumenti ukazne vrstice, ki vsebujejo -urlcache, -split, -encode ali -decode. Vsaka omrežna povezava, ki jo sproži certutil.exe, bi morala biti preiskana, saj operacije upravljanja certifikatov v večini okolij redko zahtevajo dostop do interneta.
- mshta.exe (T1218.005) - Gostitelj aplikacij Microsoft HTML izvaja datoteke HTA, ki lahko vsebujejo VBScript ali JScript. Napadalci ga uporabljajo za izvajanje skript iz oddaljenih URL-jev ali lokalnih datotek. Branilci bi morali opozoriti na mshta.exe, ki se izvaja z argumenti URL ali poraja podrejene procese, kot sta cmd.exe ali powershell.exe, kar skoraj nikoli ni legitimen vzorec uporabe.
- regsvr32.exe (T1218.010) - Zasnovan za registracijo DLL-jev COM, regsvr32 lahko tudi izvaja skriptlete COM iz oddaljenih URL-jev z uporabo vzorca /s /n /u /i:URL, znanega kot napad Squiblydoo. Spremljajte regsvr32.exe z argumenti /i, ki vsebujejo URL-je ali izvajajo skripte iz začasnih imenikov.
- rundll32.exe (T1218.011) - To orodje izvaja funkcije DLL in ga je mogoče zlorabiti za zagon poljubne kode. Branilci bi morali opazovati rundll32.exe, ki izvaja DLL-je iz neobičajnih lokacij, kot so uporabniški začasni imeniki, mape za prenose ali omrežne skupne rabe, namesto iz System32 ali Program Files.
- msiexec.exe (T1218.007) - Namestitveni program Windows lahko namešča pakete iz oddaljenih URL-jev, kar napadalcem omogoča prenos in izvajanje zlonamernih paketov MSI. Spremljajte msiexec.exe, ki se povezuje z zunanjimi URL-ji ali namešča pakete iz nestandardnih lokacij.
Alternative PowerShell
Ker se je zaznava PowerShell bistveno izboljšala z beleženjem skriptnih blokov in AMSI, so se napadalci preusmerili na alternativne metode izvajanja, ki zagotavljajo podobne zmožnosti z manjšo vidnostjo.
- wmic.exe (T1047) - Ukazna vrstica instrumentacije za upravljanje Windows lahko ustvarja procese, poizveduje sistemske informacije in celo izvaja skripte na daljavo. Ukazi WMIC process call create so neposredna alternativa PowerShell za izvajanje ukazov. Branilci bi morali spremljati WMIC z argumenti process call create in opazovati oddaljene povezave WMIC.
- cscript.exe in wscript.exe (T1059.005) - Gostitelja skript Windows izvajata datoteke VBScript in JScript. Ta skriptna mehanizma predhodita PowerShell in sta manj pogosto nadzorovana. Branilci bi morali obravnavati izvajanje gostiteljev skript z enako stopnjo nadzora kot PowerShell, spremljati skripte, izvajane iz neobičajnih lokacij, in opazovati ustvarjanje podrejenih procesov.
- msbuild.exe (T1127.001) - Microsoftov mehanizem za gradnjo lahko prevede in izvede vgrajeno kodo C# iz projektnih datotek XML, kar učinkovito zagotavlja mehanizem za izvajanje kode, ki zaobide belo listo aplikacij. Branilci bi morali opozoriti na msbuild.exe, ki se izvaja zunaj razvojnih okolij, in spremljati msbuild.exe, ki poraja nepričakovane podrejene procese.
Strategije zaznave za zlorabo LOLBin
Učinkovita zaznava LOLBin zahteva kombinacijo vedenjske analitike, analize običajnih vzorcev in kontekstualne zavednosti. Tu je pristop, ki ga priporočam organizacijam na podlagi mojih izkušenj s testiranjem.
- Analiza argumentov ukazne vrstice - Večina zlorab LOLBin vključuje specifične argumente ukazne vrstice, ki se razlikujejo od legitimne uporabe. Omogočite beleženje ukazne vrstice prek Sysmon dogodka ID 1 ali varnostnega dogodka Windows ID 4688 z revizijo ukazne vrstice procesa. Zgradite pravila zaznave, ki označijo znane zlonamerne vzorce argumentov za vsak LOLBin.
- Spremljanje omrežnih povezav - Mnoge tehnike LOLBin vključujejo prenašanje vsebine iz interneta. Orodja kot certutil, mshta, msiexec in regsvr32 bi morala redko sprožati odhodne omrežne povezave v večini okolij. Uporabite Sysmon dogodek ID 3 (omrežna povezava) za spremljanje nepričakovane omrežne aktivnosti teh datotek.
- Anomalije nadrejenih procesov - Zloraba LOLBin pogosto proizvaja neobičajne razmerja med nadrejenimi in podrejenimi procesi. Na primer mshta.exe, ki ga požene outlook.exe ali winword.exe, je zelo sumljiv in verjetno kaže na zlonamerno kodo phishinga. Zgradite pravila analize procesnega drevesa, ki označijo nepričakovane nadrejene procese za pogoste LOLBins.
- Izvajanje iz neobičajnih lokacij - Legitimna uporaba LOLBin običajno vključuje datoteke, ki se izvajajo iz njihovih standardnih lokacij System32. Če rundll32.exe ali regsvr32.exe nalaga DLL-je iz imenikov, v katere lahko uporabnik piše, je to močen indikator zlorabe.
Priporočila za zaznavo in obrambo
Izgradnja celovite zaznave LOLBin zahteva vložek v razumevanje običajnih vzorcev vašega okolja. Tu so moja specifična priporočila za branilce.
- Običajni vzorci legitimne uporabe LOLBin - Preden gradite pravila zaznave, si vzemite čas za razumevanje, kako se ta orodja legitimno uporabljajo v vašem okolju. To preprečuje utrujenost od opozoril zaradi lažnih pozitivov in vam omogoča ustvarjanje bolj natančnih pravil zaznave.
- Izkoriščajte projekt LOLBAS - Projekt Living Off the Land Binaries, Scripts, and Libraries vzdržuje celovito podatkovno bazo dvojno uporabnih datotek in njihovega potenciala za zlorabo. Uporabite ta vir za identifikacijo, kateri LOLBins so prisotni v vašem okolju, in zgradite zaznavo za vsakega.
- Uvedite politike nadzora aplikacij - Kjer je mogoče, uporabite Windows Defender Application Control ali AppLocker za omejitev, kateri uporabniki in procesi lahko izvajajo LOLBins. Na primer večina končnih uporabnikov nikoli ne potrebuje zagona msbuild.exe ali regsvr32.exe, zato jih je mogoče blokirati za standardne uporabnike, medtem ko ostanejo na voljo administratorjem.
- Ustvarite korelacijska pravila SIEM - Združite več šibkih signalov v močnejše zaznave. Posamezen prenos certutil je morda benignen, vendar certutil, ki prenese datoteko, ki mu sledi rundll32, ki izvede DLL iz istega imenika v kratkem časovnem oknu, je zelo sumljiv.
- Redno testiranje vaših zaznav - Uporabite okvire kot Atomic Red Team za periodično testiranje vaših zaznav LOLBin. Vsak test potrdi, da vaša pravila pravilno delujejo, in identificira morebitne vrzeli, ki so nastale zaradi sprememb okolja ali odmika pravil.
Razvijajoče se okolje LOLBin
Okolje LOLBin se še naprej razvija, ko varnostni raziskovalci odkrivajo nove dvojno uporabne zmožnosti v obstoječih sistemskih datotekah. Branilci morajo ostati na tekočem z novimi odkritji s spremljanjem projekta LOLBAS in virov obveščevalnih podatkov o grožnjah. Med vsakim penetracijskim testom, ki ga izvedem, dokumentiram, katere tehnike LOLBin uspešno zaobidejo naročnikova orodja za zaznavanje, s čimer zagotavljam operativno uporabne obveščevalne podatke za izboljšanje njihove ravni varnosti. Najučinkovitejše organizacije obravnavajo zaznavo LOLBin kot stalen program in ne kot enkratno konfiguracijo, neprestano izpopolnjujejo svoja pravila in širijo svojo pokritost, ko se okolje groženj spreminja.
Sorodno branje: Osnove izogibanja EDR: Razumevanje zaznave in Obrambno izogibanje: Skrivanje pred dnevniki in spremljanjem.
Zanima vas več o tej temi? Preberite mojo strokovno stran o Evasion & EDR →
Komentarji
Ni še komentarjev. Bodite prvi!
Dodaj komentar