Sma11_Tim3's Studio.

binwalk for windows

字数统计: 957阅读时长: 3 min
2018/10/28 Share

本文转载至:http://www.cnblogs.com/pcat/p/5256288.html

介绍

binwalk是一个文件的分析工具,旨在协助研究人员对文件进行分析,提取及逆向工程。简单易用,完全自动化脚本,并通过自定义签名,提取规则和插件模块,还重要一点的是可以轻松地扩展。

好了,正式介绍在windows下安装的法子,用binwalk在github上的项目来安装其源码是最简单的,里面介绍说windows上的Optional Feature Support是最Poor的,尽管如此,还是够用的。

github项目:https://github.com/devttys0/binwalk

binwalk的wiki:https://github.com/devttys0/binwalk/wiki


安装

在windows上安装前你需要已经安装python(2、3版本倒没关系)

在cmd里输入

git clone https://github.com/devttys0/binwalk
cd binwalk
python setup.py install
(如果你机子没有安装过git,你可以直接访问项目地址,点击里面的Download Zip下载后解压即可)

安装后,python里输入import binwalk不会报错,说明可以在python里调用binwalk(用法请自己浏览上面提供的wiki),用起来可以达到我们分析文件的目的。

但我们喜欢linux里binwalk的使用方法,也想在windows上达到同样的效果,python安装目录下Script里那个binwalk文件(没任何后缀名)其实是一个py文件,在Script文件夹里用python运行它的话,可以达到效果,可是在Script文件夹外就犯愁了,因为cmd里不能运行没后缀的文件,而python binwalk这样的运行方式不行(因为必须指定binwalk的路径,但是如果指定了又很麻烦),而若是修改为binwalk.py,一运行又会报错,总之头疼。

————————————————————————————————————————————。

新建一个文件夹,并把文件夹的路径加入到系统变量path里(这样在cmd里就可以直接运行了。)

在文件夹里新建一个binwalk.bat文件

1
2
3
4
5
6
@echo off
echo * suggest: you'd better to input the parameters enclosed in double quotes.
echo * made by pcat
python "%~dp0\p_binwalk.py" %1 %2 %3 %4 %5 %6 %7 %8 %9

再新建一个p_binwalk.py文件(这里写得很简单,以后能力增长的时候可能会改写)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

# -*- coding:utf-8 -*-
# author: pcat
# http://pcat.cnblogs.com

import sys
import binwalk

if __name__ == "__main__":
lst=sys.argv
if len(lst)<2:
print("No files.")
exit()
try:
if lst[1][0]=='-':
binwalk.scan(*lst[2:],signature=lst[1])
elif lst[1][0]!='-':
binwalk.scan(*lst[1:],signature=True)
except:
pass

只要这个文件夹的路径在系统变量path里和这2个文件存在着,那么你就可以在cmd里像linux那样使用binwalk了。
:)

UPDATE

  • 另一种单文件的写法

模仿我自己的另一篇文 uncompyle2 windows安装和使用方法

新建一个文件夹,并把文件夹的路径加入到系统变量path里(这样在cmd里就可以直接运行了。)

在文件夹里新建一个binwalk.bat 文件(事实上随你喜欢,取什么名字都可以)

1
2
3
4
5
6
7
8
9
10
11
:: author: pcat@chamd5.org
:: http://pcat.cnblogs.com
@echo off
echo * suggest: you'd better to input the parameters enclosed in double quotes.
echo * made by pcat
echo * ***********************************************************************
if defined python_home (
python "%python_home%\Scripts\binwalk" %1 %2 %3 %4 %5 %6 %7 %8 %9
)else (
echo "you need to set PYTHON_HOME"
)

(其中得先设置好PYTHON_HOME这种系统变量,如果你的python2.7是默认安装的,一般这个PYTHON_HOME就设置C:\Python27 )

只要这个文件夹的路径在系统变量path里和这个bat文件存在着,那么你就可以在cmd里像linux那样使用binwalk了。

binwalk常用命令

binwalk常用命令

-e 分解出压缩包

binwalk -e pcat.bin
-D或者—dd 分解某种类型的文件(在windows里要用双引号括起来)

binwalk -D=jpeg pcat.bin
-M 递归分解扫描出来的文件(得跟-e或者-D配合使用)

binwalk -eM pcat.bin
其他的可以参考:https://github.com/devttys0/binwalk/wiki/Usage

by Covteam-Sma11_Tim3

生活不易,多才多艺。

CATALOG
  1. 1. 介绍
  2. 2. 安装
  3. 3. UPDATE
  4. 4. binwalk常用命令