mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
54 lines
7.4 KiB
Markdown
54 lines
7.4 KiB
Markdown
# Εγγραφή Συσκευών σε Άλλες Οργανώσεις
|
||
|
||
{{#include ../../../banners/hacktricks-training.md}}
|
||
|
||
## Εισαγωγή
|
||
|
||
Όπως [**σχολιάστηκε προηγουμένως**](#what-is-mdm-mobile-device-management)**,** για να προσπαθήσουμε να εγγράψουμε μια συσκευή σε μια οργάνωση **χρειάζεται μόνο ένας Αριθμός Σειράς που ανήκει σε αυτή την Οργάνωση**. Μόλις η συσκευή εγγραφεί, πολλές οργανώσεις θα εγκαταστήσουν ευαίσθητα δεδομένα στη νέα συσκευή: πιστοποιητικά, εφαρμογές, κωδικούς WiFi, ρυθμίσεις VPN [και ούτω καθεξής](https://developer.apple.com/enterprise/documentation/Configuration-Profile-Reference.pdf).\
|
||
Επομένως, αυτό θα μπορούσε να είναι ένα επικίνδυνο σημείο εισόδου για επιτιθέμενους αν η διαδικασία εγγραφής δεν προστατεύεται σωστά.
|
||
|
||
**Ακολουθεί μια περίληψη της έρευνας [https://duo.com/labs/research/mdm-me-maybe](https://duo.com/labs/research/mdm-me-maybe). Ελέγξτε το για περαιτέρω τεχνικές λεπτομέρειες!**
|
||
|
||
## Επισκόπηση Ανάλυσης Δυαδικών DEP και MDM
|
||
|
||
Αυτή η έρευνα εμβαθύνει στα δυαδικά αρχεία που σχετίζονται με το Πρόγραμμα Εγγραφής Συσκευών (DEP) και τη Διαχείριση Κινητών Συσκευών (MDM) στο macOS. Τα κύρια συστατικά περιλαμβάνουν:
|
||
|
||
- **`mdmclient`**: Επικοινωνεί με τους διακομιστές MDM και ενεργοποιεί τις εγγραφές DEP σε εκδόσεις macOS πριν από την 10.13.4.
|
||
- **`profiles`**: Διαχειρίζεται τα Προφίλ Ρύθμισης και ενεργοποιεί τις εγγραφές DEP σε εκδόσεις macOS 10.13.4 και μεταγενέστερες.
|
||
- **`cloudconfigurationd`**: Διαχειρίζεται τις επικοινωνίες API DEP και ανακτά τα προφίλ Εγγραφής Συσκευών.
|
||
|
||
Οι εγγραφές DEP χρησιμοποιούν τις συναρτήσεις `CPFetchActivationRecord` και `CPGetActivationRecord` από το ιδιωτικό πλαίσιο Προφίλ Ρύθμισης για να ανακτήσουν το Activation Record, με το `CPFetchActivationRecord` να συντονίζεται με το `cloudconfigurationd` μέσω XPC.
|
||
|
||
## Ανάλυση Αντίστροφης Μηχανικής Πρωτοκόλλου Tesla και Σχεδίου Absinthe
|
||
|
||
Η εγγραφή DEP περιλαμβάνει το `cloudconfigurationd` να στέλνει ένα κρυπτογραφημένο, υπογεγραμμένο JSON payload στο _iprofiles.apple.com/macProfile_. Το payload περιλαμβάνει τον αριθμό σειράς της συσκευής και την ενέργεια "RequestProfileConfiguration". Το σχήμα κρυπτογράφησης που χρησιμοποιείται αναφέρεται εσωτερικά ως "Absinthe". Η αποκωδικοποίηση αυτού του σχήματος είναι περίπλοκη και περιλαμβάνει πολλές διαδικασίες, γεγονός που οδήγησε στην εξερεύνηση εναλλακτικών μεθόδων για την εισαγωγή αυθαίρετων αριθμών σειράς στην αίτηση Activation Record.
|
||
|
||
## Διαμεσολάβηση Αιτημάτων DEP
|
||
|
||
Οι προσπάθειες να παρεμποδιστούν και να τροποποιηθούν τα αιτήματα DEP προς το _iprofiles.apple.com_ χρησιμοποιώντας εργαλεία όπως το Charles Proxy εμποδίστηκαν από την κρυπτογράφηση του payload και τα μέτρα ασφαλείας SSL/TLS. Ωστόσο, η ενεργοποίηση της ρύθμισης `MCCloudConfigAcceptAnyHTTPSCertificate` επιτρέπει την παράκαμψη της επικύρωσης του πιστοποιητικού διακομιστή, αν και η κρυπτογραφημένη φύση του payload εμποδίζει ακόμα την τροποποίηση του αριθμού σειράς χωρίς το κλειδί αποκρυπτογράφησης.
|
||
|
||
## Εργαλειοποίηση Δυαδικών Συστήματος που Αλληλεπιδρούν με το DEP
|
||
|
||
Η εργαλειοποίηση δυαδικών συστημάτων όπως το `cloudconfigurationd` απαιτεί την απενεργοποίηση της Προστασίας Ακεραιότητας Συστήματος (SIP) στο macOS. Με την SIP απενεργοποιημένη, εργαλεία όπως το LLDB μπορούν να χρησιμοποιηθούν για να συνδεθούν σε διαδικασίες συστήματος και ενδεχομένως να τροποποιήσουν τον αριθμό σειράς που χρησιμοποιείται στις αλληλεπιδράσεις API DEP. Αυτή η μέθοδος είναι προτιμότερη καθώς αποφεύγει τις πολυπλοκότητες των δικαιωμάτων και της υπογραφής κώδικα.
|
||
|
||
**Εκμετάλλευση Δυαδικής Εργαλειοποίησης:**
|
||
Η τροποποίηση του payload αίτησης DEP πριν από την σειριοποίηση JSON στο `cloudconfigurationd` αποδείχθηκε αποτελεσματική. Η διαδικασία περιλάμβανε:
|
||
|
||
1. Σύνδεση του LLDB στο `cloudconfigurationd`.
|
||
2. Εντοπισμός του σημείου όπου ανακτάται ο αριθμός σειράς του συστήματος.
|
||
3. Εισαγωγή ενός αυθαίρετου αριθμού σειράς στη μνήμη πριν από την κρυπτογράφηση και την αποστολή του payload.
|
||
|
||
Αυτή η μέθοδος επέτρεψε την ανάκτηση πλήρων προφίλ DEP για αυθαίρετους αριθμούς σειράς, αποδεικνύοντας μια πιθανή ευπάθεια.
|
||
|
||
### Αυτοματοποίηση Εργαλειοποίησης με Python
|
||
|
||
Η διαδικασία εκμετάλλευσης αυτοματοποιήθηκε χρησιμοποιώντας Python με το API LLDB, καθιστώντας εφικτή την προγραμματισμένη εισαγωγή αυθαίρετων αριθμών σειράς και την ανάκτηση των αντίστοιχων προφίλ DEP.
|
||
|
||
### Πιθανές Επιπτώσεις Ευπαθειών DEP και MDM
|
||
|
||
Η έρευνα ανέδειξε σημαντικές ανησυχίες ασφαλείας:
|
||
|
||
1. **Αποκάλυψη Πληροφοριών**: Παρέχοντας έναν αριθμό σειράς που είναι εγγεγραμμένος στο DEP, μπορεί να ανακτηθεί ευαίσθητη οργανωτική πληροφορία που περιέχεται στο προφίλ DEP.
|
||
|
||
{{#include ../../../banners/hacktricks-training.md}}
|