hacktricks/binary-exploitation/heap/house-of-lore.md

4.9 KiB

Maison de Lore | Attaque Small bin

Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)!

Autres façons de soutenir HackTricks :

Informations de base

Code

Objectif

  • Insérer un faux petit chunk dans le small bin pour ensuite pouvoir l'allouer.
    Notez que le petit chunk ajouté est celui que l'attaquant crée et non un faux à une position arbitraire.

Exigences

  • Créer 2 faux chunks et les lier entre eux et avec le chunk légitime dans le small bin :
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (vous devez modifier un pointeur dans le chunk du small bin libéré via une autre vulnérabilité)
  • legit.bk -> fake0

Vous pourrez ensuite allouer fake0.

Attaque

  • Un petit chunk (legit) est alloué, puis un autre est alloué pour empêcher la consolidation avec le chunk supérieur. Ensuite, legit est libéré (le déplaçant vers la liste non triée) et un chunk plus grand est alloué, le déplaçant vers le small bin.
  • Un attaquant génère quelques faux petits chunks et effectue les liens nécessaires pour contourner les vérifications de cohérence :
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (vous devez modifier un pointeur dans le chunk du small bin libéré via une autre vulnérabilité)
  • legit.bk -> fake0
  • Un petit chunk est alloué pour obtenir legit, plaçant fake0 en tête de la liste des petits bins
  • Un autre petit chunk est alloué, obtenant fake0 en tant que chunk, permettant potentiellement de lire/écrire des pointeurs à l'intérieur.

Références

Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)!

Autres façons de soutenir HackTricks :