Для моего задания hw я пытаюсь использовать файл c переполнения. Я не могу редактировать исходный файл, и я также не могу его перекомпилировать.
Я добрался до того, что вернулся по намеченному адресу. Однако после того, как он выполнил код некоторое время, я получаю следующее:
0xffffcc38 pop %eax
0xffffcc39 push %eax
0xffffcc3a pop %ecx
→ 0xffffcc3b xor 0x30(%ebp), %eax
0xffffcc3e xor %eax, 0x30(%ebp)
0xffffcc41 xor %esi, 0x30(%ebp)
0xffffcc44 xor 0x30(%ebp), %esi
0xffffcc47 pop %ax
0xffffcc49 push $0x68736538
0xffffcc3b in ?? ()
gef➤
Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
Он работал нормально с 0xffffcc30-> 0xffffcc3a, но внезапно остановился на 0xffffcc3b. Могу ли я узнать, почему это могло произойти?