Windows host firewall profile disabled from the command line
Matches a command line that names a Windows Defender Firewall management surface and, in the same invocation, the argument that turns a profile off or opens its default inbound policy — the firewall-management execution half of MITRE's AN2043. Both predicates run on CommandLine so the rule catches the action whether it is netsh, the NetSecurity PowerShell module, or either of them wrapped in a shell, since the wrapper's own command line carries the same text. Scope is deliberately narrowed to profile-level disablement: adding and modifying individual rules is equally part of the technique but is what every software installer does, and folding it in here would bury the signal. The service-stop and registry-mutation paths the analytic also lists are separate log sources in the brief and are not attempted here. Prerequisite: on the Security EventID 4688 feed this needs the Audit Process Creation subcategory *and* the separate "Include command line in process creation events" policy — neither is on by default, and without the second one CommandLine arrives empty and this rule, which reads nothing else, matches nothing while appearing healthy. MITRE's AuthorizedAdminAccounts and MaintenanceWindow knobs are suppression inputs a single-event rule cannot apply and have to be handled in the SIEM. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0901, not hand-written and not tested by its author. Any lab result is on this rule's own page.Full descriptionShow less
The detection
The 4 SIEM queries below are previews produced by Siemphony’s own translator, not pySigma, and none has been executed against a real backend — review before you deploy.
detection.yml
Sentinel · KQL
Run this as a search.
DeviceProcessEvents| where ((ProcessCommandLine contains "advfirewall" or ProcessCommandLine contains "netsh firewall" or ProcessCommandLine contains "NetFirewallProfile") and (ProcessCommandLine contains "state off" or ProcessCommandLine contains "opmode disable" or ProcessCommandLine contains "opmode mode=disable" or ProcessCommandLine contains "firewallpolicy allowinbound" or ProcessCommandLine contains "Enabled False" or ProcessCommandLine contains "Enabled:False" or ProcessCommandLine contains "Enabled $false" or ProcessCommandLine contains "Enabled:$false" or ProcessCommandLine contains "DefaultInboundAction Allow"))
Splunk · SPL
Run this as a search.
index=* ((CommandLine="*advfirewall*" OR CommandLine="*netsh firewall*" OR CommandLine="*NetFirewallProfile*") AND (CommandLine="*state off*" OR CommandLine="*opmode disable*" OR CommandLine="*opmode mode=disable*" OR CommandLine="*firewallpolicy allowinbound*" OR CommandLine="*Enabled False*" OR CommandLine="*Enabled:False*" OR CommandLine="*Enabled $false*" OR CommandLine="*Enabled:$false*" OR CommandLine="*DefaultInboundAction Allow*"))Elastic · ES|QL
Run this as a search.
FROM logs-*| WHERE ((TO_LOWER(process.command_line) LIKE "*advfirewall*" OR TO_LOWER(process.command_line) LIKE "*netsh firewall*" OR TO_LOWER(process.command_line) LIKE "*netfirewallprofile*") AND (TO_LOWER(process.command_line) LIKE "*state off*" OR TO_LOWER(process.command_line) LIKE "*opmode disable*" OR TO_LOWER(process.command_line) LIKE "*opmode mode=disable*" OR TO_LOWER(process.command_line) LIKE "*firewallpolicy allowinbound*" OR TO_LOWER(process.command_line) LIKE "*enabled false*" OR TO_LOWER(process.command_line) LIKE "*enabled:false*" OR TO_LOWER(process.command_line) LIKE "*enabled $false*" OR TO_LOWER(process.command_line) LIKE "*enabled:$false*" OR TO_LOWER(process.command_line) LIKE "*defaultinboundaction allow*"))
Wazuh · XML rule
Deploy to your manager — this is a rule, not a search.
<group name="sigma,windows,process_creation,"> <!-- Rule ids must be unique on your manager; 100000+ is the user range. --> <rule id="100000" level="12"> <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. --> <field name="CommandLine" type="pcre2">(?i)(advfirewall|netsh firewall|NetFirewallProfile)</field> <field name="CommandLine" type="pcre2">(?i)(state off|opmode disable|opmode mode=disable|firewallpolicy allowinbound|Enabled False|Enabled:False|Enabled \$false|Enabled:\$false|DefaultInboundAction Allow)</field> <description>Windows host firewall profile disabled from the command line</description> <mitre> <id>T1686.003</id> </mitre> </rule></group>
Verdicts · reactions · comments
Community
Verdicts from engineers who actually deployed it, and the conversation around it.
Nobody has run this in a real environment and said what happened.
Verdicts from engineers who deployed it
0 castNo verdicts reported yet. The first one is worth more than the tenth — say what you ran it against.
Log in to report a verdict.
Log in to join the discussion.
No comments yet. Someone who deploys this will have something to say about it.