Открыть список
Как стать автором
Обновить

Комментарии 4

(gdb) info register

rsp 0x7fffffffde90 0x7fffffffde90

(gdb) x/100x 0x7fffffffde90

Можно просто x/100x $rsp. А ещё лучше x/100xg чтобы выводил 64битные слова.

между %rip, %rbp и доступным для записи буфером на стек помещается известное компилятору значение

Компилятору это значение конечно же неизвестно.

PS: зачем было заворачивать код в func?
PS: зачем было заворачивать код в func?

Так лучше видно на стеке адрес возврата, который мы будем перезаписывать, т.к. он находится внутри main, а не в libc
0x7fffffffdea0: 0xffffdec0 0x00007fff 0x00400611 0x00000000

400611: c9 leaveq
2015 год — статья про РОП 8) А вообще не плохо, на Хабре вроде не было, хотя не уверен.
Конечно неплохо — детальное объяснение, с примерами, на русском языке.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.