创建一个项目
这是项目窗口。
在完成工作之前你需要创建一个项目。
这里可以选择独自或者与团队一起。
决定将项目储存在何处并命名。
现在你可以导入项目了
导入程序
你可以从这里去导入,也可以直接拖拽进去。
如果可以自动检测到,Ghidra会填充文件格式和微处理器语言。
有时你可以在导入时,导入和链接外部库。
此窗口提供有关您的程序信息的摘要↑
project file name # 项目文件名
last modified # 上一次更改
readonly # 只读
program name # 程序名称
language ID # 语言ID
compiler ID # 编译器ID
processor # 处理器
endian # 尾数
address size # 地址大小
minimum address # 最小地址
maximum address # 最大地址
of bytes # 字节数
of memory blocks # 的内存块
of instructions # 指示
of functions # 功能的
of symbols # 符号的
of data types # 数据类型
of data type categories # 数据类型类别
created with ghidra version # 使用ghidra版本创建
data created # 数据创建
elf file type # elf文件类型
eif original image base # elf原始图像库
elf prelinked # elf预链接
elf required library[0] # elf必需的库[0]
elf source file[0] # elf源文件[0]
elf source file[1] # elf源文件[1]
elf source file[2] # elf源文件[2]
executable format # 可执行格式
executable location # 可执行位置
executable MD5 # 可执行文件MD5
executable SHA256 # 可执行的SHA256
FSRL # FSRL
Relocatable # 可移动的
现在我们可以再工具中打开程序了
打开工具:
这是带有Chidra默认工具和您创建的工具的工具箱
我们把文件拖放到工具相处就可以打开程序了
如果尚未分析您的程序,则会打开。
此对话框包含所有分析仪的列表,并允许您更改其选项
Aggressive Instruction Finder (Prototype) #激进指令查找器(原型)
Apply Data Archives #应用数据档案
根据程序信息应用已知的数据类型档案。
ASCII Strings #ASCII字符串
该分析器搜索有效的ASCII字符串,并自动在二进制文件中创建它们。
|
|-eate strings containing existing str...
|吃包含现有字符串的字符串...
|-Create strings containing references
|创建包含引用的字符串
|
|-force model reload
|力模型重装
|
|-minimum string length
|最小字符串长度
|
|-model file
|模型文件
|
|-require null termination for string
|要求字符串终止为空
|
|-search only in accessible memory blocks
|仅在可访问的内存块中搜索
|
|-string end alignment
|弦末端对齐
|
|-string start alignment
|字符串开始对齐
|
Call Convention Identification #通话惯例识别
使用反编译器找出未知的调用约定。
|nalysis Decompiler Timeout
|分析反编译器超时的设置
|
Call-Fixup Installer #呼叫修复安装程序
|安装编译器规范定义的Call-Fixup,并修复所有调用Non-Returning或CallFixup函数的函数
|
Condense Filler Bytes (Prototype) #压缩填充字节(原型)
|该分析器查找函数之间的填充字节并将其折叠
|
|
Create Address Tables #创建地址表
分析地址表的未定义数据。
|-Allow Offcut References
|允许附加参考
|
|-Auto Label Table
|自动标签表
|
|-Create Analysis Bookm..
|创建分析书
|
|-Maxmimum Pointer Dist..
|最大指针距离
|
|-Minimum Pointer Address
|最小指针地址
|
|-Minimum Table Size
|最小桌子尺寸
|
|-Pointer Alignment
|指针对齐
|
|-Relocation Table Guide
|搬迁表指南
|
|-Table Alignment
|表格对齐
|
Data Reference #资料参考
Decompiler Parameter ID #反编译器参数ID
Decompiler Switch Analysis #反编译器开关分析
Demangler #德曼格勒
Disassemble Entry Points #拆卸入口点
DWARF #矮人
ELF Scalar Operand References #ELF标量操作数参考
Embedded Media #嵌入式媒体
External Entry References #外部条目参考
Function ID #功能编号
Function Start Search #功能开始搜索
GCC Exception Handlers #GCC异常处理程序
Non-Returning Functions - Discovered #止回功能-发现
Non-Returning Functions - Known #止回功能-已知
Reference #参考
Shared Return Calls #共享回叫
Stack #叠放
Subroutine References #子程序引用
x86 Constant Reference Analyzer #x86常数参考分析仪
X86 Function Callee Purge #X86函数被调用者清除
单击此处使用默认选项
这里会显示每个分析仪的进度。(我这边已经加载完了)
单击这里可以取消分析。
这是默认的代码浏览器工具。它包含许多用于启用静态软件逆向工程的插件。
这是程序树,它显示了程序结构,并允许导航和自定义组织。
这是函数树,它可以查找函数和导航。
这是数据类型管理器。它使查找/应用和创建数据类型成为可能。
按’G’键导航到加法器或者标签,或使用通配符,弹出包含一组标签的可导航表。
这个中间的窗口是清单。它显示了当前程序的组装视图。
你选择的行用绿色标识出来。
同时他会在反编译器C语言代码中标识出来你选中的汇编代码的位置。
这是脚本输出控制台。
Ghidra提供了广泛的帮助,其中包含有关这些窗口和Ghidra其他许多功能的更多详细信息。F1可以使用帮助。
F1可以使用帮助。