Problema con la explotación del desbordamiento del búfer: no se puede encontrar el búfer libre para su uso

0

Esto no es una publicación duplicada, vi la otra publicación y no es el mismo problema:

  

Desbordamiento de búfer no tener suficiente espacio para explotar después de estrellarse

Tengo ejercicio de desbordamiento de búfer. Después de un poco de confusión, bloqueo la aplicación con éxito y sobrescribo los 4 bytes exactos del EIP, luego el éxito de jmp a ESP que contiene parte de mi carga (el inicio de la carga útil de 40 bytes, también noté que EBP también se vincula a mi otro parte de la carga útil, pero también esta parte es de 40 bytes (con éxito puedo redirigir el flujo a la parte de shellcode de EBP o la parte después de eip).

Intenté ejecutar Egg-Hunter, pero debido a su Windows x64, el código de shell del cazador tiene una longitud de 46 bytes, por lo que no puede ejecutarse con el espacio de 40 bytes que tengo, y tampoco encontré ninguna indicación de mi resto del búfer que el cazador lo encontrará.

También lo probé en la máquina x86 y ejecuté con éxito el cazador de huevos, pero todavía tengo el límite de tamaño para la carga útil, también realicé una búsqueda manual con el depurador para el resto de la carga útil y no hay nada, solo 40 bytes.

Este es mi búfer:

buffer="A" * 7 + ret + "^" + "B" * 1000 (solo 40 utilizables)

  • "^" es el símbolo que causa el bloqueo
  • sobrescribir eip después de 7 bytes
  • B es el resto de la carga útil, pero solo se pueden usar 40 bytes, el resto son simplemente de corte
  • buffer="A" * 7 + ret + aquí también puedo poner 40 bytes + "^" + "B" * 1000, lo probé con el cazador de huevos y sus trabajos, pero Todavía he aterrizado por poco amortiguador y el mismo problema ...

¿Alguna idea?

Gracias

    
pregunta Yossi 16.11.2018 - 22:01
fuente

0 respuestas

Lea otras preguntas en las etiquetas