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

54 lines
3.3 KiB
Markdown

# PAM - Pluggable Authentication Modules
{{#include ../../banners/hacktricks-training.md}}
### 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
- [https://hotpotato.tistory.com/434](https://hotpotato.tistory.com/434)
{{#include ../../banners/hacktricks-training.md}}