Voltar às atualizações
New releaseSep 9, 2026

detection-rules dev-v2.2.0

Desenvolva, valide e publique regras de detecção SIEM para o Elastic Security, com ferramentas de CLI em Python, análise de KQL, integração com Kibana e consultas de threat hunting empacotadas.

Compartilhar

Supported Python versions Unit Tests Chat ATT&CK navigator coverage

Detection Rules

Detection Rules é o lar das regras usadas pelo Elastic Security. Este repositório é usado para o desenvolvimento, manutenção, testes, validação e lançamento de regras para o Detection Engine do Elastic Security.

Este repositório foi anunciado pela primeira vez no blog da Elastic, Elastic Security abre repositório público de regras de detecção. Para conteúdo adicional, consulte o webinar complementar, Elastic Security: apresentando o repositório público para regras de detecção.

Índice

Visão geral deste repositório

Detection Rules contém mais do que apenas arquivos de regras estáticos. Este repositório também contém código para construir pipelines de detecções como código, testes unitários em Python e integração com o Detection Engine no Kibana.

pastadescrição
detection_rules/Módulo Python para análise, validação e empacotamento de regras
etc/Arquivos diversos, como esquemas e arquivos de configuração do ECS e Beats
hunting/Diretório raiz onde o pacote e as consultas de threat hunting são armazenados
kibana/Biblioteca Python para lidar com chamadas de API para o Kibana e o Detection Engine
kql/Biblioteca Python para analisar e validar a Kibana Query Language
rules/Diretório raiz onde as regras são armazenadas
rules_building_block/Diretório raiz onde as regras de building block são armazenadas
tests/Código Python para testes unitários das regras

Começando

Embora as regras possam ser adicionadas criando manualmente arquivos .toml, não recomendamos isso. Este repositório também consiste em um módulo Python que auxilia na criação de regras e nos testes unitários. Supondo que você tenha Python 3.12+, execute o comando abaixo para instalar as dependências usando o makefile:

✗ 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...
...

Ou instale as dependências usando o seguinte comando:

$ 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
...

Observação: os pacotes kibana e kql não estão disponíveis no PyPI e devem ser instalados a partir do diretório lib. O pacote hunting tem dependências opcionais a serem instaladas com pip3 install ".[hunting]".


# Instale a partir do repositório
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

# Ou localmente para desenvolvimento
pip3 install lib/kibana lib/kql

Lembre-se de ativar seu ambiente virtual, se estiver usando um. Se instalado via make, o ambiente virtual associado é criado em env/detection-rules-build/. Se você estiver tendo problemas com um ambiente Python 3.12, consulte a seção relevante no nosso guia de solução de problemas.

Para confirmar se tudo foi instalado corretamente, execute com a flag --help

$  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.

Categorias