Requêtes
Cheatsheet de la syntaxe Splunk SPL (Search Processing Language) : requêtes de base, transformations (stats, eval, rex), gestion du temps, et patterns utiles en threat hunting.
🎯 Requêtes de Base
Recherche Simple
index=[nom_index] "terme spécifique"
Recherche dans une Plage de Temps
index=[nom_index] earliest=-1h latest=now "terme spécifique"
-1h pour la dernière heure, now pour le moment actuel.
Utiliser les Jokers
index=[nom_index] source="*chemin/fichier*log"
📜Filtrage et Sélection
Filtrer par Champ
index=[nom_index] [champ]=[valeur]
Utiliser AND, OR, NOT
index=[nom_index] (erreur OR échec) AND utilisateurs="John Doe" NOT source="/var/log/syslog"
💹 Commandes Statistiques et Agrégation
Compter les Occurrences
index=[nom_index] | stats count
Compter par Catégorie
index=[nom_index] | stats count by [champ]
Trouver des Valeurs Uniques
index=[nom_index] | dedup [champ]
Calculs Statistiques (Moyenne, Max, Min, etc.)
index=[nom_index] | stats avg([champ]), max([champ]), min([champ])
♻ Tri et Limitation
Trier les Résultats
index=[nom_index] | sort - [champ]
- pour trier en ordre décroissant.
Limiter les Résultats
index=[nom_index] | head 10
Affiche les 10 premiers résultats.
➗ Groupement et Subdivisions
Grouper par Champ
index=[nom_index] | stats count by [champ]
Utiliser timechart pour des Tendances Temporelles
index=[nom_index] | timechart count by [champ]
🔥 Recherche Avancée
Recherche avec Sous-requêtes
index=[nom_index] [ search index=[autre_index] [champ]=[valeur] ]
Jointures entre Sources de Données
index=[nom_index1] | join type=outer [champ] [ search index=[nom_index2] ]
index=[nom_index] | extract
Renommer des Champs
index=[nom_index] | rename [ancien_nom] as [nouveau_nom]
index=[nom_index] | eval [nouveau_champ]=[expression]
☑ Visualisation et Exportation
Générer un Tableau
index=[nom_index] | table [champ1] [champ2] [champ3]
Exporter des Résultats
index=[nom_index] | outputcsv [nom_fichier.csv]
blue-team/siem
blue-team/siem/splunk
blue-team/cheatsheet
tool/splunk