Tengo una asignación donde debo explotar una vulnerabilidad de desbordamiento de búfer en una máquina remota. Solo tengo permiso de ejecución en el programa, así que no puedo usar gdb. Me las arreglé para tomar el control de la copia y puedo desbordar y escribir con éxito mi propia dirección. Mi shellcode está listo (tiene la pila ejecutable y ASLR deshabilitado) pero no puedo encontrar la dirección correcta para regresar. Es una máquina de 64 bits, por lo que el relleno nop no es una opción. El objetivo principal es acceder a un archivo de registro que el ejecutable actualiza cada vez que se ejecuta. (Es una misión universitaria, no te preocupes por acciones ilegales)
¿Qué puedo hacer? ¿Hay una manera de calcular la dirección de memoria del búfer, o de otra manera? Cualquier ayuda sería apreciada