Windows Antivirus and EDR Enumeration
Knowing what security tooling is active on a target shapes every subsequent decision. This enumeration runs early, before anything that might trigger an alert. Key areas to check:
Installed antivirus and EDR products (process names, services)
Windows Defender real-time protection and exclusion paths
AMSI status and bypass potential
AppLocker or WDAC application control policies
Credential Guard and LSA protection configuration
The results determine which tools to use, how to transfer files, and which evasion techniques are worth attempting.
Installed security products
Windows Defender status
Windows Defender is present on every modern Windows installation. Check its status and configured exclusions: exclusion paths are locations where you can drop and run tools without triggering detections.
AMServiceEnabled : True
RealTimeProtectionEnabled : True
ExclusionPath : {C:\Windows\Temp, C:\Tools}
Exclusion paths in Defender are gold: any file dropped in those directories will not be scanned. Check ExclusionPath output carefully and use those locations for tool staging.
AMSI status
AMSI (Antimalware Scan Interface) intercepts PowerShell, JScript, VBScript, and other script content before execution. It cannot be queried directly but its presence can be inferred.
AppLocker and application control
AppLocker restricts which executables and scripts can run. Understanding the policy tells you which paths and file types are allowed, which shapes where you can execute tools from.
AppLocker commonly allows execution from C:\Windows\ and C:\Program Files\. Writable subdirectories within those paths (such as C:\Windows\Tasks\ or C:\Windows\Temp\) are common bypass locations. If AppLocker is in audit mode rather than enforce mode, nothing is actually blocked.
Credential Guard and LSA protection
These settings affect whether LSASS can be dumped directly. Check them before attempting credential extraction.
RunAsPPL REG_DWORD 0x1 UseLogonCredential REG_DWORD 0x0
RunAsPPL = 1 means LSASS runs as a protected process: standard dump methods will fail. You need a kernel-level driver or a signed tool like ProcDump with the right permissions. UseLogonCredential = 1 means WDigest is enabled and plaintext credentials are stored in LSASS: a significant misconfiguration on modern systems.