Skip to content

🎯 Filtres de base

Rechercher des événements sur une période spécifique

sql
SELECT * FROM events 
WHERE startTime > '2024-02-01 00:00:00' 
AND startTime < '2024-02-07 23:59:59'

Affiche tous les événements entre le 1er et le 7 février 2024.

Filtrer par adresse IP source

sql
SELECT * FROM events WHERE sourceip = '192.168.1.10'

Affiche tous les événements générés par l'IP source 192.168.1.10.

Filtrer par type d’événement spécifique

sql
SELECT * FROM events WHERE eventCategory = 'Authentication Failure'

Affiche tous les échecs d’authentification.

Filtrer par niveau de gravité

sql
SELECT * FROM events WHERE magnitude > 6

Affiche uniquement les événements avec une gravité supérieure à 6.


🔥 Filtres avancés

Rechercher des connexions suspectes

sql
SELECT * FROM events WHERE sourceIP != destinationIP
AND destinationPort IN (3389, 22, 445)
AND magnitude > 5

Détecte les connexions anormales sur des ports sensibles comme RDP (3389), SSH (22) et SMB (445).

Détecter des balayages de ports

sql
SELECT sourceIP, COUNT(DISTINCT destinationPort) AS scanned_ports 
FROM events 
WHERE destinationPort IS NOT NULL 
GROUP BY sourceIP 
HAVING COUNT(DISTINCT destinationPort) > 10

Identifie les adresses IP ayant scanné plus de 10 ports différents.

Lister les tentatives de connexion échouées par utilisateur

sql
SELECT username, COUNT(*) AS failed_attempts 
FROM events 
WHERE eventName = 'Failed Login' 
GROUP BY username 
ORDER BY failed_attempts DESC

Affiche la liste des utilisateurs avec le plus grand nombre d’échecs de connexion.

Identifier des connexions à des pays suspects

sql
SELECT * FROM events 
WHERE destinationGeographicLocation IN ('Russia', 'China', 'North Korea')

Liste les connexions vers des pays sensibles.


📜 Requêtes spécifiques aux logs réseau

Identifier des transferts de fichiers volumineux

sql
SELECT sourceIP, destinationIP, bytes 
FROM flows 
WHERE bytes > 100000000 
ORDER BY bytes DESC

Affiche les transferts de plus de 100 Mo.

Identifier les connexions entre un poste et plusieurs destinations

sql
SELECT sourceIP, COUNT(DISTINCT destinationIP) AS connections
FROM flows 
GROUP BY sourceIP
HAVING COUNT(DISTINCT destinationIP) > 5

Identifie les postes établissant des connexions vers plus de 5 destinations différentes (potentiel beaconing).


🛠 Autres requêtes utiles

Rechercher un processus spécifique dans les logs

sql
SELECT * FROM events WHERE eventName LIKE '%powershell%'

Filtre les événements contenant le mot powershell, souvent utilisé dans des attaques.

Rechercher des exécutions de Mimikatz

sql
SELECT * FROM events 
WHERE eventName LIKE '%mimikatz%' 
OR eventDescription LIKE '%sekurlsa%'

Détecte les exécutions suspectes de l’outil Mimikatz.

Détecter des connexions anormales d’un compte privilégié

sql
SELECT username, sourceIP, destinationIP, eventName 
FROM events 
WHERE username IN ('admin', 'administrator', 'root')
AND eventName = 'Successful Login'
AND sourceIP NOT IN ('192.168.1.0/24')

Détecte les connexions réussies sur un compte admin depuis une IP hors du réseau interne.

Trouver les événements les plus fréquents

sql
SELECT eventName, COUNT(*) AS occurrences 
FROM events 
GROUP BY eventName 
ORDER BY occurrences DESC