agentic/code/frameworks/forensics-complete/skills/sigma-hunting/SKILL.md
Apply Sigma rules against log sources for threat hunting; convert rules to Elasticsearch, Splunk, and grep queries
npx skillsauth add jmagly/aiwg sigma-huntingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Applies Sigma detection rules against collected log sources to identify threat activity. Supports the bundled forensics-complete Sigma rule library and custom rules. Converts Sigma rules to backend-specific queries for Elasticsearch, Splunk, and grep, enabling hunting across both real-time platforms and offline log files.
Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):
Sigma provides a vendor-neutral rule format for expressing detection logic. Writing backend-specific queries for every log source and SIEM is time-consuming and error-prone. This skill translates Sigma rules to the appropriate query format for the available tooling, applies them against collected logs, and reports matches with ATT&CK technique context.
When triggered, this skill:
Identify available rule sources:
agentic/code/frameworks/forensics-complete/sigma/.aiwg/forensics/sigma/custom/sigma --version 2>/dev/nullIdentify target log sources and backends:
logsource categories to available sources:
category: process_creation → syslog, auditd logs, or EDR telemetrycategory: network_connection → firewall logs, VPC flow logs, Zeek conn.logcategory: webserver → nginx/Apache access logsproduct: linux → auth.log, syslog, journalproduct: windows → Windows Event Log exports (.evtx or JSON)Select applicable rules:
logsource compatibility with available sourcestags: attack.t1059*medium, high, critical rules onlyConvert rules to grep (offline log files):
selection keywords to extended grep patterns:
grep -Ei 'pattern1|pattern2' /var/log/auth.log
condition: selection and not filter by piping through a second grep with -vConvert rules via sigma-cli (when available):
sigma convert -t elasticsearch -f lucene rules/sigma/linux/ > hunt-queries.txt
sigma convert -t splunk rules/sigma/linux/ > hunt-spl.txt
Execute hunts and collect matches:
Triage matches:
ioc-extraction skillApply custom rules:
.yml files from .aiwg/forensics/sigma/custom/Write hunt report:
.aiwg/forensics/findings/<hostname>-sigma-hunt.mdsigma hunt
hunt for T1078
sigma rules --backend elasticsearch --output hunt-queries.txt
.aiwg/forensics/findings/<hostname>-sigma-hunt.md.aiwg/forensics/sigma/converted/.aiwg/forensics/evidence/sigma-hits.txtsigma_hunting:
bundled_rules_path: agentic/code/frameworks/forensics-complete/sigma/
custom_rules_path: .aiwg/forensics/sigma/custom/
default_severity_filter:
- medium
- high
- critical
default_backend: grep
available_backends:
- grep
- elasticsearch
- splunk
sigma_cli_path: sigma
data-ai
Report which research-corpus radar sidecars are overdue for refresh. Computes staleness (days since last refresh vs the cadence window) for every radar, sorted most-overdue-first. Runs via `aiwg corpus radar-status`.
data-ai
Aggregate research-corpus radar sidecars into a corpus or per-cluster freshness report — totals, overdue count, per-cluster / per-GRADE / per-trajectory breakdowns, an overdue table, and per-radar rationale snippets. Runs via `aiwg corpus radar-report`.
testing
Scaffold radar/freshness sidecars for research-corpus REFs. Pulls title/authors from the citation sidecar and GRADE from the analysis doc, defaults the refresh cadence from GRADE and the cluster from a corpus-local map, and stamps documentation/radar/REF-XXX-radar.md. Runs via `aiwg corpus radar-init`.
data-ai
Compute an entity's publication trajectory — per-year paper counts, topic drift, hot-streak detection (≥3 consecutive A-grade years), and career phase. Runs via `aiwg corpus profile-temporal`.