title: gdb插件配置
参考链接:
https://blog.csdn.net/qq_39153421/article/details/115386527
https://blog.csdn.net/weixin_43092232/article/details/105648769
安装pwngdb
cd ~/
git clone https://github.com/scwuaptx/Pwngdb.git
其支持的命令如下
libc : Print the base address of libc
ld : Print the base address of ld
codebase : Print the base of code segment
heap : Print the base of heap
got : Print the Global Offset Table infomation
dyn : Print the Dynamic section infomation
findcall : Find some function call
bcall : Set the breakpoint at some function call
tls : Print the thread local storage address
at : Attach by process name
findsyscall : Find the syscall
fmtarg: Calculate the index of format string
You need to stop on printf which has vulnerability.
force : Calculate the nb in the house of force.
heapinfo : Print some infomation of heap
heapinfo (Address of arena)
default is the arena of current thread
If tcache is enable, it would show infomation of tcache entry
heapinfoall : Print some infomation of heap (all threads)
arenainfo : Print some infomation of all arena
chunkinfo: Print the infomation of chunk
chunkinfo (Address of victim)
chunkptr : Print the infomation of chunk
chunkptr (Address of user ptr)
mergeinfo: Print the infomation of merge
mergeinfo (Address of victim)
printfastbin : Print some infomation of fastbin
tracemalloc on : Trace the malloc and free and detect some error .
You need to run the process first than tracemalloc on, it will record all of the malloc and free.
You can set the DEBUG in pwngdb.py , than it will print all of the malloc and free infomation such as the screeshot.
parseheap : Parse heap layout
magic : Print useful variable and function in glibc
fp : show FILE structure
fpchain: show linked list of FILE
orange : Test house of orangecondition in the _IO_flush_lockp
orange (Address of FILE)
glibc version <= 2.23
安装pwndbg
git clone https://github.com/pwndbg/pwndbg
cd pwndbg
./setup.sh
安装peda
git clone https://github.com/longld/peda.git
安装gef
git clone https://github.com/hugsy/gef.git
pwngdb与pwndbg的联合使用
在home目录下的.gdbinit文件里面是没有pwndbg信息的(如果安装的时候没写进去的话)
cp ~/Pwngdb/.gdbinit ~/ #将pwngdb中的gdbinit文件复制到根目录处
p
支付5UD,阅读全文
还有更多的精彩内容,作者设置为付费后可见