Building Detection Rules With Sigma
Overview
Cybersecurity skill for building detection rules with sigma. Follows industry best practices and security standards.
When to Use
Trigger phrases:
- "building detection rules with sigma"
- "SOC engineers need to create detection rules portable across multiple SIEM platf"
- "Threat intelligence reports describe TTPs requiring new detection coverage"
- "Existing vendor-specific rules need standardization into a shareable format"
Use this skill when:
- SOC engineers need to create detection rules portable across multiple SIEM platforms
- Threat intelligence reports describe TTPs requiring new detection coverage
- Existing vendor-specific rules need standardization into a shareable format
- The team adopts Sigma as a detection-as-code standard in CI/CD pipelines
Do not use for real-time streaming detection (Sigma is for batch/scheduled searches) or when the target SIEM has native detection features that Sigma cannot express (e.g., Splunk RBA risk scoring).
When NOT to Use
- When you lack proper authorization for testing
- For production systems without change management
- When the task requires legal or compliance expertise beyond technical scope
Prerequisites
- Python 3.8+ with
pySigmaand appropriate backend (pySigma-backend-splunk,pySigma-backend-elasticsearch,pySigma-backend-microsoft365defender) - Sigma rule repository cloned:
git clone https://github.com/SigmaHQ/sigma.git - MITRE ATT&CK framework knowledge for technique mapping
- Understanding of target SIEM log source field mappings
Workflow
# Example: IOC detection
import re
IOC_PATTERNS = {
"ip": r"\b(?:\d{1,3}\.){3}\d{1,3}\b",
"domain": r"\b[a-z0-9-]+\.[a-z]{2,}\b",
"hash_md5": r"\b[a-f0-9]{32}\b",
"hash_sha256": r"\b[a-f0-9]{64}\b",
}
def extract_iocs(text: str) -> dict:
return {k: re.findall(v, text) for k, v in IOC_PATTERNS.items()}
- Assess Requirements — Evaluate current environment and define detection rules implementation requirements.
- Design Architecture — Plan the detection rules architecture, including components, integrations, and data flows.
- Configure Components — Set up sigma for detection rules according to vendor best practices and security guidelines.
- Test Integration — Validate that all components work together. Run functional and security tests.
- Deploy to Production — Roll out the implementation with monitoring and rollback capabilities.
- Validate and Document — Verify the implementation meets requirements. Document configuration and runbooks.
Tools
- sigma — Primary tool for this skill
- Configuration Management — Infrastructure as code and automation
- Monitoring Stack — Observability and alerting
- Documentation Platform — Runbooks and architecture docs
Process
- Reconnaissance — Gather target information, identify attack surface, enumerate services
- Analysis/Exploitation — Execute the technique, analyze results, document findings
- Reporting — Document IOCs, write findings, provide remediation recommendations
Verification
- All detection rules procedures executed completely and documented
- Findings validated against multiple data sources
- False positives identified and filtered
- Results documented with evidence and timestamps
- Recommendations provided with risk-based prioritization
Anti-Rationalization Table
| Rationalization | Reality |
|---|---|
| "We are too small to be targeted" | Automated attacks target everyone. Size does not matter. |
| "Security slows us down" | A breach slows you down 100x more. Build security in from the start. |
| "We will fix it after launch" | Vulnerabilities in production are exploited within hours. Fix before deploy. |