728x90

Angrybird 라는 문제를 풀어봤다! 바이너리 패치하는거도 재미있었고 뭔가 

나 Angr로 풀어주세요~ 하게 생겨서 Angr을 돌리니 플래그가 떴다!!!


import angr


p = angr.Project('./angrybird')
init = p.factory.blank_state(addr=0x4007ed)
d = p.factory.path_group(init)
ex = d.explore(find=0x404FC1)

print ex.found[0].state.posix.dumps(1)


요런 스크립트를 쓱 돌리면 풀리는데 find 에는 플래그가 출력되게 하는 주소를 입력해주고, addr= 에는 연산이 시작되는 지점을 입력하고

find=에는 플래그를 출력해주는 주소를 넣어주면 된다. d = p.factory.path_group(init) 이 코드에 threads=4 를 넣어주면 오류가 뜬다ㅠㅠ 왜 뜨는진 잘 모르겠다. 구글링해보니 angr 문제라는 글도있고...

'PWN > TIP' 카테고리의 다른 글

IOT BUG BOUNTY  (0) 2019.02.16
ORANGE ORANGE ORANGE  (0) 2019.01.29
Poison Null byte 나름대로 정리 글(추가중)  (0) 2019.01.21
libformatstr  (0) 2019.01.18
python ctypes  (0) 2018.11.30