완료됨
띠용?

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

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
avatar
Crescendo0709
강의 수강: 10

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

2021.02.04. 17:25