Last updated: April 26, 2026
Sigma is to detection rules what YAML is to configuration — a vendor-neutral format that compiles to specific SIEM query languages. Splunk SPL, Elastic EQL, Microsoft Sentinel KQL, Chronicle, Sumo Logic, Wazuh — all consume Sigma rules via converters. This article covers writing Sigma, the public rule repositories worth using, and the pragmatic deployment workflow for a multi-vendor SIEM environment.
The motivation
Detection rules used to be vendor-locked. A Splunk rule wouldn’t run on Sentinel without rewriting. As organisations adopt multiple SIEM tools — primary SIEM + cloud-native logs + EDR-bundled SIEM — rule duplication explodes. Sigma solves this by separating logical detection from query syntax.
Sigma rule structure
title: PowerShell Encoded Command Execution
id: 5d6a1b6e-...
status: experimental
description: Detects PowerShell execution with encoded command (-enc / -EncodedCommand)
references:
- https://attack.mitre.org/techniques/T1059/001/
author: Author Name
date: 2026/04/26
tags:
- attack.execution
- attack.t1059.001
logsource:
category: process_creation
product: windows
detection:
selection:
Image|endswith: '\powershell.exe'
CommandLine|contains:
- ' -enc '
- ' -EncodedCommand '
- ' -e '
filter:
User: 'NT AUTHORITY\SYSTEM'
condition: selection and not filter
falsepositives:
- Legitimate admin scripts that use encoded commands
level: medium
Key fields: logsource identifies the data source; detection contains selection/filter logic; condition combines them.
Public rule repositories
- SigmaHQ/sigma — official MITRE-aligned community rules. ~3000 rules covering most ATT&CK techniques.
- Florian Roth’s rules (Neo23x0) — high-quality, often the source for SigmaHQ.
- Joe Security / mthcht / others — vendor-specific Sigma collections (cloud, AWS, M365).
- Velociraptor artifact library — Sigma compatible for endpoint hunting.
Start with SigmaHQ; add specific vendor packs as needed.
Conversion workflow
# Install pySigma + backend
pip install pysigma pysigma-backend-splunk pysigma-backend-elasticsearch
# Convert single rule to Splunk SPL
sigma convert -t splunk rule.yml
# Convert directory recursively
sigma convert -t splunk -O cluster_blocks rules/ > splunk-rules.txt
# For Elastic EQL:
sigma convert -t elasticsearch rule.yml
Output is the SIEM-native query that you import into your platform.
Deployment pattern
- Curate. Don’t import every public rule — false-positive volume kills SOC capacity. Pick rules relevant to your environment and ATT&CK priorities.
- Tune in audit mode. Deploy as alerting-disabled / informational level for 30 days. Observe false-positive rate.
- Tune logic. Adjust selection/filter to your environment’s known-good patterns.
- Promote to alerting. Set severity, response runbook, on-call rotation.
- Validate. Run Atomic Red Team simulation; confirm rule fires on the technique.
- Maintain. Quarterly review: rules with no fires in 90 days — does the technique no longer apply, or is the rule broken?
Authoring custom rules
For environment-specific detections (your organisation’s app names, internal IP ranges, custom processes):
- Start from a similar SigmaHQ rule.
- Adjust
logsourceto your data source. - Customise
selectionfor your environment’s specifics. - Add
filterblocks for known-good patterns. - Test conversion to your SIEM and validate via simulation.
- Contribute back to community where the rule is generic.
Compliance angle
- SEBI CSCRF — detection-rule library expectation. Sigma is the de-facto vendor-neutral format.
- NIST 800-53 IR-4 — detection capability evidence.
- ISO 27001:2022 A.8.16 — monitoring activities.
The takeaway
Sigma turns detection-engineering from a vendor-specific scripting exercise into a portable, version-controlled, peer-reviewable practice. Every modern SOC should have a Sigma rule library in version control, tied to the ATT&CK matrix, with simulation evidence per rule. The investment in this discipline compounds — as your SIEM stack changes, your detection logic doesn’t have to.
Get a free attack-surface review
We check what an attacker would see about your business — leaked credentials, exposed services, dark-web mentions. 30 minutes, no obligation.