PAM - Pluggable Authentication Modules
Reading time: 3 minutes
tip
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
Basiese Inligting
PAM (Pluggable Authentication Modules) dien as 'n sekuriteitsmeganisme wat die identiteit van gebruikers wat probeer om toegang tot rekenaar dienste te verkry, verifieer, en hul toegang beheer op grond van verskeie kriteria. Dit is soortgelyk aan 'n digitale wag, wat verseker dat slegs gemagtigde gebruikers met spesifieke dienste kan omgaan terwyl dit moontlik hul gebruik beperk om stelseloorlaai te voorkom.
Konfigurasie Lêers
- Solaris en UNIX-gebaseerde stelsels gebruik tipies 'n sentrale konfigurasielêer geleë by
/etc/pam.conf
. - Linux stelsels verkies 'n gidsbenadering, wat diens-spesifieke konfigurasies stoor binne
/etc/pam.d
. Byvoorbeeld, die konfigurasielêer vir die aanmelddiens is te vind by/etc/pam.d/login
.
'n Voorbeeld van 'n PAM-konfigurasie vir die aanmelddiens mag soos volg lyk:
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
PAM Bestuur Ranges
Hierdie ranges, of bestuursgroepe, sluit auth, account, password, en session in, elk verantwoordelik vir verskillende aspekte van die verifikasie en sessiebestuur proses:
- Auth: Verifieer gebruikersidentiteit, dikwels deur vir 'n wagwoord te vra.
- Account: Hanteer rekeningverifikasie, wat toestande soos groepslidmaatskap of tydsbeperkings nagaan.
- Password: Bestuur wagwoordopdaterings, insluitend kompleksiteitskontroles of voorkoming van woordeboekaanvalle.
- Session: Bestuur aksies tydens die begin of einde van 'n diensessie, soos om gidse te monteer of hulpbronlimiete te stel.
PAM Module Beheer
Beheer bepaal die module se reaksie op sukses of mislukking, wat die algehele verifikasieproses beïnvloed. Hierdie sluit in:
- Required: Mislukking van 'n vereiste module lei tot uiteindelike mislukking, maar slegs nadat alle daaropvolgende modules nagegaan is.
- Requisite: Onmiddellike beëindiging van die proses by mislukking.
- Sufficient: Sukses omseil die res van die kontrole van dieselfde reeks tensy 'n daaropvolgende module misluk.
- Optional: Lei slegs tot mislukking as dit die enigste module in die stapel is.
Voorbeeld Scenario
In 'n opstelling met meerdere auth modules volg die proses 'n strikte volgorde. As die pam_securetty
module die aanmeldterminal as nie-geautoriseer vind, word root aanmeldings geblokkeer, maar alle modules word steeds verwerk weens sy "required" status. Die pam_env
stel omgewing veranderlikes in, wat moontlik help met die gebruikerservaring. Die pam_ldap
en pam_unix
modules werk saam om die gebruiker te verifieer, met pam_unix
wat probeer om 'n voorheen verskafde wagwoord te gebruik, wat doeltreffendheid en buigsaamheid in verifikasiemetodes verbeter.
References
tip
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.