띠용?

공격은 성공했는데 의문점이 있습니다

buf             = byte ptr -20h
var_8           = qword ptr -8
---
lea     rax, [rbp+buf]
mov     edx, 2Eh ; '.'  ; nbytes
mov     rsi, rax        ; buf
mov     edi, 0          ; fd
 call    _read

이렇게 되면 마지막 ret가 2bytes 가 짤릴텐데 어떻게 공격이 성공되는지 궁금합니다

#pwnable
작성자 정보
답변 1
avatar
Crescendo0709
강의 수강: 10

ret address에 기존에도 __libc_start_main의 주소가 들어있고 이 주소는 라이브러리 주소에 들어있으므로 상위 두세바이트쯤은 같을겁니다. 게다가 주소가 최상위 두바이트는 0x0000이라 더욱 그럴거구요
0x00007ffff7df50b3 <-- 요로코롬 생겼습니다

2021.02.04. 17:25
질문에 대한 답을 알고 계신가요?
지식을 나누고 포인트를 획득해보세요.
답변하고 포인트 받기