Zurück zu den Updates
New releaseSep 9, 2026

detection-rules dev-v2.2.0

Entwickeln, validieren und veröffentlichen Sie SIEM-Erkennungsregeln für Elastic Security, mit Python-CLI-Tooling, KQL-Parsing, Kibana-Integration und gebündelten Threat-Hunting-Abfragen.

Teilen

Supported Python versions Unit Tests Chat ATT&CK navigator coverage

Detection Rules

Detection Rules ist die Heimat der Regeln, die von Elastic Security verwendet werden. Dieses Repository wird für die Entwicklung, Pflege, das Testen, die Validierung und die Veröffentlichung von Regeln für die Detection Engine von Elastic Security genutzt.

Dieses Repository wurde erstmals im Blog-Beitrag von Elastic angekündigt: Elastic Security opens public detection rules repo. Zusätzliche Inhalte finden Sie im begleitenden Webinar Elastic Security: Introducing the public repository for detection rules.

Table of Contents

Overview of this repository

Detection Rules enthält mehr als nur statische Regelsatzdateien. Dieses Repository enthält auch Code für den Aufbau von Detections-as-Code-Pipelines, Unit-Tests in Python und die Integration mit der Detection Engine in Kibana.

OrdnerBeschreibung
detection_rules/Python-Modul zum Parsen, Validieren und Paketieren von Regeln
etc/Verschiedene Dateien, wie ECS- und Beats-Schemata sowie Konfigurationsdateien
hunting/Root-Verzeichnis, in dem Threat-Hunting-Pakete und Abfragen gespeichert werden
kibana/Python-Bibliothek für die Behandlung von API-Aufrufen an Kibana und die Detection Engine
kql/Python-Bibliothek zum Parsen und Validieren der Kibana Query Language
rules/Root-Verzeichnis, in dem Regeln gespeichert werden
rules_building_block/Root-Verzeichnis, in dem Building-Block-Regeln gespeichert werden
tests/Python-Code für Unit-Tests der Regeln

Getting started

Auch wenn Regeln durch manuelles Erstellen von .toml-Dateien hinzugefügt werden können, empfehlen wir dies nicht. Dieses Repository enthält außerdem ein Python-Modul, das die Erstellung von Regeln und Unit-Tests unterstützt. Vorausgesetzt, Sie haben Python 3.12+, führen Sie den folgenden Befehl aus, um die Abhängigkeiten mithilfe des Makefiles zu installieren:

✗ make
python3.12 -m pip install --upgrade pip setuptools
Looking in indexes: https://pypi.org/simple
Requirement already satisfied: pip in /opt/homebrew/lib/python3.12/site-packages (24.0)
Requirement already satisfied: setuptools in /opt/homebrew/lib/python3.12/site-packages (69.1.1)
python3.12 -m venv ./env/detection-rules-build
./env/detection-rules-build/bin/pip install --upgrade pip setuptools
Looking in indexes: https://pypi.org/simple
Requirement already satisfied: pip in ./env/detection-rules-build/lib/python3.12/site-packages (24.0)
Collecting setuptools
  Using cached setuptools-69.1.1-py3-none-any.whl.metadata (6.2 kB)
Using cached setuptools-69.1.1-py3-none-any.whl (819 kB)
Installing collected packages: setuptools
Successfully installed setuptools-69.1.1
Installing kql and kibana packages...
...

Oder installieren Sie die Abhängigkeiten mit dem folgenden Befehl:

$ pip3 install ".[dev]"
Collecting jsl==0.2.4
  Downloading jsl-0.2.4.tar.gz (21 kB)
Collecting jsonschema==3.2.0
  Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
     |████████████████████████████████| 56 kB 318 kB/s
Collecting requests==2.22.0
  Downloading requests-2.22.0-py2.py3-none-any.whl (57 kB)
     |████████████████████████████████| 57 kB 1.2 MB/s
Collecting Click==7.0
  Downloading Click-7.0-py2.py3-none-any.whl (81 kB)
     |████████████████████████████████| 81 kB 2.6 MB/s
...

Hinweis: Die Pakete kibana und kql sind nicht auf PyPI verfügbar und müssen aus dem Verzeichnis lib installiert werden. Das Paket hunting hat optionale Abhängigkeiten, die mit pip3 install ".[hunting]" installiert werden.


# Install from the repository
pip3 install git+https://github.com/elastic/detection-rules.git#subdirectory=lib/kibana
pip3 install git+https://github.com/elastic/detection-rules.git#subdirectory=lib/kql

# Or locally for development
pip3 install lib/kibana lib/kql

Denken Sie daran, Ihre virtuelle Umgebung zu aktivieren, falls Sie eine verwenden. Wenn Sie die Installation über make durchgeführt haben, wird die zugehörige virtuelle Umgebung unter env/detection-rules-build/ erstellt. Wenn Sie Probleme mit einer Python-3.12-Umgebung haben, lesen Sie bitte den entsprechenden Abschnitt in unserem Troubleshooting-Leitfaden.

Um zu bestätigen, dass alles ordnungsgemäß installiert wurde, führen Sie den Befehl mit dem Flag --help aus:

$  python -m detection_rules --help

Usage: detection_rules [OPTIONS] COMMAND [ARGS]...

  Commands for detection-rules repository.

Options:
  -D, --debug / -N, --no-debug  Print full exception stacktrace on errors
  -h, --help                    Show this message and exit.

Kategorien