Sammanfattning
Du kanske märker ett mycket stort antal blockeringshändelser som samlas in i Microsoft Defender MDATP-portalen (Advanced Threat Protection). Dessa händelser genereras av motorn Code Integrity (CI) och kan identifieras av deras ExploitGuardNonMicrosoftSignedBlocked ActionType.
Händelse som den visas i slutpunktshändelseloggen
ActionType |
Leverantör/källa |
Händelse-ID |
Beskrivning |
ExploitGuardNonMicrosoftSignedBlocked |
Security-Mitigations |
12 |
Kodintegritetsskyddsblock |
Händelse som den visas på tidslinjen
Processen "\Device\HarddiskVolume3\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" (PID 8780) blockerades från att läsa in den binära binär "\Windows\assembly\NativeImages_v4.0.30319_64\Microsoft.M870d558a#\08d37b687669e97c65681029a1026d28\Microsoft.Management.Infrastructure.Native.ni.dll"
Mer information
CI-motorn ser till att endast betrodda filer får köras på en enhet. När CI är aktiverat och stöter på en fil som inte är betrodd genererar den en blockeringshändelse. I granskningsläge är filen fortfarande tillåten att köras, men i enforce-läge hindras filen från att köras.
CI kan aktiveras på flera olika sätt, till exempel när du distribuerar en WDAC-princip (Windows Defender Application Control). Men i det här fallet aktiverar MDATP CI på baksidan, vilket utlöser händelser när det uppstår Osignerade NI-filer (Native Image) från Microsoft.
Signering av en fil är avsedd att göra det möjligt att verifiera filernas äkthet. CI kan verifiera att en fil är oförändrad och kommer från en betrodd myndighet baserat på dess signatur. De flesta filer som kommer från Microsoft är signerade, men vissa filer kan av olika anledningar inte vara eller inte signerade. Till exempel signeras NI-binärfiler (kompilerade från .NET Framework-kod) i allmänhet om de ingår i en version. Men de genereras vanligtvis på nytt på en enhet och kan inte signeras. Separat har många program bara sin CAB- eller MSI-fil signerad för att verifiera sin äkthet vid installationen. När de kör skapas ytterligare filer som inte är signerade.
Minskning
Vi rekommenderar inte att du ignorerar dessa händelser eftersom de kan indikera verkliga säkerhetsproblem. En skadlig attack kan till exempel försöka läsa in en osignerad binär fil under deras guise om att det kommer från Microsoft.
Men dessa händelser kan filtreras ut av en fråga när du försöker analysera andra händelser i Advanced Hunting genom att utesluta händelser som har ExploitGuardNonMicrosoftSignedBlocked ActionType.
Den här frågan visar alla händelser som är relaterade till just den här för identifieringen:
DeviceEvents
| där ActionType == "ExploitGuardNonMicrosoftSignedBlocked" och InitiatingProcessFileName == "powershell.exe" och FileName slutar med "ni.dll"
| där Tidsstämpel > sedan(7d)
Om du vill utesluta den här händelsen måste du invertera frågan. Det skulle visa alla ExploitGuard-händelser (inklusive EP) förutom dessa:
DeviceEvents
| där ActionType startarmed "ExploitGuard"
| where ActionType != "ExploitGuardNonMicrosoftSignedBlocked" eller (ActionType == "ExploitGuardNonMicrosoftSignedBlocked" och InitiatingProcessFileName != "powershell.exe") eller (ActionType == "ExploitGuardNonMicrosoftSignedBlocked" och InitiatingProcessFileName == "powershell.exe" och FileName !endswith "ni.dll")
| där Tidsstämpel > sedan(7d)
Om du använder .NET Framework 4.5 eller senare har du dessutom möjlighet att generera NI-filer för att lösa många av de överflödiga händelserna. Det gör du genom att ta bort alla NI-filer i NativeImages-katalogen och sedan köra ngen-uppdateringskommandot för att generera dem.