House of Lore | Small bin Attack

Υποστηρίξτε το HackTricks

Βασικές Πληροφορίες

Κώδικας

Στόχος

  • Εισαγωγή ενός ψεύτικου μικρού κομματιού στον μικρό bin ώστε να είναι δυνατή η εκχώρησή του. Σημειώστε ότι το μικρό κομμάτι που προστέθηκε είναι αυτό που δημιουργεί ο επιτιθέμενος και όχι ένα ψεύτικο σε μια αυθαίρετη θέση.

Απαιτήσεις

  • Δημιουργήστε 2 ψεύτικα κομμάτια και συνδέστε τα μεταξύ τους και με το νόμιμο κομμάτι στον μικρό bin:

  • fake0.bk -> fake1

  • fake1.fd -> fake0

  • fake0.fd -> legit (χρειάζεται να τροποποιήσετε ένα δείκτη στο απελευθερωμένο μικρό κομμάτι bin μέσω κάποιας άλλης ευπάθειας)

  • legit.bk -> fake0

Τότε θα μπορείτε να εκχωρήσετε το fake0.

Επίθεση

  • Ένα μικρό κομμάτι (legit) εκχωρείται, στη συνέχεια εκχωρείται ένα άλλο για να αποτρέψει τη συγχώνευση με το κομμάτι κορυφής. Στη συνέχεια, το legit απελευθερώνεται (μετακινώντας το στη λίστα αταξινόμητων κομματιών) και εκχωρείται ένα μεγαλύτερο κομμάτι, μετακινώντας το legit στον μικρό bin.

  • Ένας επιτιθέμενος δημιουργεί μερικά ψεύτικα μικρά κομμάτια και κάνει την απαραίτητη σύνδεση για να παρακάμψει τους έλεγχους ακεραιότητας:

  • fake0.bk -> fake1

  • fake1.fd -> fake0

  • fake0.fd -> legit (χρειάζεται να τροποποιήσετε ένα δείκτη στο απελευθερωμένο μικρό κομμάτι bin μέσω κάποιας άλλης ευπάθειας)

  • legit.bk -> fake0

  • Εκχωρείται ένα μικρό κομμάτι για να πάρει το legit, κάνοντας το fake0 στην κορυφή της λίστας των μικρών κομματιών

  • Εκχωρείται άλλο ένα μικρό κομμάτι, παίρνοντας το fake0 ως ένα κομμάτι, επιτρέποντας ενδεχομένως την ανάγνωση/εγγραφή δεικτών μέσα σε αυτό.

Αναφορές

Υποστηρίξτε το HackTricks

Last updated