wargame
Plaid CTF 2015 - ebp (pwnable160)
바이너리 파일을 xinet.d에 등록한다. $echo "fsb 3333/tcp" >> /etc/services $service xinetd restart main()안 에서 fgets로 buf에 1024만큼 입력 값을 받고 echo()를 호출하고 echo()안 에서 make_response()를 호출하여 buf의 내용을 전역변수 response에 출력한다. (옮겨담는다) 그후 puts(response)로 response의 값을 출력하게 된다. snprintf > puts()에서 포맷스트링 버그가 일어난다. gdb로 테스트 해보겠다. 브레이크포인터를 0x0804851a에 걸고 run시킨후 AAAA %x %x %x %x %x %x를 입력해보겠다. 스택의 상황을 보면 esp에 0x804a480(스택의 주소)가..
2016. 6. 1. 03:38