Δευτέρα, 22 Φεβρουαρίου, 02:18
Αρχική security Orange Tsai: Πως (ξανα)χάκαρα το Facebook!

Orange Tsai: Πως (ξανα)χάκαρα το Facebook!

Το παρακάτω άρθρο αφορά την προσωπική εμπειρία του Orange Tsai οπότε παρατίθενται αυτολεξεί τα λόγια του σχετικά με το πως κατάφερε να χακάρει το Facebook για ακόμη μια φορά.

Γεια, έχει περάσει πολύς καιρός από το τελευταίο μου άρθρο. Αυτή η νέα ανάρτηση αφορά την έρευνά μου αυτόν τον Μάρτιο, η οποία αφορά το πώς εντόπισα ευπάθειες σε ένα κορυφαίο προϊόν Mobile Device Management, τις οποίες και παράκαμψα για να επιτύχω απομακρυσμένη εκτέλεση κώδικα.

Όλες οι ευπάθειες έχουν αναφερθεί στον προμηθευτή και διορθώθηκαν τον Ιούνιο. Μετά από αυτό, συνεχίσαμε να παρακολουθούμε μεγάλες εταιρείες για να παρακολουθούμε τη συνολική πρόοδο της διόρθωσης και στη συνέχεια διαπιστώσαμε ότι το Facebook δεν συμβάδιζε με την ενημέρωση κώδικα για περισσότερες από 2 εβδομάδες, οπότε προσπαθήσαμε να αρπάξουμε την ευκαιρία!

Ως Red Team, ψάχνουμε πάντα νέους δρόμους για να διεισδύσουμε σε εταιρικά δίκτυα. Αυτή τη φορά ερευνούμε τις επιθέσεις που αφορούν την ασφάλεια των επιχειρήσεων και ενδιαφερόμαστε για το MDM, οπότε το άρθρο που ακολουθεί είναι σχετικά με αυτό!

Τι είναι το MDM;

Το Mobile Device Management, γνωστό και ως MDM, είναι ένα σύστημα αξιολόγησης στοιχείων που καθιστά το BYOD (Bring your own device) των εργαζομένων πιο διαχειρίσιμο για τις επιχειρήσεις. Το MDM μπορεί να εγγυηθεί ότι οι συσκευές λειτουργούν σύμφωνα με την εταιρική πολιτική και σε ένα αξιόπιστο περιβάλλον.

Ο στόχος μας

Το MDM, ως κεντρικό σύστημα, μπορεί να διαχειρίζεται και να ελέγχει όλες τις συσκευές των εργαζομένων. Είναι αναμφίβολα ένας ιδανικός στόχος για τους χάκερ. Επομένως, έχουμε δει hacker και ομάδες APT να κάνουν κατάχρηση του MDM όλα αυτά τα χρόνια!

Από προηγούμενες περιπτώσεις, γνωρίζουμε ότι το MDM είναι ένας σταθερός στόχος για τους hacker και θέλαμε να κάνουμε μια σχετική έρευνα. Υπάρχουν πολλές λύσεις MDM, ακόμη και από διάσημες εταιρείες όπως η Microsoft, η IBM και η Apple.

Έχουμε καταγράψει γνωστές λύσεις MDM και σαρώσαμε αντίστοιχα μοτίβα σε όλο το διαδίκτυο. Διαπιστώσαμε ότι τα πιο διαδεδομένα MDM είναι τα VMware AirWatch και MobileIron!

Γιατί λοιπόν επιλέξαμε το MobileIron ως στόχο μας; Σύμφωνα με τον επίσημο ιστότοπό τους, περισσότερες από 20.000 επιχειρήσεις επέλεξαν το MobileIron ως λύση MDM. Γνωρίζουμε επίσης ότι το Facebook έχει εκθέσει τον MobileIron server από το 2016. Αναλύσαμε επίσης το Fortune Global 500 και βρήκαμε ότι πάνω από το 15% χρησιμοποιεί και εκθέτει τον MobileIron server στο κοινό! Για τους παραπάνω λόγους, έγινε ο κύριος στόχος μας!

Το αρχείο που θα ερευνήσουμε κυκλοφόρησε στις αρχές του 2018. Φαίνεται λίγο παλιό αλλά είναι καλύτερο από το τίποτα!

Εύρεση ευπαθειών

Αφού ολοκληρώσαμε τελικά το πακέτο δοκιμών είδαμε ότι το component βασίζεται σε Java και έχει εκτεθεί σε τρεις θύρες:

  • 443 – η διεπαφή εγγραφής χρήστη
  • 8443 – η διεπαφή διαχείρισης συσκευών
  • 9997 – το πρωτόκολλο συγχρονισμού συσκευών MobileIron (πρωτόκολλο MI)

Όλες οι ανοιχτές θύρες είναι κρυπτογραφημένες με TLS. Το Apache βρίσκεται στο μπροστινό μέρος του διαδικτυακού τμήματος και παρέχει όλες τις συνδέσεις στο backend, ένα Tomcat με Spring MVC.

Λόγω του Spring MVC, είναι δύσκολο να βρείτε παραδοσιακές ευπάθειες όπως SQL Injection ή XSS.

Μιλώντας για την ευπάθεια, η βασική αιτία είναι απλή. Η Tomcat εξέθεσε μια υπηρεσία Web που κάνει deserialize στο user input με το format Hessian. Ωστόσο, αυτό δεν σημαίνει ότι μπορούμε να κάνουμε τα πάντα! Η κύρια προσπάθεια αυτού του άρθρου είναι να επιλυθεί αυτό, οπότε δείτε την εκμετάλλευση παρακάτω:

Παρόλο που γνωρίζουμε ότι το Web Service κάνει deserialize στο user input, δεν μπορούμε να τo ενεργοποιήσουμε. Το endpoint βρίσκεται και στα δύο:

Μπορούμε να «αγγίξουμε» το deserialization (είναι η διαδικασία μετατροπής κάποιου αντικειμένου σε μορφή δεδομένων που μπορεί να γίνει restore αργότερα) μόνο μέσω της διεπαφής διαχείρισης, επειδή το περιβάλλον εργασίας του χρήστη αποκλείει την πρόσβαση στο Web Service.

Το MobileIron βασίστηκε στα Apache Rewrite Rules για να αποκλείσει την πρόσβαση στην υπηρεσία Web. Βρίσκεται μπροστά από μια αρχιτεκτονική reverse-proxy και το backend είναι ένας διακομιστής ιστού που βασίζεται σε Java.

Εκμετάλλευση ευπαθειών

Ο Moritz Bechler έχει κάνει μια φοβερή έρευνα, η οποία συνοψίζει την ευπάθεια “Hessian deserialization”  στο whitepaper του που ονομάζεται Java Unmarshaller Security. Από τον πηγαίο κώδικα του marshalsec, μαθαίνουμε ότι το Hessian deserialization ενεργοποιεί το equals() και το hashcode() ενώ ανακατασκευάζει ένα HashMap. Θα μπορούσε επίσης να ενεργοποιήσει το toString () μέσω του XString και τα γνωστά gadget για exploit μέχρι στιγμής είναι:

  • Apache XBean
  • Caucho Resin
  • Spring AOP
  • ROME EqualsBean/ToStringBean

Στο περιβάλλον μας, μπορούσαμε να ενεργοποιήσουμε μόνο το gadget chain του Spring AOP και να πραγματοποιήσουμε ένα JNDI Injection. Μόλις πραγματοποιηθεί το JNDI Injection, τα υπόλοιπα μέρη των ευπαθειών είναι εύκολα!

Επίθεση στο Facebook

Τώρα έχουμε ένα τέλειο RCE (απομακρυσμένη εκτέλεση κώδικα) συνδυάζοντας τα JNDI Injection, Tomcat BeanFactory και GroovyShell. Ήρθε η ώρα να γίνει το hack στο Facebook!

Ωστόσο, γνωρίζαμε ότι το Facebook χρησιμοποιεί το MobileIron από το 2016. Παρόλο που η απόκριση του server είναι 403 Forbidden now, το Web Service εξακολουθεί να είναι προσβάσιμο!

Μια κρίσιμη ευπάθεια (CVE-2015-3253) στο Groovy 2.4 μας επέτρεψε να επιτύχουμε το RCE με εκμεταλλευση ενός σφάλματος Java deserialization.

Η MobileIron χρησιμοποιεί την έκδοση 1.5.6 του Groovy, η οποία ήταν ευάλωτη στην επίθεση. Ως εκ τούτου, μπορέσαμε να χρησιμοποιήσουμε αυτήν την επίθεση για να χακάρουμε το Facebook.

Πηγή: blog.orange.tw

ΑΦΗΣΤΕ ΜΙΑ ΑΠΑΝΤΗΣΗ

Please enter your comment!
Please enter your name here

Teo Ehc
Teo Ehchttps://www.secnews.gr
Be the limited edition.

LIVE NEWS

Πως να πραγματοποιήσετε μια κλήση Facetime Audio

Έχετε κουραστεί από τις κλήσεις κινητής τηλεφωνίας χαμηλής ποιότητας; Χάρη στο FaceTime, μπορείτε να πραγματοποιείτε κλήσεις υψηλής ανάλυσης αν χρησιμοποιείτε iPhone, iPad,...

Πώς θα προσθέσετε ειδικά εφέ στα μηνύματα του Instagram

Γνωρίζατε ότι μπορείτε να κάνετε τα άμεσα μηνύματα του Instagram πιο εντυπωσιακά; Όπως κάθε άλλη δυνατότητα του Instagram, μπορείτε να προσθέσετε ειδικά...

Μόνο 270 διευθύνσεις είναι υπεύθυνες για το 55% του συνόλου της νομιμοποίησης εσόδων από παράνομες δραστηριότητες

Οι κυβερνοεγκληματίες που διατηρούν τα χρήματά τους σε κρυπτονομίσματα τείνουν να «ξεπλένουν» χρήματα μέσω ενός μικρού συνόλου διαδικτυακών υπηρεσιών, σύμφωνα με την...

Twitter: Έρχονται τα φωνητικά μηνύματα! Πώς θα τα στέλνουμε;

Το Twitter θα υποστηρίζει σύντομα φωνητικά μηνύματα τόσο στην iOS όσο και στην Android εφαρμογή. Αυτό σημαίνει ότι θα μπορείτε να στέλνετε...

Πως να συνδέσετε ακουστικά Bluetooth σε ένα Nintendo Switch

Το Nintendo Switch διαθέτει υποδοχή ακουστικών. Ωστόσο, τα περισσότερα ακουστικά έχουν γίνει ασύρματα οπότε θα χρειαστείτε έναν τρόπο για να συνδέσετε αυτά...

Πώς να αποκρύψετε τον αριθμό τηλεφώνου σας στο Telegram

Εάν επιθυμείτε να δημιουργήσετε ένα λογαριασμό Telegram, πρέπει να δώσετε τον αριθμό τηλεφώνου σας. Με αυτό τον τρόπο, το Telegram επικυρώνει την...

Google Assistant: Πώς μπορείτε να διαγράψετε τις ηχογραφήσεις σας;

Το Google Assistant μπορεί να σας διευκολύνει πολύ στην καθημερινότητά σας. Ωστόσο, συνεπάγεται και κάποια ζητήματα ως προς το απόρρητο, καθώς όσα...

Microsoft: Office 2021 / Office LTSC έρχονται το δεύτερο εξάμηνο του 2021

Η Microsoft ανακοίνωσε ότι θα κυκλοφορήσει μέσα στο 2021 το Microsoft Office Long Term Servicing Channel (LTSC) και το Office 2021, για...

Πώς να δημιουργήσετε με γρήγορο τρόπο QR codes με το Bing

Αν χρειαστεί ποτέ να δημιουργήσετε έναν QR code, αλλά δεν ξέρετε πως, η Microsoft διαθέτει ένα εύχρηστο εργαλείο διαθέσιμο σε οποιοδήποτε πρόγραμμα...

Brave: Διέρρευσαν διευθύνσεις onion σε DNS traffic

Η λειτουργία Tor που περιλαμβάνεται στον Brave web browser, επιτρέπει στους χρήστες να έχουν πρόσβαση σε .onion dark web domains μέσα σε...