Sensitive Mounts

Υποστηρίξτε το HackTricks

Η εκθεση του /proc και /sys χωρίς κατάλληλη απομόνωση namespace εισάγει σημαντικούς κινδύνους ασφάλειας, συμπεριλαμβανομένης της αύξησης της επιφάνειας επίθεσης και της διαρροής πληροφοριών. Αυτοί οι κατάλογοι περιέχουν ευαίσθητα αρχεία που, εάν διαμορφωθούν εσφαλμένα ή αν έχουν πρόσβαση από μη εξουσιοδοτημένο χρήστη, μπορεί να οδηγήσουν σε διαφυγή δοχείου, τροποποίηση του κεντρικού υπολογιστή ή παροχή πληροφοριών που βοηθούν σε περαιτέρω επιθέσεις. Για παράδειγμα, η εσφαλμένη τοποθέτηση -v /proc:/host/proc μπορεί να παρακάμψει την προστασία AppArmor λόγω της φύσης βασισμένης στη διαδρομή της, αφήνοντας το /host/proc ανεπτυγμένο.

Μπορείτε να βρείτε περισσότερες λεπτομέρειες για κάθε δυνητική ευπάθεια στο https://0xn3va.gitbook.io/cheat-sheets/container/escaping/sensitive-mounts.

Ευπάθειες procfs

/proc/sys

Αυτός ο κατάλογος επιτρέπει την πρόσβαση για την τροποποίηση μεταβλητών πυρήνα, συνήθως μέσω sysctl(2), και περιέχει αρκετούς υποκαταλόγους που αφορούν:

/proc/sys/kernel/core_pattern

  • Περιγράφεται στο core(5).

  • Επιτρέπει τον καθορισμό ενός προγράμματος για εκτέλεση κατά τη δημιουργία αρχείου πυρήνα με τα πρώτα 128 bytes ως ορίσματα. Αυτό μπορεί να οδηγήσει σε εκτέλεση κώδικα εάν το αρχείο ξεκινά με μια σωλήνα |.

  • Παράδειγμα Δοκιμής και Εκμετάλλευσης:

[ -w /proc/sys/kernel/core_pattern ] && echo Yes # Δοκιμή πρόσβασης εγγραφής
cd /proc/sys/kernel
echo "|$overlay/shell.sh" > core_pattern # Ορισμός προσαρμοσμένου χειριστή
sleep 5 && ./crash & # Ενεργοποίηση χειριστή

/proc/sys/kernel/modprobe

  • Λεπτομερείς πληροφορίες στο proc(5).

  • Περιέχει τη διαδρομή προς τον φορτωτή πυρήνα ενός πυρήνα, κλήθηκε για τη φόρτωση πυρήνα.

  • Παράδειγμα Έλεγχου Πρόσβασης:

ls -l $(cat /proc/sys/kernel/modprobe) # Έλεγχος πρόσβασης στο modprobe

/proc/sys/vm/panic_on_oom

  • Αναφέρεται στο proc(5).

  • Ένα γενικό σημαία που ελέγχει εάν ο πυρήνας κάνει πανικό ή ενεργοποιεί τον OOM killer όταν συμβεί μια κατάσταση OOM.

/proc/sys/fs

  • Σύμφωνα με το proc(5), περιέχει επιλογές και πληροφορίες σχετικά με το σύστημα αρχείων.

  • Η εγγραφή μπορεί να ενεργοποιήσει διάφορες επιθέσεις αρνητικής υπηρεσίας κατά του κεντρικού υπολογιστή.

/proc/sys/fs/binfmt_misc

  • Επιτρέπει την εγγραφή ερμηνευτών για μη-φυσικές μορφές δεδομένων βασισμένες στο μαγικό τους νούμερο.

  • Μπορεί να οδηγήσει σε ανόδου προνομίων ή πρόσβαση σε κέλυφος ρίζας εάν το /proc/sys/fs/binfmt_misc/register είναι εγγράψιμο.

  • Σχετική εκμετάλλευση και εξήγηση:

  • Εκτενές εκπαιδευτικό υλικό: Σύνδεσμος βίντεο

Άλλα στο /proc

/proc/config.gz

  • Μπορεί να αποκαλύψει τη διαμόρφωση του πυρήνα εάν το CONFIG_IKCONFIG_PROC είναι ενεργοποιημένο.

  • Χρήσιμο για τους επιτιθέμενους για την αναγνώριση ευπαθειών στον τρέχοντα πυρήνα.

/proc/sysrq-trigger

  • Επιτρέπει την εκκίνηση εντολών Sysrq, προκαλώντας πιθανώς άμεσες επανεκκινήσεις συστήματος ή άλλες κρίσιμες ενέργειες.

  • Παράδειγμα Επανεκκίνησης Κεντρικού Υπολογιστή:

echo b > /proc/sysrq-trigger # Επανεκκίνηση του κεντρικού υπολογιστή

/proc/kmsg

  • Εκθέτει μηνύματα πυρήνα στον κύκλο δακτυλίου.

  • Μπορεί να βοηθήσει σε εκμετάλλευση πυρήνα, διαρροές διευθύνσεων και παροχή ευαίσθητων πληροφοριών συστήματος.

/proc/kallsyms

  • Καταχωρεί σύμβολα πυρήνα και τις διευθύνσεις τους.

  • Βασικό για την ανάπτυξη εκμετάλλευσης πυρήνα, ειδικά για την υπέρβαση του KASLR.

  • Οι πληροφορίες διεύθυνσης περιορίζονται με το kptr_restrict ορισμένο σε 1 ή 2.

  • Λεπτομέρειες στο proc(5).

/proc/[pid]/mem

  • Αλληλεπιδρά με τη συσκευή μνήμης πυρήνα /dev/mem.

  • Ιστορικά ευάλωτο σε επιθέσεις ανόδου προνομίων.

  • Περισσότερα στο proc(5).

/proc/kcore

  • Αντιπροσωπεύει τη φυσική μνήμη του συστήματος σε μορφή πυρήνα ELF.

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

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

  • Λεπτομερείς οδηγίες στο Αδειάζοντας το /proc/kcore το 2019.

/proc/kmem

  • Εναλλακτική διεπαφή για το /dev/kmem, αντιπροσωπεύοντας την εικονική μνήμη πυρήνα.

  • Επιτρέπει ανάγνωση και εγγραφή, επομένως άμεση τροποποίηση της μνήμης πυρήνα.

/proc/mem

  • Εναλλακτική διεπαφή για το /dev/mem, αντιπροσωπεύοντας τη φυσική μνήμη.

  • Επιτρέπει ανάγνω

/sys/class/thermal

  • Ελέγχει τις ρυθμίσεις θερμοκρασίας, προκαλώντας ενδεχομένως επιθέσεις DoS ή φυσικές ζημιές.

/sys/kernel/vmcoreinfo

  • Διαρρέει διευθύνσεις πυρήνα, ενδεχομένως διακινδυνεύοντας το KASLR.

/sys/kernel/security

  • Περιέχει τη διεπαφή securityfs, επιτρέποντας τη ρύθμιση των Linux Security Modules όπως το AppArmor.

  • Η πρόσβαση μπορεί να επιτρέψει σε ένα container να απενεργοποιήσει το σύστημα του MAC.

/sys/firmware/efi/vars και /sys/firmware/efi/efivars

  • Εκθέτει διεπαφές για την αλληλεπίδραση με τις μεταβλητές EFI στη μνήμη NVRAM.

  • Η εσφαλμένη ρύθμιση ή εκμετάλλευση μπορεί να οδηγήσει σε υπολογιστές φορητούς που δεν εκκινούν ή σε μη εκκινήσιμες μηχανές φιλοξενίας.

/sys/kernel/debug

  • Το debugfs προσφέρει μια διεπαφή αποσφαλμάτωσης "χωρίς κανόνες" στον πυρήνα.

  • Ιστορικό προβλημάτων ασφάλειας λόγω της μη περιορισμένης φύσης του.

Last updated