Use After Free
Información Básica
Como su nombre indica, esta vulnerabilidad ocurre cuando un programa reserva un espacio en el heap para un objeto, escribe alguna información allí, lo libera aparentemente porque ya no se necesita y luego accede a él nuevamente.
El problema aquí es que no es ilegal (no habrá errores) cuando se accede a una memoria liberada. Por lo tanto, si el programa (o el atacante) logra asignar la memoria liberada y almacenar datos arbitrarios, al acceder a la memoria liberada desde el puntero inicial, esos datos habrán sido sobrescritos causando una vulnerabilidad que dependerá de la sensibilidad de los datos que se almacenaron originalmente (si era un puntero de una función que iba a ser llamada, un atacante podría controlarlo).
Otras Referencias y Ejemplos
ARM64. Uso después de liberar: Generar un usuario, liberarlo, reutilizar el mismo fragmento sobrescribiendo la posición de la contraseña del usuario del anterior. Reutilizar el usuario para burlar la verificación de contraseña
Última actualización