Sobrescribiendo un chunk liberado

Reading time: 2 minutes

tip

Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks

Varias de las técnicas de explotación de heap propuestas necesitan poder sobrescribir punteros dentro de chunks liberados. El objetivo de esta página es resumir las vulnerabilidades potenciales que podrían otorgar este acceso:

Uso Simple Después de Liberar

Si es posible para el atacante escribir información en un chunk libre, podrían abusar de esto para sobrescribir los punteros necesarios.

Doble Liberación

Si el atacante puede free dos veces el mismo chunk (liberando otros chunks entre medio potencialmente) y hacer que esté 2 veces en el mismo bin, sería posible para el usuario asignar el chunk más tarde, escribir los punteros necesarios y luego asignarlo de nuevo, desencadenando las acciones del chunk siendo asignado (por ejemplo, ataque de fast bin, ataque de tcache...)

Desbordamiento de Heap

Podría ser posible desbordar un chunk asignado teniendo a continuación un chunk liberado y modificar algunos encabezados/punteros de este.

Desbordamiento Off-by-one

En este caso sería posible modificar el tamaño del siguiente chunk en memoria. Un atacante podría abusar de esto para hacer que un chunk asignado tenga un tamaño mayor, luego free este, haciendo que el chunk sea agregado a un bin de un tamaño diferente (mayor), luego asignar el tamaño falso, y el ataque tendrá acceso a un chunk con un tamaño que es mayor de lo que realmente es, otorgando por lo tanto una situación de chunks superpuestos, que es explotable de la misma manera que un desbordamiento de heap (ver sección anterior).

tip

Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks