hacktricks/linux-hardening/linux-post-exploitation/pam-pluggable-authentication-modules.md

7.2 KiB

PAM - Pluggable Authentication Modules

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

WhiteIntel

WhiteIntel est un moteur de recherche alimenté par le dark-web qui offre des fonctionnalités gratuites pour vérifier si une entreprise ou ses clients ont été compromis par des malwares voleurs.

Leur objectif principal avec WhiteIntel est de lutter contre les prises de contrôle de comptes et les attaques par ransomware résultant de malwares de vol d'informations.

Vous pouvez consulter leur site web et essayer leur moteur gratuitement à l'adresse suivante :

{% embed url="https://whiteintel.io" %}


Basic Information

PAM (Pluggable Authentication Modules) agit comme un mécanisme de sécurité qui vérifie l'identité des utilisateurs tentant d'accéder aux services informatiques, contrôlant leur accès en fonction de divers critères. C'est semblable à un gardien numérique, garantissant que seuls les utilisateurs autorisés peuvent interagir avec des services spécifiques tout en limitant potentiellement leur utilisation pour éviter les surcharges du système.

Configuration Files

  • Les systèmes Solaris et basés sur UNIX utilisent généralement un fichier de configuration central situé à /etc/pam.conf.
  • Les systèmes Linux préfèrent une approche par répertoire, stockant des configurations spécifiques aux services dans /etc/pam.d. Par exemple, le fichier de configuration pour le service de connexion se trouve à /etc/pam.d/login.

Un exemple de configuration PAM pour le service de connexion pourrait ressembler à ceci :

auth required /lib/security/pam_securetty.so
auth required /lib/security/pam_nologin.so
auth sufficient /lib/security/pam_ldap.so
auth required /lib/security/pam_unix_auth.so try_first_pass
account sufficient /lib/security/pam_ldap.so
account required /lib/security/pam_unix_acct.so
password required /lib/security/pam_cracklib.so
password required /lib/security/pam_ldap.so
password required /lib/security/pam_pwdb.so use_first_pass
session required /lib/security/pam_unix_session.so

Royaumes de gestion PAM

Ces royaumes, ou groupes de gestion, incluent auth, account, password et session, chacun responsable de différents aspects du processus d'authentification et de gestion des sessions :

  • Auth : Valide l'identité de l'utilisateur, souvent en demandant un mot de passe.
  • Account : Gère la vérification des comptes, vérifiant des conditions telles que l'appartenance à un groupe ou des restrictions horaires.
  • Password : Gère les mises à jour de mot de passe, y compris les vérifications de complexité ou la prévention des attaques par dictionnaire.
  • Session : Gère les actions lors du début ou de la fin d'une session de service, comme le montage de répertoires ou la définition de limites de ressources.

Contrôles des modules PAM

Les contrôles dictent la réponse du module en cas de succès ou d'échec, influençant le processus d'authentification global. Ceux-ci incluent :

  • Required : L'échec d'un module requis entraîne un échec final, mais seulement après que tous les modules suivants aient été vérifiés.
  • Requisite : Terminaison immédiate du processus en cas d'échec.
  • Sufficient : Le succès contourne les autres vérifications du même royaume, sauf si un module suivant échoue.
  • Optional : Ne cause un échec que si c'est le seul module dans la pile.

Scénario d'exemple

Dans une configuration avec plusieurs modules d'authentification, le processus suit un ordre strict. Si le module pam_securetty trouve le terminal de connexion non autorisé, les connexions root sont bloquées, mais tous les modules sont tout de même traités en raison de son statut "required". Le pam_env définit des variables d'environnement, pouvant potentiellement aider à l'expérience utilisateur. Les modules pam_ldap et pam_unix travaillent ensemble pour authentifier l'utilisateur, pam_unix tentant d'utiliser un mot de passe précédemment fourni, améliorant l'efficacité et la flexibilité des méthodes d'authentification.

Références

WhiteIntel

WhiteIntel est un moteur de recherche alimenté par le dark-web qui offre des fonctionnalités gratuites pour vérifier si une entreprise ou ses clients ont été compromis par des malwares voleurs.

Leur objectif principal avec WhiteIntel est de lutter contre les prises de contrôle de comptes et les attaques par ransomware résultant de malwares volants d'informations.

Vous pouvez consulter leur site web et essayer leur moteur gratuitement à :

{% embed url="https://whiteintel.io" %}

{% hint style="success" %} Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks
{% endhint %}