在打ctf杂项题中,我们通常需要对一个文件进行分析、分离等操作。这时,工具binwalk就能发挥巨大的作用。
我刚开始安装binwalk时,选择的是Windows10系统安装,但总是出现各种问题,如:在GitHub中无法正常下载压缩包、下载解压后在python3.0环境无法正确读取路径等等。于是,我决定在Linux(Ubuntu20.0)系统下安装。
首先要说明的是,binwalk需要在python环境下运行。因此,我们要先安装python(此处以python2.7为例)。
在Ubuntu系统下打开终端
首先更新安装包列表
$ sudo apt-get update
然后安装python2.7
$ sudo apt-get install python2.7
$ sudo apt update
$ sudo apt install python-pip
$ pip install --upgrade pip
接着就可以安装binwalk。
在此首先说明一下,网上有的说法是在Ubuntu终端上链接GitHub下载网站进行binwalk压缩包的下载,然后进行解压。这种方法笔者尝试过,的确能成功下载并解压,但我也在这里碰了壁,就是在后续的安装上报了错,因此我找了更快的方法。
事实上,我们在终端上是可以像上文安装python那样直接安装binwalk的,不需要兜弯路。
$ sudo apt-get install binwalk
随后,我们还需要实现自动安装依赖库文件和工具组件。
$ sudo ./binwalk-master/deps.sh
此外,在python2.7环境下,我们通常还需要安装python-lzma模块(一种压缩算法),安装如下:
$ sudo apt-get install python-lzma
以上都完成安装的话,我们的binwalk的基本功能都能实现了。可通过解析任意文件进行检验。
$ binwalk 文件路径
若正确显示该文件的解析信息,则说明安装完成。
如有疑问或建议,欢迎留言。