Je eerste Sigma-regel schrijven

· Detecties · 2 min

Je eerste Sigma-regel schrijven

Sigma is voor logdetecties wat YARA is voor bestanden: een generieke, leveranciersonafhankelijke manier om te beschrijven wat je wilt detecteren, die je daarna omzet naar de querytaal die je SIEM echt spreekt.

Waarom een portable formaat?

Detecties die direct in één querytaal zijn geschreven, zitten daar voor altijd aan vast. Met Sigma schrijf je één keer en compileer je naar meerdere backends:

  • Eén regel, meerdere doelen (Splunk, Elastic, Sentinel, …)
  • Reviewbaar in pull requests zoals alle andere code
  • Deelbaar met de community zonder je stack te lekken

Een detectie die je niet kunt testen, versioneren en reviewen is een risico, geen bezit.

Anatomie van een regel

De kern van elke regel is een detection-blok met één of meer selections en een condition die ze combineert:

title: Suspicious whoami Execution After Service Install
status: experimental
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    Image|endswith: '\whoami.exe'
    ParentImage|endswith: '\services.exe'
  condition: selection
level: medium

Veld-referentie

De modifiers achter de pipe (|) bepalen hoe een waarde wordt vergeleken:

ModifierMatchtVoorbeeld
endswithachtervoegsel van het veldImage|endswith
containssubstring ergens in de waardeCommandLine|contains
reeen reguliere expressieCommandLine|re
allelke waarde in een lijstCommandLine|contains|all

Zodra de regel netjes compileert en afgaat op een bekende kwaadaardige sample, commit hem. De goedkoopste detectie is degene die je nooit om 3 uur ’s nachts in productie hoefde te debuggen.