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

4.1 KiB

Casa de Lore

Aprende hacking en AWS de cero a héroe con htARTE (Experto en Equipos Rojos de AWS de HackTricks)!

Otras formas de apoyar a HackTricks:

Información Básica

Código

Objetivo

  • Insertar fragmentos pequeños falsos en el contenedor pequeño para luego poder asignarlo.

Requisitos

  • Crear fragmentos falsos
  • Conocer la dirección del fragmento víctima y de los fragmentos falsos
  • Ser capaz de modificar los punteros bk y fd

Ataque

  • Se asigna un fragmento pequeño víctima
  • Un atacante genera un par de fragmentos pequeños falsos, y hace que el primer fragmento falso apunte con fd a un fragmento real y con bk al segundo fragmento falso. También hace que el bk del segundo fragmento falso apunte al primero.
  • Luego, se asigna un nuevo fragmento grande para evitar que el primero se fusione en el fragmento superior al liberarse
  • Después, se libera el puntero inicial y se asigna un segundo puntero de un tamaño mayor para que el fragmento pequeño liberado inicialmente se coloque en el contenedor pequeño.
  • Se modifica el fragmento pequeño real para que su puntero bk apunte al falso.
  • Luego, cuando se asignan 2 fragmentos de este tamaño, obtienen primero el fragmento válido y luego el fragmento inválido de alguna manera controlado por el atacante.

Referencias

Aprende hacking en AWS de cero a héroe con htARTE (Experto en Equipos Rojos de AWS de HackTricks)!

Otras formas de apoyar a HackTricks: