Aide-mémoire BTL1¶
Référence condensée des commandes et méthodes d’investigation pour la préparation à l’examen BTL1 et les opérations d’un SOC de niveau 1.
Ces notes seront utiles pendant l’examen.
Fondamentaux SOC¶
Liste des ports courants.
| Port | Service | Description |
|---|---|---|
| 20,21 | FTP | Protocole de transfert de fichiers utilisé pour échanger des fichiers entre systèmes. |
| 22 | SSH | Le protocole Secure Shell permet de se connecter de manière sécurisée à un hôte distant. |
| 23 | Telnet | Utilisé avant SSH, il permet une connexion à distance sans chiffrement. |
| 25 | SMTP | Le protocole Simple Mail Transfer Protocol sert à transmettre des courriels entre serveurs sur un réseau ou sur Internet. |
| 53 | DNS | Le système de noms de domaine traduit les noms de domaine lisibles par l’humain en adresses IP interprétables par les machines. |
| 67,68 | DHCP | Le protocole Dynamic Host Configuration Protocol attribue automatiquement aux hôtes les paramètres d’adressage IP nécessaires. |
| 80 | HTTP | Le protocole HTTP permet aux navigateurs comme Chrome ou Firefox de se connecter à des serveurs web et de demander du contenu. |
| 443 | HTTPS | HTTPS est la version sécurisée de HTTP et permet aux navigateurs de se connecter aux serveurs web au moyen d’un canal chiffré. |
| 514 | Syslog | Un serveur Syslog écoute les notifications Syslog entrantes, généralement transportées dans des paquets UDP. |
Analyse du phishing¶
Collecte des IOC¶
- Artefacts de courriel :
- Adresse de l’expéditeur
- Objet du message
- Adresses des destinataires
- IP du serveur d’envoi et résolution DNS inverse
- Adresse Reply-To
- Date et heure
- Artefacts web :
- URL complètes
- Noms de domaine
- Artefacts de fichiers :
- Nom de la pièce jointe
- Valeurs de hachage MD5, SHA1 et SHA256
Analyse des artefacts¶
- Outils de visualisation - URL2PNG, URLScan, AbuseIPDB
- Outils de réputation des URL - VirusTotal, URLScan, URLhaus, WannaBrowser
- Outils de réputation des fichiers - VirusTotal, Talos File Reputation
- Bacs à sable pour logiciels malveillants - Hybrid Analysis, Any.run, VirusTotal, Joe Sandbox
Investigation numérique¶
- Les données peuvent notamment être représentées sous les formes suivantes :
- Base64
- Hexadécimal
- Octal
- ASCII
- Binaire
- Récupération de fichiers par signature :
scalpel -b -o <output> <disk image file>
- Hachages :
- Windows -
Par défaut, la commande get-filehash génère le hachage SHA256 d’un fichier.
get-filehash <file>
Pour générer le hachage MD5 d’un fichier :
get-filehash -algorithm MD5 <file>
Pour générer le hachage SHA1 d’un fichier :
get-filehash -algorithm SHA1 <file>
- Linux -
md5sum <file>
sha1sum <file>
sha256sum <file>
Rechercher des preuves numériques avec
- FTK Imager — importer le fichier .img dans FTK Imager
- KAPE — peut être utilisé pour acquérir rapidement des données.
Investigations Windows :
- Fichiers LNK — ces fichiers se trouvent à l’emplacement
C:\Users\$USER$\AppData\Roaming\Microsoft\Windows\Recent
- Fichiers Prefetch -
- PECmd — cet outil permet d’afficher les fichiers Prefetch.
PECmd.exe -f <path/to/file.pf>
- PECmd — cet outil permet d’afficher les fichiers Prefetch.
Ces fichiers se trouvent à l’emplacement
C:\Windows\Prefetch
- Fichiers Jumplist — ces fichiers se trouvent à l’emplacement
C:\Users\% USERNAME%\AppData\ Roaming\Microsoft\Windows\Recent\AutomaticDestinations
C:\Users\%USERNAME%\AppData\ Roaming\Microsoft\Windows\Recent\CustomDestinations
- Événements de connexion
- ID 4624 — connexions réussies au système.
- ID 4672 — événements de connexion spéciale lorsqu’un administrateur se connecte.
- ID 4625 — échecs de connexion.
- ID 4634 — déconnexions de la session courante.
Ces journaux d’événements se trouvent à l’emplacement
C:\Windows\System32\winevt\Logs
- Capturer et consulter l’historique du navigateur avec
- Browser History Viewer
- Browser History Capturer
Investigations Linux :
- /etc/passwd — contient les informations relatives aux utilisateurs du système.
- /etc/shadow — contient les mots de passe hachés.
- Unshadow — sert à combiner les fichiers passwd et shadow.
- /var/lib — à l’emplacement
/var/lib/dpkg/status, ce fichier contient la liste des paquets logiciels installés. - .bash_history — contient les commandes saisies par les utilisateurs.
- Fichiers cachés — fichiers dont le nom commence par .
- Fichiers ordinaires — fichiers accessibles par les moyens standards.
- Stéganographie — pratique consistant à dissimuler des messages ou des informations dans d’autres textes ou données non secrets.
Volatility -
Identifier le profil de l’image mémoire :
volatility -f /path/to/file.mem imageinfo
Lister les processus du système :
volatility -f /path/to/file.mem --profile=PROFILE pslist
Afficher les processus sous forme d’arborescence :
volatility -f /path/to/file.mem --profile=PROFILE pstree
Afficher la ligne de commande du processus dont le PID est XXXX :
volatility -f /path/to/file.mem --profile=PROFILE dlllist -p XXXX
Afficher les connexions réseau :
volatility -f /path/to/file.mem --profile=PROFILE netscan
Extraire le processus dont le PID est XXXX :
volatility -f /path/to/file.mem --profile=PROFILE procdump -p XXXX -D /home/ubuntu/Desktop
Afficher tous les processus disponibles :
volatility -f memdump.mem --profile=PROFILE psscan
Afficher les processus attendus et cachés :
volatility -f memdump.mem --profile=PROFILE psxview
Créer une chronologie des événements depuis l’image mémoire :
volatility -f memdump.mem --profile=PROFILE timeliner
Extraire l’historique de navigation Internet :
volatility -f memdump.mem --profile=PROFILE iehistory
Identifier les fichiers présents dans le système depuis l’image mémoire :
volatility -f memdump.mem --profile=PROFILE filescan
- Métadonnées — données décrivant d’autres données
- ExifTool
exiftool <file>
Gestion des informations et des événements de sécurité¶
SPLUNK¶
Les requêtes doivent commencer par une référence au jeu de données :
index="botsv1"
Pour rechercher une adresse IP source (src) dont la valeur est 127.0.0.1 :
index="botsv1" src="127.0.0.1"
Pour rechercher l’adresse IP de destination (dst) X.X.X.X à laquelle cette source s’est connectée :
index="botsv1" src="127.0.0.1" dst="X.X.X.X"
Réponse aux incidents¶
Analyse réseau — utiliser Wireshark pour importer les fichiers .pcap et .pcapng.
CMD : l’invite de commandes permet de consulter des informations utiles.
Afficher la configuration réseau du système :
ipconfig /all
Vérifier les processus et programmes en cours d’exécution :
tasklist
Afficher les processus actifs et le fichier binaire associé qui les a lancés :
wmic process get description, executablepath
Afficher tous les utilisateurs dans l’invite de commandes :
net users
Lister tous les membres du groupe des administrateurs :
net localgroup administrators
Lister tous les membres du groupe RDP :
net localgroup "Remote Desktop Users"
Lister tous les services et leurs informations détaillées :
sc query | more
Lister les ports ouverts du système, ce qui peut révéler une porte dérobée :
netstat -ab
- PowerShell — permet souvent de récupérer encore davantage d’informations.
Ces commandes récupèrent les informations réseau du système :
Get-NetIPConfiguration
Get-NetIPAddress
Lister tous les utilisateurs locaux du système :
Get-LocalUser
Indiquer un utilisateur précis pour n’afficher que ses informations :
Get-LocalUser -Name BTLO | select *
Identifier rapidement les services actifs dans une fenêtre séparée :
Get-Service | Where Status -eq "Running" | Out-GridView
Regrouper les processus actifs selon leur niveau de priorité :
Get-Process | Format-Table -View priority
Récupérer les informations détaillées d’un processus en indiquant son nom avec -Name 'nom' ou son identifiant, comme dans les exemples :
Get-Process -Id 'idhere' | Select *
Les tâches planifiées sont fréquemment détournées comme mécanisme de persistance :
Get-ScheduledTask
Indiquer une tâche précise et récupérer toutes ses propriétés :
Get-ScheduledTask -TaskName 'PutANameHere' | Select *
Modifier la politique d’exécution appliquée à l’utilisateur courant :
Set-ExecutionPolicy Bypass -Scope CurrentUser
- DeepBlueCLI — script PowerShell créé par SANS pour faciliter l’investigation et le triage des journaux d’événements Windows.
Pour analyser log.evtx :
./DeepBlue.ps1 log.evtx
DeepBlue peut également analyser directement les journaux Security ou System du système local :
# démarrer PowerShell en tant qu’administrateur, ouvrir le répertoire de DeepBlueCLI et exécuter le script
./DeepBlue.ps1 -log security
./DeepBlue.ps1 -log system
# si le script ne s’exécute pas, contourner temporairement la politique d’exécution
Set-ExecutionPolicy Bypass -Scope CurrentUser