龙岗营销型网站建设,wordpress 提前8小时,dw网页制作模板素材,微信管理平台登录https://github.com/NationalSecurityAgency/ghidra ghidra是一个so的逆向工具#xff0c;功能和jadx-gui类似#xff0c;但是和jadx-gui专注于java层的不同#xff0c;ghidra专注于native层的代码反编译#xff08;从二进制到c语言#xff09;。
一、 安装
准备好java1… https://github.com/NationalSecurityAgency/ghidra ghidra是一个so的逆向工具功能和jadx-gui类似但是和jadx-gui专注于java层的不同ghidra专注于native层的代码反编译从二进制到c语言。
一、 安装
准备好java17的环境mac: brew install openjdk17软件基于java是跨平台的Github下载从github上的release下载最新版本的ghidra解压执行 ./ghidraRun 即可打开。 使用zsh可以在~/.zshrc中配置这个alias可以快速打开 alias ghidra“/Users/${your_name}/Applications/ghidra_11.0.3_PUBLIC/ghidraRun” 二、基本使用 打开后点击file new project按指引选中项目和存放暂存文件的目录。 选中import file导入要逆向的so比如如下导入了libyeshen.so 双击so即打开工程 mac用户注意下打开允许使用 功能区说明 a. 左边是导出的方法我是从入口方法开始看起下面还有Functions也是一堆堆方法 b. 中间部分是静态地址和汇编指令。静态地址很关键运行时hook、查看入参出参都需要对这个地址做操作。点击 “G” 按键可以输入地址回车即可跳到目标地址。 c. 反编译出来的C代码含有程序的逻辑信息看起来是比较辛苦当时可以看个大概大概… d. 搜索so中的字符串信息可以这样搜索 i. 点击search 点击memoryii. 找到地址上的数据iii. 右键Reference - show reference to DAT_xxxxxiv. 双击看到的地址即可跳到使用这个地址的地方备注和修改名字都是右键出菜单选中改名/改备注。考虑到复杂一点的so可能一天分析不完所以增加备注修改函数名字可以加速分析、暂存分析过程。