Sensitive Mounts
Η εκθεση του /proc
και /sys
χωρίς κατάλληλη απομόνωση του namespace εισάγει σημαντικούς κινδύνους ασφάλειας, συμπεριλαμβανομένης της αύξησης της επιφάνειας επίθεσης και της διαρροής πληροφοριών. Αυτοί οι κατάλογοι περιέχουν ευαίσθητα αρχεία που, εάν διαμορφωθούν εσφαλμένα ή αν έχουν πρόσβαση από μη εξουσιοδοτημένο χρήστη, μπορούν να οδηγήσουν σε διαφυγή από τον ελαφρύ δοχείο, τροποποίηση του κεντρικού συστήματος ή παροχή πληροφοριών που βοηθούν σε περαιτέρω επιθέσεις. Για παράδειγμα, η εσφαλμένη τοποθέτηση -v /proc:/host/proc
μπορεί να παρακάμψει την προστασία AppArmor λόγω της φύσης βασισμένης στη διαδρομή, αφήνοντας το /host/proc
ανεπτυγμένο.
Μπορείτε να βρείτε περισσότερες λεπτομέρειες για κάθε δυνητική ευπάθεια στο https://0xn3va.gitbook.io/cheat-sheets/container/escaping/sensitive-mounts.
Ευπάθειες procfs
/proc/sys
/proc/sys
Αυτός ο κατάλογος επιτρέπει την πρόσβαση για την τροποποίηση μεταβλητών πυρήνα, συνήθως μέσω sysctl(2)
, και περιέχει αρκετούς υποκαταλόγους που αφορούν:
/proc/sys/kernel/core_pattern
/proc/sys/kernel/core_pattern
Περιγράφεται στο core(5).
Επιτρέπει τον καθορισμό ενός προγράμματος για εκτέλεση κατά τη δημιουργία αρχείου πυρήνα με τα πρώτα 128 bytes ως ορίσματα. Αυτό μπορεί να οδηγήσει σε εκτέλεση κώδικα εάν το αρχείο ξεκινά με ένα pipe
|
.Παράδειγμα Δοκιμής και Εκμετάλλευσης:
/proc/sys/kernel/modprobe
/proc/sys/kernel/modprobe
Λεπτομερείς πληροφορίες στο proc(5).
Περιέχει τη διαδρομή προς τον φορτωτή πυρήνα, που καλείται για τη φόρτωση πυρήνα.
Παράδειγμα Έλεγχου Πρόσβασης:
/proc/sys/vm/panic_on_oom
/proc/sys/vm/panic_on_oom
Αναφέρεται στο proc(5).
Ένα γενικό σημαία που ελέγχει εάν ο πυρήνας κάνει panic ή ενεργοποιεί τον OOM killer όταν συμβεί μια κατάσταση OOM.
/proc/sys/fs
/proc/sys/fs
Σύμφωνα με το proc(5), περιέχει επιλογές και πληροφορίες σχετικά με το σύστημα αρχείων.
Η εγγραφή μπορεί να ενεργοποιήσει διάφορες επιθέσεις αρνητικής υπηρεσίας κατά του κεντρικού συστήματος.
/proc/sys/fs/binfmt_misc
/proc/sys/fs/binfmt_misc
Επιτρέπει την εγγραφή ερμηνευτών για μη-φυσικές μορφές δεδομένων βασισμένες στο μαγικό τους νούμερο.
Μπορεί να οδηγήσει σε ανόδου προνομίων ή πρόσβαση σε κέλυφος ρίζας εάν το
/proc/sys/fs/binfmt_misc/register
είναι εγγράψιμο.Σχετική εκμετάλλευση και εξήγηση:
Αναλυτικός οδηγός: Σύνδεσμος βίντεο
Άλλα στο /proc
/proc
/proc/config.gz
/proc/config.gz
Μπορεί να αποκαλύψει τη διαμόρφωση του πυρήνα εάν το
CONFIG_IKCONFIG_PROC
είναι ενεργοποιημένο.Χρήσιμο για τους επιτιθέμενους για την εντοπισμό ευπαθειών στον τρέχοντα πυρήνα.
/proc/sysrq-trigger
/proc/sysrq-trigger
Επιτρέπει την εκκίνηση εντολών Sysrq, προκαλώντας πιθανώς άμεσες επανεκκινήσεις συστήματος ή άλλες κρίσιμες ενέργειες.
Παράδειγμα Επανεκκίνησης Κεντρικού Συστήματος:
/proc/kmsg
/proc/kmsg
Εκθέτει μηνύματα κυκλώματος δακτυλίου πυρήνα.
Μπορεί να βοηθήσει σε εκμετάλλευση πυρήνα, διαρροές διευθύνσεων και παροχή ευαίσθητων πληροφοριών συστήματος.
/proc/kallsyms
/proc/kallsyms
Καταχωρεί σύμβολα πυρήνα που εξάγονται και τις διευθύνσεις τους.
Βασικό για την ανάπτυξη εκμετάλλευσης πυρήνα, ειδικά για την υπέρβαση του KASLR.
Οι πληροφορίες διεύθυνσης περιορίζονται με το
kptr_restrict
που έχει οριστεί σε1
ή2
.Λεπτομέρειες στο proc(5).
/proc/[pid]/mem
/proc/[pid]/mem
Αλληλεπιδρά με τη συσκευή μνήμης πυρήνα
/dev/mem
.Ιστορικά ευάλωτο σε επιθέσεις ανόδου προνομίων.
Περισσότερα στο proc(5).
/proc/kcore
/proc/kcore
Αντιπροσωπεύει τη φυσική μνήμη του συστήματος σε μορφή πυρήνα ELF.
Η ανάγνωση μπορεί να διαρρεύσει τα περιεχόμενα μνήμης του κεντρικού συστήματος και άλλων δοχείων.
Το μεγάλο μέγεθος αρχείου μπορεί να οδηγήσει σε προβλήματα ανάγνωσης ή καταρρεύσεις λογισμικού.
Λεπτομερείς οδηγίες στο Αδιάβροχο /proc/kcore το 2019.
/proc/kmem
/proc/kmem
Εναλλακτική διεπαφή για το
/dev/kmem
, που αντιπροσωπεύει την εικονική μνήμη πυρήνα.Επιτρέπει ανάγνωση και εγγραφή, ε
/sys/class/thermal
/sys/class/thermal
Ελέγχει τις ρυθμίσεις θερμοκρασίας, προκαλώντας ενδεχομένως επιθέσεις DoS ή φυσικές ζημιές.
/sys/kernel/vmcoreinfo
/sys/kernel/vmcoreinfo
Διαρρέει διευθύνσεις πυρήνα, ενδεχομένως διακινδυνεύοντας το KASLR.
/sys/kernel/security
/sys/kernel/security
Περιέχει τη διεπαφή
securityfs
, επιτρέποντας τη ρύθμιση των Linux Security Modules όπως το AppArmor.Η πρόσβαση μπορεί να επιτρέψει σε ένα container να απενεργοποιήσει το σύστημα του MAC.
/sys/firmware/efi/vars
και /sys/firmware/efi/efivars
/sys/firmware/efi/vars
και /sys/firmware/efi/efivars
Εκθέτει διεπαφές για την αλληλεπίδραση με τις μεταβλητές EFI στη μνήμη NVRAM.
Η εσφαλμένη ρύθμιση ή εκμετάλλευση μπορεί να οδηγήσει σε υπολογιστές φορητούς που δεν εκκινούν ή σε μη εκκινούμενες μηχανές φιλοξενίας.
/sys/kernel/debug
/sys/kernel/debug
Το
debugfs
προσφέρει μια διεπαφή αποσφαλμάτωσης "χωρίς κανόνες" στον πυρήνα.Ιστορικό προβλημάτων ασφάλειας λόγω της μη περιορισμένης φύσης του.
Αναφορές
Last updated