How to debug when developing scripts with pwntools
The first problem you encounter when you start to learn some pwntools is how to debug the program under test.
Later, I learned that the solution is:
1. Use the proc.pidof (p) function to print out the PID of the function under test.
2. You can debug it with GDB Attach.
The example code is as follows:
From pwn import * import binasciielf = ELF ('robot.msm') p = process ('. / robot.msm') libc = ELF ('libc.so.6') # p = remote (' 127.0.0.1' 10001) got_write = elf.got ['write'] got_read = elf.got [' read'] main = 0x4008D8bss_addr = 0x601070off_system_addr = libc.symbols ['write']-libc.symbols [' system'] print "pid" + str (proc.pidof (p)) raw_input ("attach me")
The GDB Attach command on ubuntu 14 is as follows:
Sudo gdb attach 1234