Packet capture utility executed on a Windows host
Matches process creation of the capture engines and built-in tracing tools that put a Windows NIC into capture mode — the ToolNames half of AN0875, populated here with the Wireshark suite, the WinPcap/Npcap command-line ports, NirSoft's sniffer, Microsoft Network Monitor's collector, pktmon and a netsh packet capture. The netsh leg requires capture=yes alongside trace start, because netsh trace start on its own starts an ETW scenario trace and captures no packets — that form is Microsoft's standard troubleshooting step, not this technique. The capture engine is selected rather than the GUI on purpose: wireshark.exe never touches the adapter itself, it spawns dumpcap.exe, so a selector on the GUI name would miss every capture started from a script or from tshark. The brief maps Security EventID 4688 onto Sigma's process_creation category, which is Sysmon-shaped; this rule is written in that vocabulary (Image, CommandLine), so a Sysmon EventID 1 feed matches directly while a 4688 feed needs NewProcessName mapped onto Image first, plus Audit Process Creation enabled and the separate "Include command line in process creation events" policy before the netsh selection can ever match. AN0875's other leg — the capture driver arriving as a service install, System EventID 7045 — is a different log source and cannot be joined into one Sigma rule. A renamed binary, or a tool that links a capture library statically instead of shelling out, produces no match here at all. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0314, 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
title: Packet capture utility executed on a Windows hostid: d44dd7fd-773c-405a-92b0-800d8710d77dstatus: experimentaldescription: | Matches process creation of the capture engines and built-in tracing tools that put a Windows NIC into capture mode — the ToolNames half of AN0875, populated here with the Wireshark suite, the WinPcap/Npcap command-line ports, NirSoft's sniffer, Microsoft Network Monitor's collector, pktmon and a netsh packet capture. The netsh leg requires capture=yes alongside trace start, because netsh trace start on its own starts an ETW scenario trace and captures no packets — that form is Microsoft's standard troubleshooting step, not this technique. The capture engine is selected rather than the GUI on purpose: wireshark.exe never touches the adapter itself, it spawns dumpcap.exe, so a selector on the GUI name would miss every capture started from a script or from tshark. The brief maps Security EventID 4688 onto Sigma's process_creation category, which is Sysmon-shaped; this rule is written in that vocabulary (Image, CommandLine), so a Sysmon EventID 1 feed matches directly while a 4688 feed needs NewProcessName mapped onto Image first, plus Audit Process Creation enabled and the separate "Include command line in process creation events" policy before the netsh selection can ever match. AN0875's other leg — the capture driver arriving as a service install, System EventID 7045 — is a different log source and cannot be joined into one Sigma rule. A renamed binary, or a tool that links a capture library statically instead of shelling out, produces no match here at all. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0314, not hand-written and not tested by its author. Any lab result is on this rule's own page.references: - https://attack.mitre.org/techniques/T1040 - https://attack.mitre.org/detectionstrategies/DET0314author: Siemphony pipeline (machine-derived from MITRE ATT&CK v19.2)date: 2026-08-16tags: - attack.credential-access - attack.discovery - attack.t1040logsource: category: process_creation product: windowsdetection: selection_capture_tool: Image|endswith: - '\dumpcap.exe' - '\tshark.exe' - '\rawshark.exe' - '\windump.exe' - '\tcpdump.exe' - '\rawcap.exe' - '\netcap.exe' - '\nmcap.exe' - '\smsniff.exe' - '\pktmon.exe' selection_netsh_trace: Image|endswith: '\netsh.exe' CommandLine|contains|all: - 'trace start' - 'capture=yes' condition: 1 of selection*falsepositives: - "Network and desktop engineers troubleshooting with Wireshark, which spawns dumpcap.exe for every capture. On the subset of hosts where the suite is installed this is the dominant volume the rule produces, and MITRE's ToolNames knob is better used to scope the rule by host than to drop tools from the list." - "Microsoft's own diagnostics, where netsh trace start capture=yes and pktmon.exe are the standard collection steps in the log-gathering scripts that Microsoft and third-party vendors hand to customers during a support case." - "Monitoring, VoIP call-quality and application-performance agents that bundle dumpcap or tshark and run scheduled or triggered captures on servers, producing a regular per-host rhythm from a fixed parent process." - "Lab, imaging and CI test harnesses that run windump.exe or tcpdump.exe to assert on network behaviour as part of an automated build or acceptance run."level: mediumSentinel · KQL
Run this as a search.
DeviceProcessEvents| where ((FolderPath endswith "\\dumpcap.exe" or FolderPath endswith "\\tshark.exe" or FolderPath endswith "\\rawshark.exe" or FolderPath endswith "\\windump.exe" or FolderPath endswith "\\tcpdump.exe" or FolderPath endswith "\\rawcap.exe" or FolderPath endswith "\\netcap.exe" or FolderPath endswith "\\nmcap.exe" or FolderPath endswith "\\smsniff.exe" or FolderPath endswith "\\pktmon.exe") or (FolderPath endswith "\\netsh.exe" and (ProcessCommandLine contains "trace start" and ProcessCommandLine contains "capture=yes")))
Splunk · SPL
Run this as a search.
index=* ((Image="*\\dumpcap.exe" OR Image="*\\tshark.exe" OR Image="*\\rawshark.exe" OR Image="*\\windump.exe" OR Image="*\\tcpdump.exe" OR Image="*\\rawcap.exe" OR Image="*\\netcap.exe" OR Image="*\\nmcap.exe" OR Image="*\\smsniff.exe" OR Image="*\\pktmon.exe") OR (Image="*\\netsh.exe" AND (CommandLine="*trace start*" AND CommandLine="*capture=yes*")))Elastic · ES|QL
Run this as a search.
FROM logs-*| WHERE ((TO_LOWER(process.executable) LIKE "*\\\\dumpcap.exe" OR TO_LOWER(process.executable) LIKE "*\\\\tshark.exe" OR TO_LOWER(process.executable) LIKE "*\\\\rawshark.exe" OR TO_LOWER(process.executable) LIKE "*\\\\windump.exe" OR TO_LOWER(process.executable) LIKE "*\\\\tcpdump.exe" OR TO_LOWER(process.executable) LIKE "*\\\\rawcap.exe" OR TO_LOWER(process.executable) LIKE "*\\\\netcap.exe" OR TO_LOWER(process.executable) LIKE "*\\\\nmcap.exe" OR TO_LOWER(process.executable) LIKE "*\\\\smsniff.exe" OR TO_LOWER(process.executable) LIKE "*\\\\pktmon.exe") OR (TO_LOWER(process.executable) LIKE "*\\\\netsh.exe" AND (TO_LOWER(process.command_line) LIKE "*trace start*" AND TO_LOWER(process.command_line) LIKE "*capture=yes*")))
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. --> <!-- 2 rules: the Sigma condition ORs across different fields, which one rule cannot express. Any one matching is a hit. --> <rule id="100000" level="7"> <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. --> <field name="Image" type="pcre2">(?i)(\\dumpcap\.exe$|\\tshark\.exe$|\\rawshark\.exe$|\\windump\.exe$|\\tcpdump\.exe$|\\rawcap\.exe$|\\netcap\.exe$|\\nmcap\.exe$|\\smsniff\.exe$|\\pktmon\.exe$)</field> <description>Packet capture utility executed on a Windows host (1/2)</description> <mitre> <id>T1040</id> </mitre> </rule> <rule id="100001" level="7"> <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. --> <field name="Image" type="pcre2">(?i)\\netsh\.exe$</field> <field name="CommandLine" type="pcre2">(?i)(?=.*(?:trace start))(?=.*(?:capture=yes)).*</field> <description>Packet capture utility executed on a Windows host (2/2)</description> <mitre> <id>T1040</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.