Proc filesystem forensics
forensicsDéfinition
Le système de fichiers /proc (procfs) est un pseudo-filesystem Linux qui expose en temps réel des informations sur les processus en cours d'exécution et l'état du noyau. Pour les investigations forensiques sur un système Linux live, /proc est une mine d'informations sur l'état actuel du système que l'analyse du disque ne peut pas révéler. Pour chaque processus en cours d'exécution, /proc/[PID]/ expose : /proc/[PID]/exe (lien symbolique vers l'exécutable, révélant le chemin même si le fichier a été supprimé du disque — en lisant ce lien symbolique, on peut extraire le binaire d'un processus dont le fichier a été supprimé), /proc/[PID]/cmdline (ligne de commande complète, avec arguments null-séparés), /proc/[PID]/maps (les mappings mémoire du processus : bibliothèques chargées, sections anonymes suspectes), /proc/[PID]/fd/ (tous les descripteurs de fichiers ouverts avec leurs cibles, révélant fichiers et connexions réseau), /proc/[PID]/environ (variables d'environnement du processus, potentiellement avec des secrets ou des configurations C2), et /proc/[PID]/net/ (informations réseau : connexions TCP, UDP, sockets). La technique d'extraction du binaire d'un processus supprimé depuis /proc est précieuse : cp /proc/[PID]/exe /tmp/extracted_malware ; md5sum /tmp/extracted_malware. Si le lien /proc/[PID]/exe se termine par '(deleted)', le fichier original a été supprimé mais le processus continue de tourner avec le code en mémoire. Le binaire peut encore être extrait depuis /proc/[PID]/exe. /proc/net/ offre des informations réseau globales indépendantes des processus : /proc/net/tcp (connexions TCP avec états et adresses locales/distantes en hexadécimal), /proc/net/udp (connexions UDP), /proc/net/if_inet6 (interfaces IPv6). Ces informations complètent les connexions obtenues par netstat/ss. Pour la forensique des modules noyau (rootkits LKM), /proc/modules liste les modules chargés avec leurs adresses mémoire. Comparer avec lsmod pour détecter les rootkits qui cachent leurs modules en manipulant la liste des modules visible via les interfaces standard.
Fonctionnement
/proc est monté au démarrage (mount -t proc proc /proc) et exposé par le noyau dynamiquement. Les lectures depuis /proc sont des appels système vers le noyau qui calcule et retourne les données en temps réel. /proc/[PID]/mem permet la lecture directe de la mémoire d'un processus avec les bonnes permissions (outil : gcore, dd de /proc/[PID]/mem avec /proc/[PID]/maps pour le mapping).
Application DFIR
Acquisition /proc sur système live : 1) Lister tous les PIDs actifs (ls /proc | grep '^[0-9]'), 2) Pour chaque PID suspect : cat /proc/PID/cmdline | tr ' ' ' ', ls -la /proc/PID/exe (lien symbolique), ls -la /proc/PID/fd/ (fichiers ouverts), cat /proc/PID/maps (mémoire). 3) Extraire le binaire d'un malware supprimé : cp /proc/PID/exe /tmp/malware_extracted. 4) Environ : strings /proc/PID/environ → secrets, URLs C2.
Outils
Commandes natives : cat, ls, cp, strings, od. Acquisition : gcore (core dump d'un processus), dd if=/proc/PID/mem. Forensique live : Volatility (analyse post-mortem du dump créé), AVML (linux memory acquisitionhttps://github.com/microsoft/avml). Scripts : Linux Evidence Acquisition (LEA), FastIR Collector Linux. DFIR distros : CAINE, DEFT Linux, PALADIN.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h