¿Es una victoria para un atacante, si se desborda el búfer malloc'd más reciente en el montón?

1

Si llamo a malloc y luego desbordo el búfer que he creado, entonces estoy escribiendo en la memoria no utilizada. ¿Hay algún impacto en la seguridad de mi poder hacerlo? Pensaría que querría llamar a malloc dos veces y luego desbordar el primer búfer que asignó. De esa manera, puede sobrescribir los metadatos de administración del montón en el segundo búfer, u otros datos en el segundo búfer.

EDITAR: Supongamos que solo puedo desbordar un kilobyte y esto es un Debian Wheezy. El montón y la pila están muy separados.

    
pregunta returneax 24.07.2017 - 19:24
fuente

1 respuesta

1

Una victoria para un atacante es un término un tanto vago.

Dependiendo de otras medidas de seguridad, posiblemente podría llenar la memoria y desbordar la pila. O podría inicializar la memoria que podría usarse más adelante con ciertos valores. O bien, podría hacer que cualquier entrada en este lugar sea demasiado grande y que otro código falle, que se basa en su tamaño.

La explotación por lo general se basa en una combinación cuidadosa de muchas cosas y las personas encuentran formas muy creativas de utilizar incluso los errores más inocuos.

Incluso se han explotado los desbordamientos de un solo byte.

¿Es una victoria? Depende de las circunstancias. ¿Es un problema? Definitivamente.

    
respondido por el Elias 24.07.2017 - 19:57
fuente

Lea otras preguntas en las etiquetas