# macOS SIP {{#include ../../../banners/hacktricks-training.md}} ## **Βασικές Πληροφορίες** **System Integrity Protection (SIP)** στο macOS είναι ένας μηχανισμός σχεδιασμένος να αποτρέπει ακόμη και τους πιο προνομιούχους χρήστες από το να κάνουν μη εξουσιοδοτημένες αλλαγές σε βασικούς φακέλους του συστήματος. Αυτή η δυνατότητα παίζει κρίσιμο ρόλο στη διατήρηση της ακεραιότητας του συστήματος περιορίζοντας ενέργειες όπως η προσθήκη, η τροποποίηση ή η διαγραφή αρχείων σε προστατευμένες περιοχές. Οι κύριοι φάκελοι που προστατεύονται από το SIP περιλαμβάνουν: - **/System** - **/bin** - **/sbin** - **/usr** Οι κανόνες που διέπουν τη συμπεριφορά του SIP ορίζονται στο αρχείο ρύθμισης που βρίσκεται στη **`/System/Library/Sandbox/rootless.conf`**. Μέσα σε αυτό το αρχείο, οι διαδρομές που προηγούνται από ένα αστερίσκο (\*) αναφέρονται ως εξαιρέσεις στους κατά τα άλλα αυστηρούς περιορισμούς του SIP. Σκεφτείτε το παρακάτω παράδειγμα: ```javascript /usr * /usr/libexec/cups * /usr/local * /usr/share/man ``` Αυτό το απόσπασμα υποδηλώνει ότι ενώ το SIP γενικά ασφαλίζει τον **`/usr`** κατάλογο, υπάρχουν συγκεκριμένοι υποκατάλογοι (`/usr/libexec/cups`, `/usr/local`, και `/usr/share/man`) όπου οι τροποποιήσεις είναι επιτρεπτές, όπως υποδεικνύεται από το αστερίσκο (\*) που προηγείται των διαδρομών τους. Για να επαληθεύσετε αν ένας κατάλογος ή αρχείο είναι προστατευμένο από το SIP, μπορείτε να χρησιμοποιήσετε την εντολή **`ls -lOd`** για να ελέγξετε την παρουσία της σημαίας **`restricted`** ή **`sunlnk`**. Για παράδειγμα: ```bash ls -lOd /usr/libexec/cups drwxr-xr-x 11 root wheel sunlnk 352 May 13 00:29 /usr/libexec/cups ``` Σε αυτή την περίπτωση, η σημαία **`sunlnk`** υποδηλώνει ότι ο φάκελος `/usr/libexec/cups` **δεν μπορεί να διαγραφεί**, αν και τα αρχεία μέσα σε αυτόν μπορούν να δημιουργηθούν, να τροποποιηθούν ή να διαγραφούν. Από την άλλη πλευρά: ```bash ls -lOd /usr/libexec drwxr-xr-x 338 root wheel restricted 10816 May 13 00:29 /usr/libexec ``` Εδώ, η **`restricted`** σημαία υποδεικνύει ότι ο φάκελος `/usr/libexec` προστατεύεται από το SIP. Σε έναν φάκελο που προστατεύεται από το SIP, δεν μπορούν να δημιουργηθούν, να τροποποιηθούν ή να διαγραφούν αρχεία. Επιπλέον, αν ένα αρχείο περιέχει την ιδιότητα **`com.apple.rootless`** εκτεταμένη **ιδιότητα**, αυτό το αρχείο θα είναι επίσης **προστατευμένο από το SIP**. > [!TIP] > Σημειώστε ότι το **Sandbox** hook **`hook_vnode_check_setextattr`** αποτρέπει οποιαδήποτε προσπάθεια τροποποίησης της εκτεταμένης ιδιότητας **`com.apple.rootless`.** **Το SIP περιορίζει επίσης άλλες ενέργειες root** όπως: - Φόρτωση μη αξιόπιστων επεκτάσεων πυρήνα - Λήψη task-ports για διαδικασίες υπογεγραμμένες από την Apple - Τροποποίηση μεταβλητών NVRAM - Επιτρέποντας την αποσφαλμάτωση πυρήνα Οι επιλογές διατηρούνται στη μεταβλητή nvram ως bitflag (`csr-active-config` σε Intel και `lp-sip0` διαβάζεται από το εκκινηθέν Device Tree για ARM). Μπορείτε να βρείτε τις σημαίες στον πηγαίο κώδικα XNU στο `csr.sh`:
### Κατάσταση SIP Μπορείτε να ελέγξετε αν το SIP είναι ενεργοποιημένο στο σύστημά σας με την παρακάτω εντολή: ```bash csrutil status ``` Αν χρειάζεται να απενεργοποιήσετε το SIP, πρέπει να επανεκκινήσετε τον υπολογιστή σας σε λειτουργία ανάκτησης (πατώντας Command+R κατά την εκκίνηση), στη συνέχεια εκτελέστε την παρακάτω εντολή: ```bash csrutil disable ``` Αν θέλετε να διατηρήσετε το SIP ενεργοποιημένο αλλά να αφαιρέσετε τις προστασίες αποσφαλμάτωσης, μπορείτε να το κάνετε με: ```bash csrutil enable --without debug ``` ### Άλλοι Περιορισμοί - **Απαγορεύει τη φόρτωση μη υπογεγραμμένων επεκτάσεων πυρήνα** (kexts), διασφαλίζοντας ότι μόνο οι επαληθευμένες επεκτάσεις αλληλεπιδρούν με τον πυρήνα του συστήματος. - **Αποτρέπει την αποσφαλμάτωση** των διαδικασιών συστήματος macOS, προστατεύοντας τα βασικά συστατικά του συστήματος από μη εξουσιοδοτημένη πρόσβαση και τροποποίηση. - **Αναστέλλει εργαλεία** όπως το dtrace από την επιθεώρηση διαδικασιών συστήματος, προστατεύοντας περαιτέρω την ακεραιότητα της λειτουργίας του συστήματος. [**Μάθετε περισσότερα για τις πληροφορίες SIP σε αυτή την ομιλία**](https://www.slideshare.net/i0n1c/syscan360-stefan-esser-os-x-el-capitan-sinking-the-ship)**.** ### **Σχετικές Εξουσιοδοτήσεις SIP** - `com.apple.rootless.xpc.bootstrap`: Έλεγχος launchd - `com.apple.rootless.install[.heritable]`: Πρόσβαση στο σύστημα αρχείων - `com.apple.rootless.kext-management`: `kext_request` - `com.apple.rootless.datavault.controller`: Διαχείριση UF_DATAVAULT - `com.apple.rootless.xpc.bootstrap`: Δυνατότητες ρύθμισης XPC - `com.apple.rootless.xpc.effective-root`: Ρίζα μέσω launchd XPC - `com.apple.rootless.restricted-block-devices`: Πρόσβαση σε ακατέργαστες συσκευές μπλοκ - `com.apple.rootless.internal.installer-equivalent`: Απεριόριστη πρόσβαση στο σύστημα αρχείων - `com.apple.rootless.restricted-nvram-variables[.heritable]`: Πλήρης πρόσβαση σε NVRAM - `com.apple.rootless.storage.label`: Τροποποίηση αρχείων που περιορίζονται από το com.apple.rootless xattr με την αντίστοιχη ετικέτα - `com.apple.rootless.volume.VM.label`: Διατήρηση VM swap στον τόμο ## Παράκαμψη SIP Η παράκαμψη του SIP επιτρέπει σε έναν επιτιθέμενο να: - **Πρόσβαση σε Δεδομένα Χρήστη**: Διαβάστε ευαίσθητα δεδομένα χρήστη όπως αλληλογραφία, μηνύματα και ιστορικό Safari από όλους τους λογαριασμούς χρηστών. - **Παράκαμψη TCC**: Άμεση χειραγώγηση της βάσης δεδομένων TCC (Διαφάνεια, Συναίνεση και Έλεγχος) για να παραχωρήσετε μη εξουσιοδοτημένη πρόσβαση στην κάμερα, το μικρόφωνο και άλλους πόρους. - **Καθ establishment Persistence**: Τοποθέτηση κακόβουλου λογισμικού σε τοποθεσίες προστατευμένες από SIP, καθιστώντας το ανθεκτικό στην αφαίρεση, ακόμη και από δικαιώματα root. Αυτό περιλαμβάνει επίσης τη δυνατότητα παραποίησης του Εργαλείου Αφαίρεσης Κακόβουλου Λογισμικού (MRT). - **Φόρτωση Επεκτάσεων Πυρήνα**: Αν και υπάρχουν επιπλέον προστασίες, η παράκαμψη του SIP απλοποιεί τη διαδικασία φόρτωσης μη υπογεγραμμένων επεκτάσεων πυρήνα. ### Πακέτα Εγκατάστασης **Τα πακέτα εγκατάστασης που υπογράφονται με το πιστοποιητικό της Apple** μπορούν να παρακάμψουν τις προστασίες του. Αυτό σημαίνει ότι ακόμη και τα πακέτα που υπογράφονται από τυπικούς προγραμματιστές θα αποκλειστούν αν προσπαθήσουν να τροποποιήσουν καταλόγους προστατευμένους από SIP. ### Μη Υπάρχον Αρχείο SIP Ένα πιθανό παραθυράκι είναι ότι αν ένα αρχείο καθοριστεί στο **`rootless.conf` αλλά δεν υπάρχει αυτή τη στιγμή**, μπορεί να δημιουργηθεί. Το κακόβουλο λογισμικό θα μπορούσε να εκμεταλλευτεί αυτό για να **καθιερώσει μόνιμη παρουσία** στο σύστημα. Για παράδειγμα, ένα κακόβουλο πρόγραμμα θα μπορούσε να δημιουργήσει ένα αρχείο .plist στο `/System/Library/LaunchDaemons` αν είναι καταχωρημένο στο `rootless.conf` αλλά δεν είναι παρόν. ### com.apple.rootless.install.heritable > [!CAUTION] > Η εξουσιοδότηση **`com.apple.rootless.install.heritable`** επιτρέπει την παράκαμψη του SIP #### [CVE-2019-8561](https://objective-see.org/blog/blog_0x42.html) Ανακαλύφθηκε ότι ήταν δυνατό να **ανταλλάξετε το πακέτο εγκατάστασης αφού το σύστημα επιβεβαίωσε την υπογραφή του κώδικα** και στη συνέχεια, το σύστημα θα εγκαθιστούσε το κακόβουλο πακέτο αντί για το αρχικό. Καθώς αυτές οι ενέργειες εκτελούνταν από **`system_installd`**, θα επέτρεπε την παράκαμψη του SIP. #### [CVE-2020–9854](https://objective-see.org/blog/blog_0x4D.html) Αν ένα πακέτο εγκαταστάθηκε από μια προσαρτημένη εικόνα ή εξωτερικό δίσκο, ο **εγκαταστάτης** θα **εκτελούσε** το δυαδικό από **αυτό το σύστημα αρχείων** (αντί από μια τοποθεσία προστατευμένη από SIP), κάνοντάς το **`system_installd`** να εκτελεί ένα αυθαίρετο δυαδικό. #### CVE-2021-30892 - Shrootless [**Ερευνητές από αυτή την ανάρτηση blog**](https://www.microsoft.com/en-us/security/blog/2021/10/28/microsoft-finds-new-macos-vulnerability-shrootless-that-could-bypass-system-integrity-protection/) ανακάλυψαν μια ευπάθεια στον μηχανισμό Προστασίας Ακεραιότητας Συστήματος (SIP) του macOS, που ονομάζεται 'Shrootless'. Αυτή η ευπάθεια επικεντρώνεται γύρω από τον δαίμονα **`system_installd`**, ο οποίος έχει μια εξουσιοδότηση, **`com.apple.rootless.install.heritable`**, που επιτρέπει σε οποιαδήποτε από τις διαδικασίες παιδιών του να παρακάμψει τους περιορισμούς του συστήματος αρχείων SIP. Ο δαίμονας **`system_installd`** θα εγκαταστήσει πακέτα που έχουν υπογραφεί από **Apple**. Οι ερευνητές διαπίστωσαν ότι κατά την εγκατάσταση ενός πακέτου υπογεγραμμένου από την Apple (.pkg αρχείο), ο **`system_installd`** **εκτελεί** οποιαδήποτε **σενάρια μετά την εγκατάσταση** που περιλαμβάνονται στο πακέτο. Αυτά τα σενάρια εκτελούνται από το προεπιλεγμένο κέλυφος, **`zsh`**, το οποίο αυτόματα **εκτελεί** εντολές από το **`/etc/zshenv`** αρχείο, αν υπάρχει, ακόμη και σε μη διαδραστική λειτουργία. Αυτή η συμπεριφορά θα μπορούσε να εκμεταλλευτεί από επιτιθέμενους: δημιουργώντας ένα κακόβουλο αρχείο `/etc/zshenv` και περιμένοντας να **καλέσει το `system_installd` το `zsh`**, θα μπορούσαν να εκτελέσουν αυθαίρετες ενέργειες στη συσκευή. Επιπλέον, ανακαλύφθηκε ότι το **`/etc/zshenv` θα μπορούσε να χρησιμοποιηθεί ως γενική τεχνική επίθεσης**, όχι μόνο για μια παράκαμψη SIP. Κάθε προφίλ χρήστη έχει ένα αρχείο `~/.zshenv`, το οποίο συμπεριφέρεται με τον ίδιο τρόπο όπως το `/etc/zshenv` αλλά δεν απαιτεί δικαιώματα root. Αυτό το αρχείο θα μπορούσε να χρησιμοποιηθεί ως μηχανισμός μόνιμης παρουσίας, ενεργοποιούμενο κάθε φορά που ξεκινά το `zsh`, ή ως μηχανισμός ανύψωσης προνομίων. Αν ένας χρήστης διαχειριστής ανυψωθεί σε root χρησιμοποιώντας `sudo -s` ή `sudo <εντολή>`, το αρχείο `~/.zshenv` θα ενεργοποιηθεί, ανυψώνοντας αποτελεσματικά σε root. #### [**CVE-2022-22583**](https://perception-point.io/blog/technical-analysis-cve-2022-22583/) Στο [**CVE-2022-22583**](https://perception-point.io/blog/technical-analysis-cve-2022-22583/) ανακαλύφθηκε ότι η ίδια διαδικασία **`system_installd`** θα μπορούσε να καταχραστεί επειδή τοποθετούσε το **σενάριο μετά την εγκατάσταση σε έναν τυχαία ονομασμένο φάκελο προστατευμένο από SIP μέσα στο `/tmp`**. Το θέμα είναι ότι το **`/tmp` από μόνο του δεν προστατεύεται από SIP**, οπότε ήταν δυνατό να **προσαρτηθεί** μια **εικονική εικόνα σε αυτό**, στη συνέχεια ο **εγκαταστάτης** θα τοποθετούσε εκεί το **σενάριο μετά την εγκατάσταση**, **αποσύνδεε** την εικονική εικόνα, **αναδημιουργούσε** όλους τους **φακέλους** και **πρόσθετε** το **σενάριο μετά την εγκατάσταση** με το **payload** για εκτέλεση. #### [fsck_cs utility](https://www.theregister.com/2016/03/30/apple_os_x_rootless/) Μια ευπάθεια εντοπίστηκε όπου το **`fsck_cs`** παραπλανήθηκε να διαφθείρει ένα κρίσιμο αρχείο, λόγω της ικανότητάς του να ακολουθεί **συμβολικούς συνδέσμους**. Συγκεκριμένα, οι επιτιθέμενοι δημιούργησαν έναν σύνδεσμο από _`/dev/diskX`_ στο αρχείο `/System/Library/Extensions/AppleKextExcludeList.kext/Contents/Info.plist`. Η εκτέλεση του **`fsck_cs`** στο _`/dev/diskX`_ οδήγησε στη διαφθορά του `Info.plist`. Η ακεραιότητα αυτού του αρχείου είναι ζωτικής σημασίας για την SIP (Προστασία Ακεραιότητας Συστήματος) του λειτουργικού συστήματος, η οποία ελέγχει τη φόρτωση επεκτάσεων πυρήνα. Μόλις διαφθαρεί, η ικανότητα του SIP να διαχειρίζεται τις εξαιρέσεις πυρήνα διακυβεύεται. Οι εντολές για την εκμετάλλευση αυτής της ευπάθειας είναι: ```bash ln -s /System/Library/Extensions/AppleKextExcludeList.kext/Contents/Info.plist /dev/diskX fsck_cs /dev/diskX 1>&- touch /Library/Extensions/ reboot ``` Η εκμετάλλευση αυτής της ευπάθειας έχει σοβαρές επιπτώσεις. Το αρχείο `Info.plist`, το οποίο είναι κανονικά υπεύθυνο για τη διαχείριση των δικαιωμάτων για τις επεκτάσεις πυρήνα, καθίσταται αναποτελεσματικό. Αυτό περιλαμβάνει την αδυναμία να αποκλειστούν ορισμένες επεκτάσεις, όπως η `AppleHWAccess.kext`. Ως εκ τούτου, με τον μηχανισμό ελέγχου του SIP εκτός λειτουργίας, αυτή η επέκταση μπορεί να φορτωθεί, παρέχοντας μη εξουσιοδοτημένη πρόσβαση ανάγνωσης και εγγραφής στη μνήμη RAM του συστήματος. #### [Mount over SIP protected folders](https://www.slideshare.net/i0n1c/syscan360-stefan-esser-os-x-el-capitan-sinking-the-ship) Ήταν δυνατό να τοποθετηθεί ένα νέο σύστημα αρχείων πάνω από **SIP protected folders για να παρακαμφθεί η προστασία**. ```bash mkdir evil # Add contento to the folder hdiutil create -srcfolder evil evil.dmg hdiutil attach -mountpoint /System/Library/Snadbox/ evil.dmg ``` #### [Upgrader bypass (2016)](https://objective-see.org/blog/blog_0x14.html) Το σύστημα είναι ρυθμισμένο να εκκινεί από μια ενσωματωμένη εικόνα δίσκου εγκατάστασης μέσα στο `Install macOS Sierra.app` για να αναβαθμίσει το λειτουργικό σύστημα, χρησιμοποιώντας το εργαλείο `bless`. Η εντολή που χρησιμοποιείται είναι η εξής: ```bash /usr/sbin/bless -setBoot -folder /Volumes/Macintosh HD/macOS Install Data -bootefi /Volumes/Macintosh HD/macOS Install Data/boot.efi -options config="\macOS Install Data\com.apple.Boot" -label macOS Installer ``` Η ασφάλεια αυτής της διαδικασίας μπορεί να παραβιαστεί αν ένας επιτιθέμενος τροποποιήσει την εικόνα αναβάθμισης (`InstallESD.dmg`) πριν από την εκκίνηση. Η στρατηγική περιλαμβάνει την αντικατάσταση ενός δυναμικού φορτωτή (dyld) με μια κακόβουλη έκδοση (`libBaseIA.dylib`). Αυτή η αντικατάσταση έχει ως αποτέλεσμα την εκτέλεση του κώδικα του επιτιθέμενου όταν ξεκινά ο εγκαταστάτης. Ο κώδικας του επιτιθέμενου αποκτά έλεγχο κατά τη διάρκεια της διαδικασίας αναβάθμισης, εκμεταλλευόμενος την εμπιστοσύνη του συστήματος στον εγκαταστάτη. Η επίθεση προχωρά με την τροποποίηση της εικόνας `InstallESD.dmg` μέσω της μεθόδου swizzling, στοχεύοντας ιδιαίτερα τη μέθοδο `extractBootBits`. Αυτό επιτρέπει την ένεση κακόβουλου κώδικα πριν χρησιμοποιηθεί η εικόνα δίσκου. Επιπλέον, μέσα στο `InstallESD.dmg`, υπάρχει ένα `BaseSystem.dmg`, το οποίο χρησιμεύει ως το ριζικό σύστημα αρχείων του κώδικα αναβάθμισης. Η ένεση μιας δυναμικής βιβλιοθήκης σε αυτό επιτρέπει στον κακόβουλο κώδικα να λειτουργεί μέσα σε μια διαδικασία ικανή να τροποποιεί αρχεία επιπέδου OS, αυξάνοντας σημαντικά την πιθανότητα παραβίασης του συστήματος. #### [systemmigrationd (2023)](https://www.youtube.com/watch?v=zxZesAN-TEk) Σε αυτή την ομιλία από [**DEF CON 31**](https://www.youtube.com/watch?v=zxZesAN-TEk), δείχνεται πώς το **`systemmigrationd`** (το οποίο μπορεί να παρακάμψει το SIP) εκτελεί ένα **bash** και ένα **perl** script, τα οποία μπορούν να καταχραστούν μέσω των μεταβλητών περιβάλλοντος **`BASH_ENV`** και **`PERL5OPT`**. #### CVE-2023-42860 Όπως [**αναφέρεται σε αυτή την ανάρτηση blog**](https://blog.kandji.io/apple-mitigates-vulnerabilities-installer-scripts), ένα script `postinstall` από τα πακέτα `InstallAssistant.pkg` επέτρεπε την εκτέλεση: ```bash /usr/bin/chflags -h norestricted "${SHARED_SUPPORT_PATH}/SharedSupport.dmg" ``` και ήταν δυνατό να δημιουργηθεί ένα symlink στο `${SHARED_SUPPORT_PATH}/SharedSupport.dmg` που θα επέτρεπε σε έναν χρήστη να **αφαιρέσει περιορισμούς από οποιοδήποτε αρχείο, παρακάμπτοντας την προστασία SIP**. ### **com.apple.rootless.install** > [!CAUTION] > Η εξουσιοδότηση **`com.apple.rootless.install`** επιτρέπει την παράκαμψη του SIP Η εξουσιοδότηση `com.apple.rootless.install` είναι γνωστό ότι παρακάμπτει την Προστασία Ακεραιότητας Συστήματος (SIP) στο macOS. Αυτό αναφέρθηκε ιδιαίτερα σε σχέση με [**CVE-2022-26712**](https://jhftss.github.io/CVE-2022-26712-The-POC-For-SIP-Bypass-Is-Even-Tweetable/). Σε αυτήν την συγκεκριμένη περίπτωση, η υπηρεσία XPC του συστήματος που βρίσκεται στο `/System/Library/PrivateFrameworks/ShoveService.framework/Versions/A/XPCServices/SystemShoveService.xpc` διαθέτει αυτήν την εξουσιοδότηση. Αυτό επιτρέπει στη σχετική διαδικασία να παρακάμψει τους περιορισμούς του SIP. Επιπλέον, αυτή η υπηρεσία παρουσιάζει μια μέθοδο που επιτρέπει τη μετακίνηση αρχείων χωρίς να επιβάλλει κανένα μέτρο ασφαλείας. ## Σφραγισμένα Στιγμιότυπα Συστήματος Τα Σφραγισμένα Στιγμιότυπα Συστήματος είναι μια δυνατότητα που εισήγαγε η Apple στο **macOS Big Sur (macOS 11)** ως μέρος του μηχανισμού **Προστασίας Ακεραιότητας Συστήματος (SIP)** για να παρέχει μια επιπλέον στρώση ασφάλειας και σταθερότητας του συστήματος. Είναι ουσιαστικά αναγνώσιμες εκδόσεις του όγκου του συστήματος. Ακολουθεί μια πιο λεπτομερής ματιά: 1. **Αμετάβλητο Σύστημα**: Τα Σφραγισμένα Στιγμιότυπα Συστήματος καθιστούν τον όγκο του macOS "αμετάβλητο", πράγμα που σημαίνει ότι δεν μπορεί να τροποποιηθεί. Αυτό αποτρέπει οποιεσδήποτε μη εξουσιοδοτημένες ή τυχαίες αλλαγές στο σύστημα που θα μπορούσαν να θέσουν σε κίνδυνο την ασφάλεια ή τη σταθερότητα του συστήματος. 2. **Ενημερώσεις Λογισμικού Συστήματος**: Όταν εγκαθιστάτε ενημερώσεις ή αναβαθμίσεις macOS, το macOS δημιουργεί ένα νέο στιγμιότυπο συστήματος. Ο όγκος εκκίνησης του macOS χρησιμοποιεί στη συνέχεια **APFS (Apple File System)** για να μεταβεί σε αυτό το νέο στιγμιότυπο. Ολόκληρη η διαδικασία εφαρμογής ενημερώσεων γίνεται πιο ασφαλής και αξιόπιστη καθώς το σύστημα μπορεί πάντα να επιστρέψει στο προηγούμενο στιγμιότυπο αν κάτι πάει στραβά κατά τη διάρκεια της ενημέρωσης. 3. **Διαχωρισμός Δεδομένων**: Σε συνδυασμό με την έννοια του διαχωρισμού Δεδομένων και Όγκου Συστήματος που εισήχθη στο macOS Catalina, η δυνατότητα Σφραγισμένου Στιγμιότυπου Συστήματος διασφαλίζει ότι όλα τα δεδομένα και οι ρυθμίσεις σας αποθηκεύονται σε έναν ξεχωριστό όγκο "**Δεδομένα**". Αυτός ο διαχωρισμός καθιστά τα δεδομένα σας ανεξάρτητα από το σύστημα, διευκολύνοντας τη διαδικασία ενημερώσεων του συστήματος και ενισχύοντας την ασφάλεια του συστήματος. Θυμηθείτε ότι αυτά τα στιγμιότυπα διαχειρίζονται αυτόματα από το macOS και δεν καταλαμβάνουν επιπλέον χώρο στον δίσκο σας, χάρη στις δυνατότητες κοινής χρήσης χώρου του APFS. Είναι επίσης σημαντικό να σημειωθεί ότι αυτά τα στιγμιότυπα διαφέρουν από τα **στιγμιότυπα Time Machine**, τα οποία είναι αντίγραφα ασφαλείας του συνόλου του συστήματος που είναι προσβάσιμα από τον χρήστη. ### Έλεγχος Στιγμιότυπων Η εντολή **`diskutil apfs list`** παραθέτει τις **λεπτομέρειες των όγκων APFS** και τη διάταξή τους:
+-- Container disk3 966B902E-EDBA-4775-B743-CF97A0556A13
|   ====================================================
|   APFS Container Reference:     disk3
|   Size (Capacity Ceiling):      494384795648 B (494.4 GB)
|   Capacity In Use By Volumes:   219214536704 B (219.2 GB) (44.3% used)
|   Capacity Not Allocated:       275170258944 B (275.2 GB) (55.7% free)
|   |
|   +-< Physical Store disk0s2 86D4B7EC-6FA5-4042-93A7-D3766A222EBE
|   |   -----------------------------------------------------------
|   |   APFS Physical Store Disk:   disk0s2
|   |   Size:                       494384795648 B (494.4 GB)
|   |
|   +-> Volume disk3s1 7A27E734-880F-4D91-A703-FB55861D49B7
|   |   ---------------------------------------------------
|   |   APFS Volume Disk (Role):   disk3s1 (System)
|   |   Name:                      Macintosh HD (Case-insensitive)
|   |   Mount Point:               /System/Volumes/Update/mnt1
|   |   Capacity Consumed:         12819210240 B (12.8 GB)
|   |   Sealed:                    Broken
|   |   FileVault:                 Yes (Unlocked)
|   |   Encrypted:                 No
|   |   |
|   |   Snapshot:                  FAA23E0C-791C-43FF-B0E7-0E1C0810AC61
|   |   Snapshot Disk:             disk3s1s1
|   |   Snapshot Mount Point:      /
|   |   Snapshot Sealed:           Yes
[...]
+-> Volume disk3s5 281959B7-07A1-4940-BDDF-6419360F3327
|   ---------------------------------------------------
|   APFS Volume Disk (Role):   disk3s5 (Data)
|   Name:                      Macintosh HD - Data (Case-insensitive)
    |   Mount Point:               /System/Volumes/Data
    |   Capacity Consumed:         412071784448 B (412.1 GB)
    |   Sealed:                    No
|   FileVault:                 Yes (Unlocked)
Στην προηγούμενη έξοδο είναι δυνατό να δει κανείς ότι οι **προσιτές από τον χρήστη τοποθεσίες** είναι τοποθετημένες κάτω από το `/System/Volumes/Data`. Επιπλέον, το **στιγμιότυπο όγκου συστήματος macOS** είναι τοποθετημένο στο `/` και είναι **σφραγισμένο** (κρυπτογραφικά υπογεγραμμένο από το OS). Έτσι, αν παρακαμφθεί το SIP και τροποποιηθεί, το **OS δεν θα εκκινήσει πλέον**. Είναι επίσης δυνατό να **επιβεβαιωθεί ότι η σφραγίδα είναι ενεργοποιημένη** εκτελώντας: ```bash csrutil authenticated-root status Authenticated Root status: enabled ``` Επιπλέον, ο δίσκος στιγμιότυπου είναι επίσης προσαρτημένος ως **μόνο για ανάγνωση**: ```bash mount /dev/disk3s1s1 on / (apfs, sealed, local, read-only, journaled) ``` {{#include ../../../banners/hacktricks-training.md}}