——
ReferenceTOOLS

Sigma: portable detections still need local proof

Write behaviour-focused rules with complete metadata, then validate field mapping and generated queries on the real target platform.

For detection engineers sharing logic across SIEM and analytics products.

SigmaDetectionSIEM

Start with the situation, not the slogan

A security tool should begin with a question. Sigma: portable detections still need local proof is presented here as a method for collecting or testing evidence, not as a substitute for an analyst. Decide what fact would change the next decision, then choose the smallest data set and safest operation that can establish that fact.

Tools are confident even when their inputs are incomplete. They will print a result in a reassuringly technical font and leave uncertainty as an exercise for the operator. Record scope, version, configuration, time and source data so the output can be interpreted, repeated and challenged.

Sigma standardises rule expression and metadata, but each backend has different fields, functions, performance, and data quality. Portability is a starting point, not guaranteed equivalence.

How this usually reaches the desk

Suppose the immediate question is raised by this clue: Rule log source and fields exist in the target environment with the assumed meaning. Before opening the tool, write the possible explanations and the field or observation that would distinguish them. Collect a known-good comparison where possible. This prevents a colourful result from becoming a conclusion simply because it arrived first.

This scenario combines common operational patterns; it is not presented as a report of one named incident.

What to look for

Begin with preserved, comparable evidence. One signal is rarely proof; use independent observations and a reliable timeline before declaring scope or intent.

01

Rule log source and fields exist in the target environment with the assumed meaning.

Identify which input creates this observation and whether collection can alter the system. Prefer read-only or passive acquisition when the question permits it.

02

Positive, negative, and edge-case test events travel with the rule.

Check time zone, host, identity, interface and data provenance. A precise result attached to the wrong source remains wrong, only with better punctuation.

03

Generated queries are reviewed for field mapping, escaping, case, time, and performance.

Compare the output with baseline and independent evidence. A match, alert or open port is a lead whose meaning depends on asset purpose, exposure and surrounding activity.

Run it, read it, decide what changes

These examples use documentation addresses, test identities and bounded targets. Replace placeholders only inside systems you own or are explicitly authorised to operate. Read the expected result and next action before running the command; a successful command is evidence, not yet a conclusion.

Example 01

Write a minimal process-creation Sigma rule

SigmaText editor
Prerequisites
A lab data source that records process command lines.
yaml
title: NMF Test Encoded PowerShell
id: 8af15986-a0ad-4b12-bede-000000000001
status: test
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    Image|endswith: '\powershell.exe'
    CommandLine|contains: 'NMF_TEST_ENCODED'
  condition: selection
falsepositives:
  - Approved detection exercise
level: medium
Expected result

A valid Sigma document describes the log source, selection and explicit test marker.

How to interpret it

The rule is portable logic, not a guarantee that your SIEM has the necessary fields or backend mapping.

Next action

Validate syntax, convert for the actual backend, and generate only the harmless marker in an isolated lab.

Example 02

Validate and convert the rule

Sigma CLIPython environment
Prerequisites
Sigma CLI and the appropriate backend plugin installed.
shell
sigma check nmf-test.yml
sigma convert -t splunk nmf-test.yml
Expected result

The first command reports syntax problems; the second prints a backend query when the Splunk plugin is available.

How to interpret it

A successful conversion does not prove the query matches your field mapping or data retention.

Next action

Run the query against a known event, document field differences, and keep the converted query tied to the source rule version.

Example 03

Create a harmless matching event

PowerShellIsolated Windows lab
Prerequisites
Process creation telemetry such as Sysmon Event ID 1.
powershell
powershell.exe -NoProfile -Command "Write-Output NMF_TEST_ENCODED"
Expected result

The process exits normally after printing the marker; process telemetry should contain the command line.

How to interpret it

If the rule does not match, inspect collection and field mapping before weakening the detection.

Next action

Confirm one positive and one negative event, measure delay, and remove the test marker from operational dashboards.

A practical workflow

Read the whole sequence before starting. Several workstreams may run in parallel, but their evidence, authority and expected outcomes still need to be explicit. Every step below points back to a concrete example; use the example as implementation evidence, not as permission to operate outside the stated scope.

  1. 01

    Begin with behaviour and telemetry, not an ATT&CK technique or copied rule title.

    State the question, authority and boundary before running the tool. Include exclusions and any rate, privacy or availability constraint.

    Working example 01: Write a minimal process-creation Sigma rule — Sigma on Text editor.

  2. 02

    Write the smallest selection that works on versioned test events.

    Verify the input and a known test case. If the tool cannot produce the expected result from controlled evidence, do not trust its silence elsewhere.

    Working example 02: Validate and convert the rule — Sigma CLI on Python environment.

  3. 03

    Add stable ID, status, dates, references, tags, false positives, and author ownership.

    Run the narrowest useful query or collection first and preserve raw output. Add filters and transformations as separate, documented steps.

    Working example 03: Create a harmless matching event — PowerShell on Isolated Windows lab.

  4. 04

    Convert to the target backend and inspect the generated query before execution.

    Interpret the result with asset, user and business context. Record alternate explanations and the evidence needed to rule them in or out.

    Working example 01: Write a minimal process-creation Sigma rule — Sigma on Text editor.

  5. 05

    Measure matches, misses, cost, and triage value; record product-specific changes beside the rule.

    Turn a useful one-off result into a repeatable query, rule or runbook with an owner, review date, retention decision and failure signal.

    Working example 02: Validate and convert the rule — Sigma CLI on Python environment.

Operational judgement

Operational cost belongs in the design. For Sigma, Detection and SIEM, estimate collection volume, storage, query time, analyst attention and the impact of credentials used by the tool. A detection that nobody can review is not free; it has simply moved its bill to the incident queue.

Preserve provenance through every transformation. Keep original evidence immutable, note tool and rule versions, and store the exact query or configuration with the result. This is equally useful for incident review, false-positive tuning and the humbling moment when yesterday’s clever filter turns out to have excluded the answer.

Make the result useful to the next person

Package the useful workflow, not merely the output. Store the question, authority, input source, collection method, tool and rule version, query, time zone, raw result, interpretation and known blind spots. Separate immutable source material from filtered or enriched copies. If the result contains credentials, personal data or confidential content, apply access and retention controls before pasting it into a ticket where it may enjoy a longer life than the system itself.

The operational handover should show how “Begin with behaviour and telemetry, not an ATT&CK technique or copied rule title.” leads to a repeatable decision and how the team verifies “Measure matches, misses, cost, and triage value; record product-specific changes beside the rule.” Add a known test event and an alert for collection failure. State which changes in product version, schema, environment or threat behaviour require review. The result is ready when another authorised analyst can reproduce it, understand its limitations and obtain the same conclusion without borrowing the original operator’s intuition.

Validate before you close

A rule is production-ready only when local data proves the intended match, exclusions are evidence-based, and an analyst can act on the alert.

Capture the test, the expected result and the observed result. Where a person or business owner must accept restored service, name them in the record. A green dashboard can confirm that a component is answering; it cannot confirm that invoices, identities or restored data are trustworthy.

Finish with a compact closure note: the original trigger, confirmed scope, evidence retained, controls changed, tests passed, known gaps, residual risk, and the people responsible for the remaining work. Schedule a review while the timeline is still fresh enough to challenge. The purpose is not to find a person to blame; computers already perform blame with admirable efficiency. The purpose is to make the next response faster, safer and less dependent on one person remembering where the useful log was hidden.

Common mistakes

  • Starting with a tool before writing down the question you need to answer.
  • Collecting more data than the team can protect, retain, and review.
  • Treating an alert or match as a conclusion instead of a lead that needs context.

These errors usually come from haste, unclear ownership or misplaced confidence. Build the safeguard into the runbook: a required evidence field, a second-person review, a rollback test or a specific exit criterion.

Questions people ask when the clock is running

Does a match prove malicious activity?

No. It proves that the input satisfied the rule or query. Confirm provenance, context and related behaviour before assigning intent or impact.

How much data should we collect?

Enough to answer the written question and support likely follow-up, subject to privacy, retention and operational limits. More data is not automatically more truth; it is often more storage with a search box.

What makes the workflow production-ready?

A rule is production-ready only when local data proves the intended match, exclusions are evidence-based, and an analyst can act on the alert. Add ownership, monitoring for collection failure, access control and a documented review cadence.

Safety boundary

Use these steps only on systems you own or are explicitly authorised to assess. Preserve evidence, follow your organisation’s legal and regulatory obligations, and prefer reversible actions when the situation is not yet understood.

Primary references

  1. Sigma Rule SpecificationSigmaHQ
  2. MITRE ATT&CK Enterprise MatrixMITRE

Editorial status: first edition. Review the linked vendor documentation for product- and version-specific changes before acting.