Aller au contenu

Requêtes

🎯 Filtres de base

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

1
2
3
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

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

SELECT * FROM events WHERE eventCategory = 'Authentication Failure'

Affiche tous les échecs d’authentification.

Filtrer par niveau de gravité

SELECT * FROM events WHERE magnitude > 6

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


🔥 Filtres avancés

Rechercher des connexions suspectes

1
2
3
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

1
2
3
4
5
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

1
2
3
4
5
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

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

1
2
3
4
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

1
2
3
4
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

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

1
2
3
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é

1
2
3
4
5
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

1
2
3
4
SELECT eventName, COUNT(*) AS occurrences 
FROM events 
GROUP BY eventName 
ORDER BY occurrences DESC