Detection rules › Sigma

Firewall configuration enumerated (command)

Status
experimental
Severity
high
Log source
product windows, category process_creation
Author
mdecrevoisier
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker attempts to extract current Windows firewall configuration to prepare an attack.

MITRE ATT&CK coverage

Event coverage

Rule body yaml

title: Firewall configuration enumerated (command)
description: Detects scenarios where an attacker attempts to extract current Windows firewall configuration to prepare an attack.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0007-Discovery/T1016-System%20Network%20Configuration%20Discovery
- https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/netsh-advfirewall-firewall-control-firewall-behavior
tags:
- attack.discovery
- attack.t1016
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  category: process_creation
detection:
  selection_event:
    EventID: 4688
    NewProcessName|endswith: '\netsh.exe' # Full path "C:\Windows\system32\netsh.exe"

  selection_command:
    Commandline|contains|all: # full command 'netsh advfirewall show allprofiles'
      - netsh
      - advfirewall
      - show

  selection_obfuscated:
    Commandline|contains|all: # full command 'netsh a show allprofiles'
      - netsh
      - show
      - ' a*' # advfirewall
  condition: selection_event and (selection_command or selection_obfuscated)
falsepositives:
- Administrator activity
level: high

Stages and Predicates

Stage 0: condition

selection_event and (selection_command or selection_obfuscated)

Stage 1: selection_event

selection_event:
  EventID: 4688
  NewProcessName|endswith: '\netsh.exe'

Stage 2: selection_command

selection_command:
  Commandline|contains|all:
    - netsh
    - advfirewall
    - show

Stage 3: selection_obfuscated

selection_obfuscated:
  Commandline|contains|all:
    - netsh
    - show
    - ' a*'

Indicators

Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.

FieldKindValues
Commandlinematch
  • a* corpus 2 (sigma 2)
  • advfirewall corpus 7 (sigma 6, kusto 1)
  • netsh corpus 9 (sigma 9)
  • show
NewProcessNameends_with
  • \netsh.exe corpus 28 (sigma 28)