pwnsycybersecurity + privacy community
Runs on your device

Sigma Converter

Paste a Sigma rule or pick one from SigmaHQ and get Splunk SPL, Microsoft Sentinel KQL, Elastic Lucene and Athena or CloudTrail Lake SQL side by side. Every place a backend cannot say exactly what the rule says is named.

Test this rule on logs

What each backend can express

Sigma featureSplunk SPLSentinel KQLElastic LuceneAthena SQL
contains, startswith, endswith, wildcardsYesYesYesYes (LIKE)
? single-character wildcardBecomes *Yes (regex)YesYes (_)
|re regular expressionTop level onlyYes (RE2)Limited syntaxYes
|casedNoYes (_cs)Mapping-dependentYes
|cidrYesYesYes (ip fields)Yes
|fieldrefTop level onlyYesNoYes
Keyword (full-text) listsYesTerm match (has)YesNo
N of selection (N above 1)Broadened to ORBroadened to ORBroadened to ORBroadened to OR

Sigma converter FAQ

How does this compare with pySigma and sigma-cli?

pySigma is the reference converter, with many backends and processing pipelines. This page covers four common targets in the browser for quick conversion and review, and names every place where a backend cannot express the rule exactly. For CI, use sigma-cli with the pipeline for your field names.

Are field names mapped?

For Microsoft Sentinel, CloudTrail fields are mapped to the AWSCloudTrail table and Windows process creation fields to Defender XDR DeviceProcessEvents. Other sources keep the rule's field names, and the output says so. SPL, Lucene and SQL keep the rule's field names.

Why is a backend marked as unable to convert?

Some Sigma features have no equivalent. Lucene cannot compare two fields, SQL has no full-text keyword search, and SPL cannot put a regex inside an OR in a single search. The page refuses rather than writing a query that means something different.

Is case sensitivity preserved?

Sigma matches case-insensitively by default. KQL uses =~, contains and in~, SQL lowercases both sides, and SPL search is case-insensitive already. Elastic keyword fields are case-sensitive unless the index normalises them, so the Lucene output carries a note.

Conversions follow the default query shape of the pySigma backends for each target, without vendor processing pipelines beyond the two Sentinel table maps. Check the output against your own schema before you schedule it. SigmaHQ rules are fetched live under the Detection Rule License 1.1.

Copied