- Napadači mijenjaju WDAC (SiPolicy.p7b i DeviceGuard) kako bi utišali EDR i Defender.
- Ključni pokazatelji: Promjene u WDAC ključevima i hashovima povezanim s aktivnim kampanjama.
- Ublažavanje: Kontrola promjena, potpisi, zaštita od neovlaštenih promjena, telemetrija i zakrpe.
- Dobro upravljan WDAC štiti HoloLens/WAC; loše upravljan otvara vrata za fileless/LOLBins.
Napadi koji manipuliraju Windows Defender Kontrola aplikacija (WDAC) postala je vrlo ozbiljan put za utišavanje obrane poput EDR-a i Microsoft Defendera u korporativnim okruženjima. Ovaj trend nije znanstvena fantastika: istraživači su primijetili kako skupine prijetnji mijenjaju integritet koda kako bi spriječile učitavanje upravljačkih programa i sigurnosnih usluga iz čizma.
Osim samog naslova, razumijevanje načina na koji funkcioniraju i kakve signale ostavljaju ključno je za osiguranje da SOC-ovi i timovi za odgovor ne ostanu u mraku. U ovoj analizi usredotočujemo se na Tehnike rukovanja WDAC-om, praktični pokazatelji i mjere ublažavanja, ali i u legitimnoj upotrebi WDAC-a (na primjer, na HoloLensu 2 ili Windows Administratorski centar), kao i u njegovom odnosu s prijetnjama bez datoteka i zlouporabom PowerShell i LOLBins.
Što su WDAC manipulacijski napadi?
WDAC je tehnologija kontrole aplikacija u sustavu Windows koja ograničava koje binarne datoteke, skripte, MSI instalacijske programe, pa čak i kod na razini jezgre ovlašteni su za pokretanje. U osnovi, uspostavlja politike integriteta koda na temelju potpisa, izdavača, hashova, putanja, kataloga itd., koristeći pristup dopuštene liste.
Protivnici su naučili preokrenuti tu logiku naglavačke: kada dobiju dovoljno privilegija, mijenjaju ili primjenjuju WDAC politike kako bi... posebno blokirati sigurnosne komponente (vozači i EDR binarne datoteke, uključujući Microsoft Defender), čime se smanjuje vidljivost i obrambeni odziv prije pokreta s dodatnim korisnim teretom.
Što se događa i kako funkcioniraju
Promatrana tehnika uključuje mijenjanje politike integriteta koda tako da se ne učitavaju. sigurnosne službe i vozači tijekom pokretanja. Najčešći krivac je datoteka pravila SiPolicy.p7b, koju Windows pronalazi u 'C:\\Windows\\System32\\CodeIntegrity\\'.
Mijenjanjem te datoteke ili prisiljavanjem na korištenje alternativne politike, napadač može uvesti pravila blokiranja poznatih EDR ruta i upravljačkih programa (npr. CrowdStrike, SentinelOne, Symantec, Tanium) i samog EDR-a. Microsoft Defender EndpointTo drastično snižava obrambenu ljestvicu, otvarajući prozor za priliku za kretanje s manjom vjerojatnošću otkrivanja.
Osim promjena datoteka, postoje signali registra na koje vrijedi obratiti pozornost. Konkretno, promjene u Windows DeviceGuardu na ključevima 'ConfigCIPolicyFilePath' i 'DeployConfigCIPolicy' mogu ukazivati na Neovlašteno postavljanje WDAC pravila ili njegove manipulacije u zlonamjerne svrhe.
Drugi uobičajeni operativni put je korištenje mamaca: uočeni su naizgled bezopasni dokumenti (poput navodnih 'PDF-ova') koji su zapravo WDAC binarne datoteke dizajnirane za provođenje zlonamjernih pravila tiho, postižući upornost i progresivnu deaktivaciju obrane.
Od Krueger projekta do prijetnje DreamDemona
Ova evolucija naglašava skok od konceptualnog dokaza zvanog Krueger, napisanog u .NET-u, do zrelije obitelji zvane DreamDemon, ponovno implementirane u C++ za postizanje učinkovitosti i otpornostiDok je Krueger pokazao izvedivost, DreamDemon automatizira i učvršćuje tehnike modifikacije WDAC politika u stvarnim okruženjima.
DreamDemonov cilj je jasan: modificirati WDAC kako bi se spriječilo učitavanje usluge i upravljačke programe od više dobavljača sigurnost, uključujući ekosustav Microsoft Defendera. S onemogućenim senzorima, napadač smanjuje trenje prije izvršavanja dodatnih korisnih tereta, bočnog kretanja ili krađe podataka s manjom vjerojatnošću otkrivanja.
Pokazatelji i znakovi na koje treba paziti
U telemetriji povezanoj s ovom aktivnošću, podijeljeni su SHA-256 hashovi koje sigurnosni timovi mogu koristiti kao točke pretraživanja i operativne informacije. Ovo su dva primjera Relevantni IoC-ovi povezano:
- 90937b3a64cc834088a0628fda9ce5bd2855bedfc76b7a63f698784c41da4677
- a795b79f1d821b8ea7b21c7fb95d140512aaef5a186da49b9c68d8a3ed545a89
Osim IoC-ova, dobra je ideja pratiti događaje 'Integritet koda' i DeviceGuard te postavljati upozorenja. Promjene u 'ConfigCIPolicyFilePath' i 'DeployConfigCIPolicy'Otkrivanje implementacije WDAC politika izvan procesa promjene ili u atipičnim vremenima je znak za uzbunu.
Također vrijedi obratiti pozornost na priloge ili descargas navodnih dokumenata koji se zapravo primjenjuju zlonamjerne WDAC politikeOvaj obrazac odgovara kampanjama koje traže upornost i utišavanje obrane kako bi utrle put većim prijetnjama, poput ransomwarea.
Posljedice za tvrtke i uprave
Ako napadač uspije spriječiti učitavanje EDR-a i Defendera, okruženje pada u svojevrsni operativni sumrak: vidljivost je smanjena, korelacije i sposobnosti odgovora su oslabljene, a rizik od lateralno kretanje, eksfiltracija i enkripcijaZa SOC, ovo je doslovno prekretnica.
Kruegerov prelazak na DreamDemon pokazuje da su tehnike protiv WDAC-a sazrele i postale industrijalizirane. Zato je to danas ključno. povećati uočljivost preko lanca povjerenja krajnjih točaka, telemetrije integriteta koda instrumenta i zatvaranja praznina u upravljanju politikama.
Preporuke i ublažavanje
Na preventivnoj razini, prvi korak je jačanje kontrole promjena na WDAC-u i Defenderu te saznanje kako štitni prozoriPokušajte provjeriti verziju, pregledati i potvrditi potpis/autorstvo prije nego što primijenite bilo što. SiPolicy.p7b ili dodatna pravilai štiti proces implementacije tako da se koriste samo pouzdani izvori.
- Ograničite administratorske privilegije i zahtijevajte višestruku autentifikaciju (MFA) za sigurnosne zadatke i implementaciju politika, smanjujući površinu za zlouporabu. privilegirane vjerodajnice.
- Revizija i upozorenja o izmjenama DeviceGuarda (posebno 'ConfigCIPolicyFilePath' i 'DeployConfigCIPolicy') i događajima integriteta koda.
- Omogućite i provjerite zaštitu od neovlaštenih izmjena u programu Microsoft Defender na svim krajnjim točkama izbjegavajte lokalne manipulacije.
- Ojačajte EDR/AV: kontrolirane liste dopuštenih, blokiranje nepotpisanih upravljačkih programa i ponavljajući pregled pravila.
- Dajte prioritet ažuriranjima sustava Windows i aplikacija: Zakrpe i detekcije poboljšavaju otpornost na nove tehnike.
- Obuka korisnika: Budite posebno oprezni s neočekivanim prilozima i navodnim PDF-ovima; uvijek provjerite izvor.
WDAC na HoloLensu 2: Upravljanje aplikacijama bez miješanja s kiosk načinom rada
Na HoloLensu, WDAC vam omogućuje blokiranje pokretanje aplikacijeZa razliku od kiosk načina rada (koji skriva aplikacije ali vam omogućuje da ih pokrenete), s WDAC-om ih možete vidjeti, ali ne i pokrenuti. Osim toga, uređaj može imati više WDAC pravila i, ako se podudaraju, prevladava najrestriktivniji.
Za izradu pravila mnogi administratori koriste PowerShell i Microsoft Intune. Tipičan prvi korak je lociranje paketa aplikacije pomoću nečega poput 'Get-AppxPackage -name *name*'. Na primjer, za Edge, pokretanje 'Get-AppxPackage -name *edge*' može vratiti razni rezultati, i na tom popisu navodite točno ime.
U slučajevima kada naziv paketa nije očit, preporučljivo je ponoviti upit s različitim aproksimacijama dok se ne pronađi lanac ispravno. Nakon što se identificira, odgovarajuće pravilo dodaje se pravilniku (newPolicy.xml) ili putem čarobnjaka.
Za unaprijed instalirane i često korištene aplikacije na HoloLensu 2, ovo su primjeri nazivi obitelji paketa koji su obično uključeni u pravila (reprezentativni izvadak):
primjena | Ime obitelji paketa |
---|---|
3D preglednik | Microsoft.Microsoft3DViewer_8wekyb3d8bbwe |
Instalater aplikacije | Microsoft.DesktopAppInstaller_8wekyb3d8bbwe |
Kalendar / Pošta | microsoft.windowscommunicationsapps_8wekyb3d8bbwe |
Kamere | HoloCamera_cw5n1h2txyewy |
Povratna veza | Microsoft.WindowsFeedbackHub_8wekyb3d8bbwe |
Microsoft Store | Microsoft.WindowsStore_8wekyb3d8bbwe |
Filmovi i TV | Microsoft.ZuneVideo_8wekyb3d8bbwe |
OneDrive | microsoft.microsoftskydrive_8wekyb3d8bbwe |
Fotografije | Microsoft.Windows.Photos_8wekyb3d8bbwe |
konfiguracija | HolographicSystemSettings_cw5n1h2txyewy |
Ako želite blokirati novo Microsoft Edge Točnije, možete dodati pravilo odbijanja prema nazivu datoteke, na primjer: <Deny FriendlyName='C:\\Data\\Programs FileRule' PackageVersion='65535.65535.65535.65535' FileName='msedge.exe' />
Ova direktiva spriječit će izvršenje naznačenog binarnog broja.
Kada aplikacija nije navedena, Device Portal je koristan resurs. Spojite HoloLens 2, idite na Prikazi > Aplikacije, odaberite aplikaciju i pronađite PackageRelativeID. Kopirajte ono što je prije znaka '!' da biste dobili Ime obitelji paketa koje možete koristiti u WDAC-u.
Windows administratorski centar i WDAC-primijenjena okruženja
WDAC također služi za ograničavanje skripti i omogućavanje ConstrainedLanguage u PowerShellu, što utječe na Centar za administraciju sustava Windows (WAC). Kada se povežete sa serverom ili klasterom pomoću WDAC-a, WAC prikazuje status na stranici Pregled, na primjer je li PowerShell jezik u ograničenom načinu rada.
Ključni zahtjevi: Standardna instalacija na glavnom računalu, prava lokalnog administratora na glavnom računalu i upravljanim čvorovima, ispravna konfiguracija mreže (WinRM HTTP 5985, HTTPS 5986) i SMB pristup putem TCP porta 445. Preporučuje se da WAC i čvorovi budu na istoj mreži. ista domena ili s povjerenjem, posebno za autentifikaciju i administraciju.
Što se tiče pravila, postoje uobičajeni slučajevi koje treba uzeti u obzir. Slučaj 1: Samo upravljani čvorovi primjenjuju WDAC; jednostavno trebate autorizirati Microsoftovog potpisnika u pravilniku čvora. Slučaj 2: I WAC host i čvor primjenjuju WDAC; morate uključiti dodatne potpisnike (npr. Microsoftova komponenta aplikacije treće strane i .NET) na WAC hostu.
Primjeri pravila za potpisivanje (mogu se generirati pomoću čarobnjaka ili PowerShella, a zatim pregledati): <Signer Name='Microsoft Code Signing PCA 2011'><CertRoot Type='TBS' Value='F6F717A43AD9ABDDC8CEFDDE1C505462535E7D1307E630F9544A2D14FE8BF26E' /><CertPublisher Value='Microsoft Corporation' /></Signer>
Za slučaj 2, on također dodaje: <Signer Name='Microsoft Code Signing PCA 2011'><CertRoot Type='TBS' Value='F6F717A43AD9ABDDC8CEFDDE1C505462535E7D1307E630F9544A2D14FE8BF26E' /><CertPublisher Value='Microsoft 3rd Party Application Component' /></Signer>
y <Signer Name='Microsoft Code Signing PCA 2011'><CertRoot Type='TBS' Value='F6F717A43AD9ABDDC8CEFDDE1C505462535E7D1307E630F9544A2D14FE8BF26E' /><CertPublisher Value='.NET' /></Signer>
.
Ako koristite WAC verzije starije od 2410, možda vam neće trebati pravilo '.NET', ali možda će vam trebati određena pravila za datoteke ili hash na WAC hostu. Na primjer, dopuštanje WiX biblioteka: <FileRules><Allow FriendlyName='WiX wixca.dll' Hash='9DE61721326D8E88636F9633AA37FCB885A4BABE' /><Allow FriendlyName='WiX wixca.dll' Hash='B216DFA814FC856FA7078381291C78036CEF0A05' /><Allow FriendlyName='WiX wixca.dll' Hash='233F5E43325615710CA1AA580250530E06339DEF861811073912E8A16B058C69' /><Allow FriendlyName='WiX wixca.dll 2' Hash='EB4CB5FF520717038ADADCC5E1EF8F7C24B27A90' /><Allow FriendlyName='WiX wixca.dll 2' Hash='6C65DD86130241850B2D808C24EC740A4C509D9C' /><Allow FriendlyName='WiX firewall.dll' Hash='2F0903D4B21A0231ADD1B4CD02E25C7C4974DA84' /><Allow FriendlyName='WiX firewall.dll' Hash='868635E434C14B65AD7D7A9AE1F4047965740786' /><Allow FriendlyName='WiX firewall.dll' Hash='5C29B8255ACE0CD94C066C528C8AD04F0F45EBA12FCF94DA7B9CA1B64AD4288B' /></FileRules>
. Ovaj olakšava instalacije i module što WAC-u treba.
Što se tiče pravila izvršavanja PowerShella, zadana vrijednost je obično dovoljna. Ako je promijenite, postavite opseg 'LocalMachine' na 'RemoteSigned' kako biste omogućili učitavanje potpisanih skripti. Promjene vršite samo kada biti bitan i dokumentiranje rizika.
Poznati problemi i rješavanje problema
Postoje neka ograničenja s primjenom WDAC-a. Na primjer, implementacija Azure Kubernetes usluge na Azure Localu i premošćivanje Azure Arc resursa putem WAC-a nisu podržani. podržano u okruženjima s WDAC-omTakođer postoje ograničenja za RBAC na jednom poslužitelju i neke operacije alata za certifikate.
Ako WAC prikazuje 'modul nije pronađen' ili 'nije se uspjelo povezati', provjerite jesu li moduli 'Microsoft.SME.*' preneseni na čvor (direktorij '%PROGRAMFILES%\\WindowsPowerShell\\Modules'). Ako nisu, pokušajte ponovno uspostaviti vezu. Također provjerite ima li WAC host pristup TCP port 445 čvora za SMB komunikaciju.
Zlonamjerni softver bez datoteka, PowerShell i LOLBins: savršen kontekst za zlouporabu WDAC-a
El malware Fileless ne treba zapisivati trajne artefakte na disk da bi izazvao kaos: pokreće sve u memoriji ili zloupotrebljava ugrađene alate, što ga čini teškim za otkrivanje. Bilo je poznatih slučajeva kao što su Obveza DNC-a u 2016. godini, a kampanje (npr. od strane Lazarus grupe) su uočene s dokumentima o riječ koji izvršavaju kod u memoriji pomoću LOLBinsa i na Windowsima i na macOS-u.
Uobičajene vrste napada bez datoteka uključuju zlonamjerne dokumente i skripte, zloupotrebu binarnih datoteka Living Off the Land (LOLBins) i tehnike ubrizgavanja memorije. Memorija je nestabilna, pa napadači često traže mehanizmi perzistencije preživjeti ponovna pokretanja.
PowerShell i WMI/CIM su favoriti. PowerShell je izuzetno moćan i fleksibilan, a ako se unos ne kontrolira, promptne injekcije mogu proklizati, što dovodi do udaljenog izvršavanja, eksfiltracije ili eskalacija privilegijaWMI pruža sloj upravljanja i pretplate koji se također može iskoristiti za postojanost i mobilnost.
Među alatima koje napadači koriste za skripte su 'powershell.exe', 'wscript.exe', 'cscript.exe', 'cmd.exe' ili 'mshta.exe'. Zloupotrebljavaju se i izvorne binarne datoteke poput 'regsvr32.exe', 'rundll32.exe', 'certutil.exe', 'schtasks.exe', 'bitsadmin.exe', 'wmic.exe', 'cmstp.exe', 'msbuild.exe', 'csc.exe', 'netsh.exe', 'curl.exe' ili čak uslužni programi poput MpCmdRun.exe od samog Defendera. Njihova kombinacija služi za preuzimanje, izvršavanje, izbjegavanje UAC-a, bočno kretanje ili pokušaj zaobilaženja kontrola poput WDAC-a.
Kod ubrizgavanja memorije, API pozivi poput 'VirtualAllocEx' i 'WriteProcessMemory' omogućuju jednom procesu pisanje koda u drugi. Za maskiranje postoje okviri poput Invoke-Obfuscation ili Invoke-DOSfuscation u PowerShellu. Linux također postoje alati za zamagljivanje za bash (npr. Bashfuscator, SHC, itd.).
Za ublažavanje: ne otvarajte sumnjive priloge, ojačajte RDP, omogućite napredno PowerShell zapisivanje (module, rukopis blokiranje, transkripcija), provjera WMI-ja za neobične pretplate, onemogućavanje Office makronaredbi pravilima kada je primjenjivo i oslanjanje na slojevitu sigurnost s detekcija mreže i memorije, uz održavanje softvera ažurnim.
Scenariji iz stvarnog života: Kada WDAC blokira legitimne aplikacije (školski slučaj)
Uobičajeni upit: IT tim želi blokirati preglednike prenosiv i aplikacije nisu 'ispravno' instalirane, ali prilikom implementacije testne politike u načinu revizije, vidite da legitimni obrazovni softver pojavljuje se kao kršenje i ako bi se pravilo provodilo, bilo bi blokirano. Čak i ako dodate pravila dopuštanja (npr. dopusti sve u 'C:\\Math'), preglednik događaja prikazuje blokade.
Što se događa: WDAC je, po svojoj prirodi, tehnologija dopuštene liste i prioritet pravila je relevantno (zabrane su obično bolje). Također, ako postoji više pravila, prevladava ono najrestriktivnije. Stoga se pravila o dopuštanju mogu činiti ignoriranima ako postoji još jedan, restriktivniji sloj ili ako pouzdani izvor nije dobro uspostavljen.
Može li se WDAC koristiti samo u načinu rada denylist, propuštajući sve ostalo? Ovo nije izvorni pristup WDAC-a i dugoročno jest... teško za održavanjeZa kontroliranije pokretanje koristite način revizije, generirajte inventar s događajima, pročistite ga pravilima prema izdavaču (kada je dostupan), prema hashu ili katalozima za aplikacije koje nisu od izdavača te procijenite dodatne politike ili koristite Managed Installer/Intune za uspostavljanje povjerenja.
Ako aplikacija nema izdavača ili potpisane identifikatore, razmislite o pravilima za svaku mapu s kompenzacijskim kontrolama (strogi ACL-ovi, kontrola promjena), iako je idealno migrirati na pravila potpisom i kataloge. Također provjerite uključuje li čarobnjak predloške koji su previše ograničavajući za vaš scenarij; ponekad započinjanje s labavijom bazom i iterativno njeno pooštravanje pomaže u sprječavanju prekida u proizvodnji.
Napadi promptne injekcije u PowerShellu i njihov odnos s WDAC-om
Napadi promptne injekcije manipuliraju ulazom ili kontekstom kako bi potaknuli interpretere na izvršavanje naredbe zlonamjerno. U PowerShellu to može dovesti do udaljenog izvršavanja, krađe podataka ili kompromitiranja servisnog računa, posebno ozbiljno ako je WDAC bio prethodno neutralizirano.
Najbolje prakse: načelo najmanjih privilegija, namjenski računi i JEA (Just Enough Administration); izbjegavajte 'Invoke-Expression', konstruirajte tipizirane argumente, validirajte i dezinficirajte unos s bijelim listama, zahtijevajte potpisivanje skripti, omogućite AMSI i napredno zapisivanje te koristite AppLocker ili WDAC za ograničavanje izvršavanjaU arhitekturi, odvojite okruženja, izolirajte kritične procese, mrežne kontrole i centralizirajte reviziju integriranu sa SIEM-om.
U CI/CD cjevovodima dodajte SAST, preglede koda i testiranje penetracije usmjereno na injektiranje. Automatizirajte validacije koje blokiraju implementacije koje nisu u skladu s pravilima. Postoje specijalizirane tvrtke koje nude usluge za obrana dizajna, pojačavanje sigurnosti, konfiguracija AppLockera/WDAC-a, napredno evidentiranje i automatizirani odgovori integrirani sa SIEM-om, plus poslovna inteligencija za vizualizaciju rizika.
Cijela ova slika prikazuje WDAC kao i meta i saveznik: kada ga napadači manipuliraju kako bi utišali senzore, organizacija gubi vidljivost; kada se njime mudro upravlja, postaje čvrsta barijera. Ključno je ojačati lanac povjerenja (potpisane i provjerene politike), pratiti SiPolicy.p7b i DeviceGuard, ojačati Defender i EDR, poboljšati PowerShell higijenu i smanjiti površinu napada protiv bezfileskih i LOLBin sustava, oslanjajući se na telemetriju i rigorozne kontrole promjena.
Strastveni pisac o svijetu bajtova i tehnologije općenito. Volim dijeliti svoje znanje pisanjem, a to je ono što ću učiniti na ovom blogu, pokazati vam sve najzanimljivije stvari o gadgetima, softveru, hardveru, tehnološkim trendovima i još mnogo toga. Moj cilj je pomoći vam da se snađete u digitalnom svijetu na jednostavan i zabavan način.