Linux Post-Exploitation

Μάθετε το χάκινγκ του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Καταγραφή Κωδικών Σύνδεσης με το PAM

Ας διαμορφώσουμε ένα PAM module για να καταγράφει κάθε κωδικό πρόσβασης που χρησιμοποιεί ο κάθε χρήστης για να συνδεθεί. Εάν δεν γνωρίζετε τι είναι το PAM, ελέγξτε:

pagePAM - Pluggable Authentication Modules

Για περισσότερες λεπτομέρειες, ανατρέξτε στην αρχική ανάρτηση. Αυτό είναι απλώς ένα σύνοψη:

Επισκόπηση Τεχνικής: Τα Pluggable Authentication Modules (PAM) προσφέρουν ευελιξία στη διαχείριση της πιστοποίησης σε συστήματα βασισμένα σε Unix. Μπορούν να ενισχύσουν την ασφάλεια προσαρμόζοντας τις διαδικασίες σύνδεσης, αλλά μπορούν επίσης να δημιουργήσουν κινδύνους εάν χρησιμοποιηθούν εσφαλμένα. Αυτή η σύνοψη περιγράφει μια τεχνική για την καταγραφή διαπιστευτηρίων σύνδεσης χρησιμοποιώντας το PAM, μαζί με στρατηγικές αντιμετώπισης.

Καταγραφή Διαπιστευτηρίων:

  • Δημιουργείται ένα bash script με το όνομα toomanysecrets.sh για να καταγράφει τις προσπάθειες σύνδεσης, καταγράφοντας την ημερομηνία, το όνομα χρήστη ($PAM_USER), τον κωδικό πρόσβασης (μέσω stdin) και την απομακρυσμένη διεύθυνση IP του υπολογιστή ($PAM_RHOST) στο /var/log/toomanysecrets.log.

  • Το script καθίσταται εκτελέσιμο και ενσωματώνεται στη διαμόρφωση του PAM (common-auth) χρησιμοποιώντας το module pam_exec.so με επιλογές για να εκτελείται αθόρυβα και να αποκαλύπτει το διαπιστευτήριο πιστοποίησης στο script.

  • Η προσέγγιση δείχνει πώς μπορεί να εκμεταλλευτεί ένας παραβιασμένος Linux υπολογιστής για να καταγράψει διαπιστευτήρια σύνδεσης απόκρυφα.

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

Τοποθέτηση πίσω πόρτας στο PAM

Για περισσότερες λεπτομέρειες, ανατρέξτε στην αρχική ανάρτηση. Αυτό είναι απλώς ένα σύνοψη:

Το Pluggable Authentication Module (PAM) είναι ένα σύστημα που χρησιμοποιείται στο Linux για την αυθεντικοποίηση των χρηστών. Λειτουργεί με βάση τρεις βασικές έννοιες: όνομα χρήστη, κωδικό πρόσβασης και υπηρεσία. Τα αρχεία ρυθμίσεων για κάθε υπηρεσία βρίσκονται στον κατάλογο /etc/pam.d/, όπου κοινόχρηστες βιβλιοθήκες χειρίζονται την αυθεντικοποίηση.

Στόχος: Τροποποιήστε το PAM για να επιτρέπει την αυθεντικοποίηση με έναν συγκεκριμένο κωδικό πρόσβασης, παρακάμπτοντας τον πραγματικό κωδικό πρόσβασης του χρήστη. Αυτό επικεντρώνεται ιδιαίτερα στην κοινόχρηστη βιβλιοθήκη pam_unix.so που χρησιμοποιείται από το αρχείο common-auth, το οποίο συμπεριλαμβάνεται από σχεδόν όλες τις υπηρεσίες για τον έλεγχο του κωδικού πρόσβασης.

Βήματα για την τροποποίηση του pam_unix.so:

  1. Εντοπίστε την Οδηγία Αυθεντικοποίησης στο αρχείο common-auth:

  • Η γραμμή που είναι υπεύθυνη για τον έλεγχο του κωδικού πρόσβασης του χρήστη καλεί το pam_unix.so.

  1. Τροποποιήστε τον Πηγαίο Κώδικα:

  • Προσθέστε μια συνθήκη στον πηγαίο κώδικα του αρχείου pam_unix_auth.c που επιτρέπει την πρόσβαση εάν χρησιμοποιείται ένας προκαθορισμένος κωδικός πρόσβασης, διαφορετικά συνεχίζει με την κανονική διαδικασία αυθεντικοποίησης.

  1. Επαναμεταγλωττίστε και Αντικαταστήστε την τροποποιημένη βιβλιοθήκη pam_unix.so στον κατάλληλο κατάλογο.

  2. Δοκιμή:

  • Η πρόσβαση επιτρέπεται σε διάφορες υπηρεσίες (σύνδεση, ssh, sudo, su, screensaver) με τον προκαθορισμένο κωδικό πρόσβασης, ενώ οι κανονικές διαδικασίες αυθεντικοποίησης παραμένουν ανέπαφες.

Μπορείτε να αυτοματοποιήσετε αυτήν τη διαδικασία με το https://github.com/zephrax/linux-pam-backdoor

Μάθετε το hacking στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Last updated