Tengo un problema al intentar sobrescribir el EIP (desbordamiento del búfer básico de 64 bits) con una dirección 0x0000000000400546 que es una función que se encuentra en el mismo programa ... el EIP está en 88 bytes ... así que mi código en gdb será:
gdb > r python -c 'print "A"*88 + "\x46\x05\x40\x00\x00\x00\x00\x00"'
Finalmente obtengo la dirección modificada a: 0x00007fff00400546
Señal recibida programa SIGSEGV, fallo de segmentación. 0x00007fff00400546 en ?? ()
¿Por qué se modifica con el 7fff en el medio? ¿Y cómo apuntar a esta dirección específica?