Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/sigmahq/sigma-cli
Outils DéfensifsUtilitaires et FrameworksRenseignement sur les MenacesDétection d'IntrusionAnalyse de Journaux
GitHubsigmahq/sigma-cli

sigma-cli

L'interface en ligne de commande Sigma basée sur pySigma

Voir le dépôt
203513il y a 2 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Sigma Command Line Interface

Tests Coverage Badge Status

Il s'agit de l'interface en ligne de commande Sigma utilisant la bibliothèque pySigma pour gérer, lister et convertir des règles Sigma en langages de requête.

Pour commencer

Installation

Le moyen le plus simple d'installer la CLI Sigma est via pipx ou pip. Pour cela, exécutez l'une des commandes suivantes :

root@kitploit:~
python -m pipx install sigma-cli
python -m pip install sigma-cli

sur macOS, utilisez

root@kitploit:~
python3 -m pip install sigma-cli
root@kitploit:~
brew install sigma-cli

Une autre façon est de l'exécuter depuis les sources dans un environnement virtuel géré par Poetry :

Télécharger l’outil
root@kitploit:~
git clone https://github.com/SigmaHQ/sigma-cli.git
cd sigma-cli
poetry install
poetry shell

Utilisation

La CLI est disponible sous la commande sigma. Une invocation typique est :

root@kitploit:~
sigma convert -t <backend> -p <processing pipeline 1> -p <processing pipeline 2> [...] <directory or file>

Par exemple, pour convertir les règles Sigma de création de processus d'un répertoire en requêtes Splunk pour les journaux Sysmon, exécutez :

root@kitploit:~
sigma convert -t splunk -p sysmon sigma/rules/windows/process_creation

Les backends requis doivent être installés à l'aide de la commande suivante avant d'effectuer des conversions.

Pour lister tous les plugins disponibles, exécutez la commande suivante :

root@kitploit:~
sigma plugin list

Installez un plugin de votre choix avec :

root@kitploit:~
sigma plugin install <backend>

Par exemple, pour installer le backend splunk, exécutez :

root@kitploit:~
sigma plugin install splunk

Les backends de conversion et les pipelines de traitement disponibles peuvent être listés avec sigma list. Utilisez -O ou --backend-option pour transmettre des options au backend sous forme de paires clé=valeur (-O testparam=123). Ce paramètre d'option de backend peut être utilisé plusieurs fois (-O first=123 -O second=456).

Les backends peuvent prendre en charge différents formats de sortie, par exemple des requêtes simples et un fichier pouvant être importé dans le système cible. Ces formats peuvent être listés avec sigma list formats <backend> et spécifiés pour la conversion avec l'option -f.

De plus, un fichier de sortie peut être spécifié avec -o.

Exemple de formats et de fichiers de sortie :

root@kitploit:~
sigma convert -t splunk -f savedsearches -p sysmon -o savedsearches.conf sigma/rules/windows/process_creation

Génère un fichier savedsearches.conf Splunk contenant les recherches converties.

Sortie dans des fichiers séparés

Pour les scénarios où vous devez convertir plusieurs règles dans des fichiers séparés (par exemple, pour le contrôle de version ou le déploiement sélectif), utilisez le paramètre --output-dir avec --output-filename-template :

root@kitploit:~
sigma convert -t esql -p ecs_windows --output-dir translated_rules/ rules/

Cela créera un fichier séparé pour chaque règle convertie dans le répertoire translated_rules/.

Variables de modèle :

Le paramètre --output-filename-template accepte les variables suivantes :

  • {path} : Chemin relatif du répertoire source (par exemple, windows pour rules/windows/rule.yml)
  • {stem} : Nom du fichier sans extension (par exemple, rule pour rule.yml)
  • {index} : Index de requête pour les règles qui génèrent plusieurs requêtes (vide s'il n'y a qu'une seule requête)

Exemples :

Structure de sortie plate (tous les fichiers dans un seul répertoire) :

root@kitploit:~
sigma convert -t esql -p ecs_windows --output-dir translated/ --output-filename-template "{stem}.esql" rules/

Préserver la structure des répertoires :

root@kitploit:~
sigma convert -t esql -p ecs_windows --output-dir translated/ --output-filename-template "{path}/{stem}.esql" rules/

Gérer les règles avec plusieurs requêtes :

root@kitploit:~
sigma convert -t esql -p ecs_windows --output-dir translated/ --output-filename-template "{stem}-{index}.esql" rules/

Étant donné la structure d'entrée suivante :

root@kitploit:~
rules/
├── windows/
│   └── rule_1.yml
├── linux/
│   └── rule_2.yml

Avec --output-filename-template "{path}/{stem}.esql", la sortie sera :

root@kitploit:~
translated/
├── windows/
│   └── rule_1.esql
├── linux/
│   └── rule_2.esql

Intégration des backends et des pipelines

Les backends et les pipelines peuvent être intégrés en ajoutant les packages correspondants comme dépendance avec :

root@kitploit:~
poetry add <package name>

Un backend doit être ajouté au dictionnaire backends dans sigma/cli/backends.py en créant un tuple nommé Backend avec les paramètres suivants :

  • La classe du backend.
  • Un nom d'affichage présenté à l'utilisateur dans la liste des cibles (sigma list targets).
  • Un dictionnaire qui associe les noms des formats de sortie (utilisés dans le paramètre -f) aux descriptions des formats affichés dans la liste des formats (sigma list formats <backend>). Les formats doivent être pris en charge par le backend !

La clé du dictionnaire est le nom utilisé dans le paramètre -t.

Un pipeline de traitement est défini dans le dictionnaire de variables pipelines dans sigma/cli/pipelines.py. La variable contient un ProcessingPipelineResolver qui est instancié avec un dictionnaire associant les identifiants pouvant être utilisés dans le paramètre -p aux fonctions qui retournent des objets ProcessingPipeline. Le texte descriptif affiché dans la liste des pipelines (sigma list pipelines) est fourni à partir de l'attribut name de l'objet ProcessingPipeline.

Mainteneurs

Le projet est actuellement maintenu par :

  • Thomas Patzke [email protected]