Information*/알면도움됨

pwntools gdb 붙이기

ch4rli3kop 2018. 10. 30. 01:25
반응형

python script의 pid를 이용하여 gdb -p 로 사용할 수도 있지만, 소중한 내 에너지를 위해 더 편하게 디버깅을 진행할 수 있는 방법을 찾아보았다.


pwntools에서 제공하는 gdb.attach를 이용해서 script를 실행하면서 gdb를 뚝딱 붙여주는 게 가능하다.

그냥 gdb.attach(process, 'b* 0x4000000') 이런식으로 사용해주면 됨.

좀 더 편하게 사용하는 버전은
breakpoint = { 'add_note':0x400ae8, 'add1':0x400c0b, 'edit_note':0x400c88, 'remove_note':0x400e50, 'view_note':0x400f0a }

r = process("./yawn_patched", env = {'LD_PRELOAD':'./libc.so.6'})


~~~
gdb.attach(r,'b* {}'.format(breakpoint['add_note']))
~~~

ㅣ뭐 이런 식으로 하면 아주아주 편함!

근데 사실 저게 그냥 저 위치에서 멈추기만 할뿐이지 breakpoint가 실제 설정되는 것은 아니므로 gdb 창이 뜨면 breakpoint를 걸어줘야함! 브포걸기 이전에 입력이 있으면 걸리고 없으면 브포 설정이 안돼고 머 이러는거 같음;;






반응형