Binbloom
Binbloom是一款针对二进制源码的固件分析软件,该工具旨在帮助广大研究人员分析固件的二进制源码,并自动化判断目标固件中的某些功能特性。该工具兼容所有常见的系统架构,因为该工具只会对目标固件进行简单的特性统计。
为了计算出加载地址,在使用Binbloom之前,我们还需要一些外部逆向工程分析工具来帮助我们提取目标固件中的潜在函数列表。
功能特性
加载地址:
Binbloom可以解析原始二进制固件并确定其加载地址。
字节顺序:
Binbloom可以使用一些启发式算法来确定目标固件的字节顺序。
UDS数据库:
Binbloom可以解析原始二进制固件,并检查它是否存在有包含UDS命令id的数组。
工具下载/安装
首先,广大研究人员需要使用下列命令将该项目源码克隆至本地:
git clone https://github.com/quarkslab/binbloom.git
cd binbloom
接下来,使用下列命令构建最新版本的Binbloom:
mkdir build
cd build
cmake ..
make
最后,使用下列命令安装最新版本的Binbloom(仅支持Linux系统):
make install
工具使用
判断字节顺序:
binbloom -f firmware.bin -e
运行上述命令后,Binbloom将返回下列的输出数据:
Loaded firmware.bin, size:624128, bit:fff00000, 000fffff, nb_segme