mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
24 lines
3.3 KiB
Markdown
24 lines
3.3 KiB
Markdown
# Επικαλύπτοντας ένα ελεύθερο κομμάτι
|
||
|
||
{{#include ../../banners/hacktricks-training.md}}
|
||
|
||
Πολλές από τις προτεινόμενες τεχνικές εκμετάλλευσης σωρού χρειάζονται τη δυνατότητα να επικαλύπτουν δείκτες μέσα σε ελεύθερα κομμάτια. Ο στόχος αυτής της σελίδας είναι να συνοψίσει τις πιθανές ευπάθειες που θα μπορούσαν να παραχωρήσουν αυτή την πρόσβαση:
|
||
|
||
### Απλή Χρήση Μετά την Ελευθέρωση
|
||
|
||
Εάν είναι δυνατόν για τον επιτιθέμενο να **γράψει πληροφορίες σε ένα ελεύθερο κομμάτι**, θα μπορούσαν να το εκμεταλλευτούν αυτό για να επικαλύψουν τους απαραίτητους δείκτες.
|
||
|
||
### Διπλή Ελευθέρωση
|
||
|
||
Εάν ο επιτιθέμενος μπορεί να **`ελευθερώσει` δύο φορές το ίδιο κομμάτι** (ελευθερώνοντας άλλα κομμάτια ενδιάμεσα πιθανώς) και να το κάνει **2 φορές στην ίδια δεξαμενή**, θα ήταν δυνατό για τον χρήστη να **κατανεμηθεί το κομμάτι αργότερα**, **να γράψει τους απαραίτητους δείκτες** και στη συνέχεια **να το κατανεμηθεί ξανά** ενεργοποιώντας τις ενέργειες του κομματιού που κατανεμήθηκε (π.χ. επίθεση γρήγορης δεξαμενής, επίθεση tcache...)
|
||
|
||
### Υπερχείλιση Σωρού
|
||
|
||
Ενδέχεται να είναι δυνατό να **υπερχυλίσει ένα κατανεμημένο κομμάτι που έχει δίπλα του ένα ελεύθερο κομμάτι** και να τροποποιήσει κάποιες κεφαλίδες/δείκτες του.
|
||
|
||
### Υπερχείλιση Off-by-one
|
||
|
||
Σε αυτή την περίπτωση θα ήταν δυνατό να **τροποποιηθεί το μέγεθος** του επόμενου κομματιού στη μνήμη. Ένας επιτιθέμενος θα μπορούσε να το εκμεταλλευτεί αυτό για να **κάνει ένα κατανεμημένο κομμάτι να έχει μεγαλύτερο μέγεθος**, στη συνέχεια **`ελευθερώσει`** το, κάνοντάς το κομμάτι να **προστεθεί σε μια δεξαμενή διαφορετικού** μεγέθους (μεγαλύτερου), στη συνέχεια να κατανεμηθεί το **ψεύτικο μέγεθος**, και η επίθεση θα έχει πρόσβαση σε ένα **κομμάτι με μέγεθος μεγαλύτερο** από αυτό που είναι πραγματικά, **παρέχοντας έτσι μια κατάσταση επικαλυπτόμενων κομματιών**, η οποία είναι εκμεταλλεύσιμη με τον ίδιο τρόπο όπως μια **υπερχείλιση σωρού** (δείτε την προηγούμενη ενότητα).
|
||
|
||
{{#include ../../banners/hacktricks-training.md}}
|