PEDA
PEDA - 针对GDB的Python漏洞利用开发协助
主要特点:
- 增强gdb的显示:在调试过程中着色并显示反汇编代码,寄存器和内存信息。
- 添加命令以支持调试和利用开发(有关命令的完整列表,请使用
peda help):aslr- 显示/设置GDB的ASLR设置checksec- 检查二进制的各种安全选项dumpargs- 显示在调用指令处停止时传递给函数的参数dumprop- 将所有ROP小工具转储到特定的内存范围内elfheader- 从调试的ELF文件中获取标头信息elfsymbol- 从ELF文件中获取非调试符号信息lookup- 搜索属于内存范围的地址的所有地址/引用patch- 补丁内存从字符串/ hexstring / int开始pattern- 生成,搜索或写入循环模式到内存procinfo- 显示来自/ proc / pid /的各种信息pshow- 显示各种PEDA选项和其他设置pset- 设置各种PEDA选项和其他设置readelf- 从ELF文件中获取标头信息ropgadget- 获取二进制或库的常见ROP小工具ropsearch- 在内存中搜索ROP小工具searchmem|find- 在内存中搜索模式; 支持正则表达式搜索shellcode- 生成或下载常见的shellcode。skeleton- 生成python漏洞利用代码模板vmmap- 在调试过程中获取部分的虚拟映射地址范围xormem- 使用密钥对存储区域进行异或
安装
git clone https://github.com/longld/peda.git ~/peda
echo "source ~/peda/peda.py" >> ~/.gdbinit
echo "DONE! debug your program with gdb and enjoy"
GDB-peda调试总汇
-
break *0x400100 (b main):在 0x400100 处下断点tb一次性断点info b:查看断点信息delete [number]:删除断点watch *(int *)0x08044530:在内存0x0804453处的数据改变时stop -
x /4xg $ebp:查看ebp开始的4个8字节内容(b:单字节,h:双字节,w:四字节,g:八字节;x:十六进制,s:字符串输出,i:反汇编,c:单字符) -
p $eax:输出eax的内容set $eax=4:修改变量值 -
c:继续运行r:重新开始运行ni:单步步过si:单步步入fini:运行至函数刚结束处return expression:将函数返回值指定为expression -
bt:查看当前栈帧 -
info f:查看当前栈帧 -
context:查看运行上下文 -
stack:查看当前堆栈 -
call func:强制函数调用 -
ropgagdet:找common rop -
vmmap:查看虚拟地址分布 -
shellcode:搜索,生成shellcode -
ptype struct link_map:查看link_map定义 -
p &((struct link_map*)0)->l_info:查看l_info成员偏移
本文介绍PEDA,一款增强GDB功能的Python插件,用于漏洞利用开发。PEDA提供丰富的命令集,如检查安全选项、ROP小工具搜索、shellcode生成等,简化调试流程。安装简单,只需几步即可在GDB环境中使用。

1500

被折叠的 条评论
为什么被折叠?



