ghidra_scripts_cha11
Ghidra变强术,一个Ghidra脚本库
前言
-
以下脚本均在Mac下完成,对其他系统可能存在不适配性能,这里提供代码,仅供参考,大家可根据自己的需求自行修改,涉及Python库自行安装,这些功能都是平常个人使用频率较高的,刷题嘎嘎香。
-
所有Python代码均基于Python3,如无法使用请参考《Ghidra之 什么?为啥你的Ghidra是Python3》https://mp.weixin.qq.com/s/c8LMwNIK3CEVDA3FJo-lLg切换默认Python(默认的是jpython)。
导入脚本文件夹
勾选脚本
菜单栏路径
Ghidra自动化操作
在使用Ghidra的过程中会存在一些重复性的工作,该模块有助于节约生命。
Cha111Ng1.py
一个查看当前二进制文件信息的脚本(这里对不齐!!!希望你是个强迫症)
运行效果
buuctf_cha11.py
BUUCTF刷题脚本,半自动下载题目,开启靶机,提交flag,关闭靶场,查找资料
脚本需修改
飞书安装路径或钉钉安装路径,以及BUUCTF登录凭证信息,BUUCTF题根目录
运行效果
code_exp.py
脚本需修改
你可能需修改为你vscode的安装路径
运行效果
ida_cha11.py
自动使用32/64位IDA打开二进制文件进行分
脚本需修改
修改为你IDA的安装路径
运行效果
update_docker.py
进入docker容器分析,其中需要配置的内容有,设置你的容器ID,以及创建容器时,做好文件夹和端口的映射,我这里使用的docker容器是pwntools,大家可以参考,不过M1环境下的docker里面的gdb无法使用,后面我选择了QEMU
docker run -tid --cap-add=SYS_PTRACE --security-opt seccomp=unconfined --name cha11pwn2 -p 1337:1337 -v /Users/root/tools/tool/03SmartSpace/CTF/CTF-刷题:/home/pwntools/ pwntools/pwntools
脚本需修改
创建容器后,代码中修改位置图中第59行,修改为你的容器ID或名称
运行效果
update_qemu.py
进入qemu虚拟机分析,M1配置qemu安装x86虚拟机相关教程请参见:https://mp.weixin.qq.com/s/jMFMYB1aZaljZ_HtKZxPKg
脚本需修改
参考update_vps.py
运行效果
update_vps.py
上传至VPS分析
脚本需修改
运行效果
Ghidra自动化分析
敬请期待...
拓展资料
《GhidraAPI文档》
《Ghidra之 什么?为啥你的Ghidra是Python3》:https://mp.weixin.qq.com/s/c8LMwNIK3CEVDA3FJo-lLg
《Ghidra之 什么?你的M1为啥可以gdb》:https://mp.weixin.qq.com/s/jMFMYB1aZaljZ_HtKZxPKg