Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

PAM Module Forensics

forensics

Définition

PAM (Pluggable Authentication Modules) est le framework d'authentification Linux qui gère tous les aspects de l'authentification des utilisateurs (login, sudo, SSH, services). Son architecture modulaire en fait un vecteur d'attaque privilégié pour les attaquants cherchant à implanter une backdoor d'authentification persistante et difficile à détecter. La configuration PAM se trouve dans /etc/pam.conf et le répertoire /etc/pam.d/ (un fichier par service). Chaque service (sshd, sudo, login, su) a sa propre chaîne de modules PAM définissant les règles d'authentification. L'analyse de ces fichiers de configuration lors d'une investigation est essentielle pour détecter des modifications malveillantes. L'attaque PAM la plus connue consiste à ajouter ou remplacer un module PAM par une version malveillante. Par exemple, un attaquant peut modifier /etc/pam.d/sshd pour ajouter 'auth sufficient pam_permit.so' en première ligne, accordant l'accès à n'importe quel mot de passe. Une technique plus discrète consiste à créer un faux module PAM (pam_unix.so trojanisé ou un nouveau module) qui journalise les mots de passe légitimes ou accepte un mot de passe maître codé en dur. Les indicateurs de compromission PAM incluent : des modifications récentes des fichiers dans /etc/pam.d/ (timestamps suspects), des modules PAM inconnus dans /lib/security/ ou /lib64/security/ (vérifier les hashes contre les paquets installés), des entrées inhabitunelles dans les chaînes PAM (sufficient pam_permit.so, module inconnu), et des fichiers de log supplémentaires créés par un module malveillant. L'outil 'pam_tally2' et 'faillock' (selon la distribution) gèrent les verrouillages de compte et leurs logs peuvent révéler des tentatives d'authentification. La commande 'pamtester' permet de tester les chaînes PAM pour vérifier leur comportement.

Fonctionnement

PAM traite l'authentification via une pile de modules (auth, account, password, session). Chaque module retourne success ou failure. Les mots-clés 'required', 'requisite', 'sufficient', 'optional' définissent le comportement de la chaîne. Un module 'sufficient' qui retourne success court-circuite les modules suivants, permettant un bypass d'authentification.

Application DFIR

Sur un serveur Linux compromis : vérifier les timestamps de /etc/pam.d/* et /lib*/security/*.so, comparer les hashes des modules PAM avec les paquets (rpm -V pam / debsums libpam-modules), et analyser les logs d'authentification (/var/log/auth.log) pour des patterns inhabituels (authentifications depuis des IPs non reconnues, logins de comptes dormants).

Outils

find /lib*/security/ -newer /etc/passwd (modules récemment modifiés), md5sum/sha256sum + rpm -V/debsums pour la vérification d'intégrité, auditd (surveillance des accès aux fichiers PAM), AIDE/tripwire (baseline intégrité), strace sur sshd (analyse comportementale). Exemple backdoor documentée : libpam-backdoor research.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis