Sigma: standard aperto per regole di detection SIEM

Sigma (2017) di Florian Roth e Thomas Patzke: formato YAML generico per regole di detection, traducibile verso Splunk, Elastic, QRadar, Sentinel, Chronicle. Mapping ATT&CK, logsource taxonomy, licenza MIT + DRL 1.1.

Cyber SecurityOpen Source SigmaDetection EngineeringSIEMATT&CKCyber SecurityOpen Source

Il problema delle regole SIEM proprietarie

Ogni SIEM parla una lingua diversa: Splunk SPL, Elastic DSL, IBM QRadar AQL, Microsoft Sentinel KQL, Google Chronicle YARA-L. Le regole di detection scritte per un vendor non sono portabili, e la community della detection engineering si ritrova a riscrivere la stessa logica più volte.

Nel 2017 Florian Roth (Nextron Systems) e Thomas Patzke pubblicano Sigma: un formato YAML generico per descrivere regole di detection, con backend di traduzione verso i motori di ricerca dei SIEM commerciali.

Le prime release pubbliche su GitHub risalgono al luglio 2017. Il progetto è distribuito sotto licenza MIT per il codice e Detection Rule License (DRL) 1.1 per le regole, in modo da garantirne libera redistribuzione anche in contesti commerciali.

Struttura di una regola

Una regola Sigma ha sezioni definite:

  • title, id (UUID), status (experimental/test/stable), description
  • references, author, date, modified
  • logsource — categoria standardizzata (es. product: windows, service: security, category: process_creation)
  • detection — selezione con campi logici (selection, filter, condition)
  • fields, falsepositives, level (informational/low/medium/high/critical)
  • tags — tipicamente mapping MITRE ATT&CK (attack.t1055, attack.defense_evasion)

La logica di matching è dichiarativa: il backend traduce selection e condition nella sintassi nativa del SIEM target.

Il convertitore: sigmac e pySigma

Il tool originale sigmac (Python) legge una regola YAML e produce query per il backend specificato:

sigmac -t splunk -c splunk-windows rule.yml

Dal 2021 il progetto introduce pySigma, libreria moderna con plugin per backend (Splunk, Elastic, QRadar, Sentinel, Chronicle, Carbon Black, CrowdStrike), pipeline di processing e supporto a field mapping personalizzati.

SigmaHQ e repository community

Il repository principale SigmaHQ/sigma su GitHub contiene migliaia di regole pubbliche curate, organizzate per logsource (Windows, Linux, macOS, cloud, network, application). Ogni regola include metadati di qualità, livello di rischio, riferimenti pubblici (blog post, threat reports).

L’organizzazione SigmaHQ coordina mantenimento, review e rilasci.

Logsource taxonomy

La logsource taxonomy è il contratto tra autore della regola e chi la implementa: definisce nomi di campi normalizzati (es. Image, CommandLine, ParentImage per Sysmon event 1). Le pipeline di pySigma traducono questi campi nei nomi effettivi usati dal SIEM target (es. process.executable in ECS, New_Process_Name in EventLog nativo).

Integrazione ATT&CK

Sigma è stato tra i primi progetti di detection engineering a mappare sistematicamente ogni regola a tecniche MITRE ATT&CK. Questo permette copertura misurabile: dato un insieme di regole, è possibile calcolare quali tecniche sono coperte e quali no (ATT&CK Navigator layer).

Adozione e tooling

  • Elastic, Splunk, Microsoft Sentinel, Chronicle — supporto ufficiale o via plugin community
  • Uncoder.io (SOC Prime) — convertitore online multi-backend
  • ThreatHunter Playbook, HELK, Security Onion — regole Sigma pre-caricate
  • CI/CD per detection as code — test, linting, packaging regole nelle pipeline

Nel contesto italiano

Sigma è utilizzato in:

  • CSIRT nazionali e regionali — condivisione regole senza lock-in SIEM
  • MSSP italiani — cataloghi di detection multi-tenant
  • Aziende con cambio di SIEM — migrazione regole senza riscrittura
  • Università — didattica detection engineering

Sigma ha reso possibile un ecosistema SIEM-agnostico di detection content, allineato ad ATT&CK e gestibile come codice.


Riferimenti: Sigma, autori Florian Roth e Thomas Patzke, prime release pubbliche 2017. Organizzazione SigmaHQ. Licenza MIT (codice) + DRL 1.1 (regole). Backend: Splunk SPL, Elastic DSL, QRadar AQL, Sentinel KQL, Chronicle YARA-L. Sito: https://sigmahq.io.

Vuoi supporto? Sei sotto attacco? Stato dei servizi
Vuoi supporto? Sei sotto attacco? Stato dei servizi