hacktricks/macos-hardening/macos-security-and-privilege-escalation/macos-security-protections
2024-05-02 15:56:18 +00:00
..
macos-fs-tricks Translated ['binary-exploitation/common-binary-protections-and-bypasses/ 2024-04-23 19:40:27 +00:00
macos-sandbox GitBook: No commit message 2024-04-06 18:31:47 +00:00
macos-tcc Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-04-24 23:53:35 +00:00
macos-dangerous-entitlements.md GitBook: No commit message 2024-04-06 18:31:47 +00:00
macos-gatekeeper.md Translated ['binary-exploitation/rop-return-oriented-programing/ret2lib/ 2024-05-02 15:56:18 +00:00
macos-launch-environment-constraints.md Translated to Greek 2024-02-10 22:40:18 +00:00
macos-sip.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-04-18 13:59:55 +00:00
README.md Translated to Greek 2024-02-10 22:40:18 +00:00

Προστασίες ασφάλειας του macOS

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

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

Gatekeeper

Ο Gatekeeper συνήθως χρησιμοποιείται για να αναφέρεται στον συνδυασμό των Quarantine + Gatekeeper + XProtect, 3 ασφαλείας modules του macOS που θα προσπαθήσουν να εμποδίσουν τους χρήστες να εκτελέσουν πιθανώς κακόβουλο λογισμικό που έχει ληφθεί.

Περισσότερες πληροφορίες στο:

{% content-ref url="macos-gatekeeper.md" %} macos-gatekeeper.md {% endcontent-ref %}

Περιορισμοί Διεργασιών

SIP - Προστασία Ακεραιότητας Συστήματος

{% content-ref url="macos-sip.md" %} macos-sip.md {% endcontent-ref %}

Αμμοθύρα

Η Αμμοθύρα του macOS περιορίζει τις εφαρμογές που εκτελούνται μέσα στην αμμοθύρα στις επιτρεπόμενες ενέργειες που καθορίζονται στο προφίλ της αμμοθύρας με το οποίο η εφαρμογή εκτελείται. Αυτό βοηθά να διασφαλιστεί ότι η εφαρμογή θα έχει πρόσβαση μόνο σε αναμενόμενους πόρους.

{% content-ref url="macos-sandbox/" %} macos-sandbox {% endcontent-ref %}

TCC - Διαφάνεια, Συναίνεση και Έλεγχος

Το TCC (Διαφάνεια, Συναίνεση και Έλεγχος) είναι ένα πλαίσιο ασφαλείας. Σχεδιάστηκε για να διαχειρίζεται τις άδειες των εφαρμογών, ειδικότερα ρυθμίζοντας την πρόσβασή τους σε ευαίσθητα χαρακτηριστικά. Αυτό περιλαμβάνει στοιχεία όπως υπηρεσίες τοποθεσίας, επαφές, φωτογραφίες, μικρόφωνο, κάμερα, προσβασιμότητα και πλήρη πρόσβαση στο δίσκο. Το TCC διασφαλίζει ότι οι εφαρμογές μπορούν να έχουν πρόσβαση σε αυτά τα χαρακτηριστικά μόνο μετά από ρητή συναίνεση του χρήστη, ενισχύοντας έτσι την ιδιωτικότητα και τον έλεγχο των προσωπικών δεδομένων.

{% content-ref url="macos-tcc/" %} macos-tcc {% endcontent-ref %}

Περιορισμοί Εκκίνησης/Περιβάλλοντος & Προσωπική Εμπιστοσύνη

Οι περιορισμοί εκκίνησης στο macOS είναι μια λειτουργία ασφαλείας για να ρυθμίζει την έναρξη διεργασιών καθορίζοντας ποιος μπορεί να ξεκινήσει μια διεργασία, πώς και από πού. Εισήχθηκαν στο macOS Ventura, κατηγοριοποιούν τις δυαδικές αρχεία του συστήματος σε κατηγορίες περιορισμών μέσα σε μια προσωπική εμπιστοσύνη. Κάθε εκτελέσιμο δυαδικό έχει ορισμένους κανόνες για την έναρξή του, συμπεριλαμβανομένων των περιορισμών αυτού, του γονέα και του υπεύθυνου. Επεκτάθηκαν σε εφαρμογές τρίτων ως Περιορισμοί Περιβάλλοντος στο macOS Sonoma, αυτά τα χαρακτηριστικά βοηθούν στη μείωση των πιθανών εκμεταλλεύσεων του συστήματος διαχειρίζοντας τις συνθήκες έναρξης διεργασιών.

{% content-ref url="macos-launch-environment-constraints.md" %} macos-launch-environment-constraints.md {% endcontent-ref %}

MRT - Εργαλείο Αφαίρεσης Κακόβουλου Λογισμικού

Το Εργαλείο Αφαίρεσης Κακόβουλου Λογισμικού (MRT) είναι μέρος της ασφαλείας του macOS.

[...]
"us.zoom.ZoomDaemon" => {
"AssociatedBundleIdentifiers" => [
0 => "us.zoom.xos"
]
"Attribution" => "Zoom"
"Program" => "/Library/PrivilegedHelperTools/us.zoom.ZoomDaemon"
"ProgramArguments" => [
0 => "/Library/PrivilegedHelperTools/us.zoom.ZoomDaemon"
]
"TeamIdentifier" => "BJ4HAAB9B3"
}
[...]

Απαρίθμηση

Είναι δυνατόν να απαριθμήσετε όλα τα ρυθμισμένα στοιχεία φόντου που εκτελούνται με το εργαλείο γραμμής εντολών της Apple:

# The tool will always ask for the users password
sfltool dumpbtm

Επιπλέον, είναι επίσης δυνατό να αναφέρετε αυτές τις πληροφορίες με το DumpBTM.

# You need to grant the Terminal Full Disk Access for this to work
chmod +x dumpBTM
xattr -rc dumpBTM # Remove quarantine attr
./dumpBTM

Αυτές οι πληροφορίες αποθηκεύονται στο /private/var/db/com.apple.backgroundtaskmanagement/BackgroundItems-v4.btm και ο Τερματικός χρειάζεται FDA.

Αλλοίωση του BTM

Όταν βρεθεί μια νέα διαρκής λειτουργία, γίνεται μια ειδοποίηση τύπου ES_EVENT_TYPE_NOTIFY_BTM_LAUNCH_ITEM_ADD. Έτσι, οποιοδήποτε τρόπος για να αποτρέψει αυτή η ειδοποίηση να σταλεί ή ο πράκτορας να ειδοποιήσει τον χρήστη θα βοηθήσει έναν επιτιθέμενο να παρακάμψει το BTM.

  • Επαναφορά της βάσης δεδομένων: Εκτελώντας την παρακάτω εντολή θα επαναφέρει τη βάση δεδομένων (θα την ξαναχτίσει από την αρχή), ωστόσο, για κάποιο λόγο, μετά την εκτέλεση αυτής της εντολής, δεν θα ειδοποιηθεί καμία νέα διαρκής λειτουργία μέχρι να γίνει επανεκκίνηση του συστήματος.
  • Απαιτείται root πρόσβαση.
# Reset the database
sfltool resettbtm
  • Διακοπή του Πράκτορα: Είναι δυνατόν να στείλετε ένα σήμα διακοπής στον πράκτορα, έτσι ώστε να μην ειδοποιεί τον χρήστη όταν ανιχνεύονται νέες αποκαλύψεις.
# Get PID
pgrep BackgroundTaskManagementAgent
1011

# Stop it
kill -SIGSTOP 1011

# Check it's stopped (a T means it's stopped)
ps -o state 1011
T
  • Σφάλμα: Εάν η διαδικασία που δημιούργησε την μόνιμη παρουσία υπάρχει γρήγορα αμέσως μετά, το daemon θα προσπαθήσει να λάβει πληροφορίες για αυτήν, θα αποτύχει και δεν θα είναι σε θέση να στείλει το γεγονός που υποδηλώνει ότι μια νέα πράξη είναι μόνιμη.

Αναφορές και περισσότερες πληροφορίες για το BTM:

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

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