【CTF隐写工具】binwalk工具使用方法

工具简介
Binwalk 是一种快速、易于使用的工具,用于分析、逆向工程和提取固件映像。
工具环境
- Linux
Linux环境下安装
- 直接使用apt/yum进行安装
apt install binwalk
根据文档进行安装 https://github.com/ReFirmLabs/binwalk/blob/master/INSTALL.md
- Python3 (官方建议 Python3.6)
Python依赖
pip install nose coverage
pip install pycryptodome # 解密已知的加密固件映像
pip install pyqtgraph # 用于pyqtgraph生成可视化图形
pip install capstone # 用于--disasm选项
典型用法
- 获取帮助
binwalk -h
binwalk --help
- 固件扫描
binwalk firmware.bin
# 通过扫描能够智能的发现目标文件中包含的所有可识别的文件类型。
binwalk firmware.bin | head
binwalk -e pcat.bin
# 分解出文件,使用此命令,可以无视伪加密压缩包、多分割压缩包以及其他文件分解。
binwalk -D=jpeg pcat.bin
# 可以指定某种类型的文件进行分解。(--dd与此命令相同,并且均支持正则表达式)
binwalk -eM pcat.bin
# -M选项和--matroshak 为 递归提取,仅支持 “-e” 和 “--dd”,递归依据是根据magic签名。
binwalk --dd 'zip archive:zip:unzip %e' pcat.bin
# 指定文件分解 正则
- 固件文件的比较
选项“-W”或“-hexdump”对给定文件进行字节比较,可以指定多个文件,这些文件的比较结果会按照hexdump方式显示,绿色表示在所有文件中这些字节都是相同的,红色表示在所有文件中这些字节都是不同的,蓝色表示这些字节仅在某些文件中是不同的。该选项可以与“--block”、“--length”、“--offset” 、“--terse”选项一起使用。
binwalk -W 1 2 3

1,2,3有两个文件内容相同,1个内容不同,所以是蓝色。

1,2,3三个文件都不相同,所以是红色。
- 日志记录
选项“ -f ” 或 “ --log= ”可以将扫描的结果保存到一个指定的文件中,示例如下。(如果不与“ -q ” 或 “ --quit ”合用,会同时在stdout和文件中输出。如需要保存CSV格式的log文件,可使用 “--csv”选项。)
binwalk -f logs.log -q pcat.bin
binwalk -f binwalk.log --csv pcat.bin
- 指令系统分析
- 熵分析
选项“-E”、“--entropy”用于对输入文件执行熵分析,打印原始数据并生成熵图,可与“ --signature ”、“ --raw ”以及“--opcodes”选项合用,对分析更有利。
binwalk -E firmware.bin
# 注意要区别于“小e”的使用[提取文件]
- 启发式分析
遇到的问题
- binwalk itself must be run as root
需要在binwalk命令后添加 --run-as=root
┌──(root㉿kali)-[~]
└─# binwalk -e 1.jpg --run-as=roo
工具归属
- 项目地址:https://github.com/ReFirmLabs/binwalk
【CTF隐写工具】binwalk工具使用方法的更多相关文章
- [CTF隐写]png中CRC检验错误的分析
[CTF隐写]png中CRC检验错误的分析 最近接连碰到了3道关于png中CRC检验错误的隐写题,查阅了相关资料后学到了不少姿势,在这里做一个总结 题目来源: bugku-MISC-隐写2 bugku ...
- 记一道CTF隐写题解答过程
0x00 前言 由于我是这几天才开始接触隐写这种东西,所以作为新手我想记录一下刚刚所学.这道CTF所需的知识点包括了图片的内容隐藏,mp3隐写,base64解密,当铺解密,可能用到的工具包括bin ...
- 南邮CTF隐写之丘比龙的女神
刚开始下载下图片来 习惯性的binwalk一下 没发现东西 formost一下也没分离出来 扔进c32asm中发现有nvshen.jpg 于是改后缀名字为.zip 解压nvshen.jpg发现无法解压 ...
- CTF隐写——越光宝盒
0x题目 原题来自于实验吧:http://www.shiyanbar.com/ctf/1992 一句话,和一个PNG图片. 0x解题 1.下载图片以后,发现打不开. 首先想到的就是文件头可能被修改了, ...
- F5隐写工具使用
0x00 前言 今天在实验吧看到一个图片隐写的题目,用了stegslove和winHex分析一通发现并没有什么有效信息.看了评论区大佬的提示说用到了F5隐写工具,所以百度教程用了一下,发现确实解决 ...
- 隐写工具zsteg安装及使用教程
zsteg可以检测PNG和BMP图片里的隐写数据. 目前,zsteg支持检测: LSB steganography in PNG & BMP zlib-compressed data Open ...
- Linux性能分析工具与图形化方法
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~. 作者:赵坤|腾讯魔王工作室后台开发工程师 在项目开发中,经常会遇到程序启动时间过长.CPU使用率过高等问题,这个时候需要依靠性能分析工具来 ...
- CTF杂项之音频隐写
题目来自bugku 二话不说,直接上图 由题目可以看出,这题需要用到一个KEY,加上又是一段音频,很容易联想到一个著名的音频隐写解密软件Mp3stego 直接上工具 ok,成功Get Flag
- Collections集合工具类常用的方法
java.utils.Collections //是集合工具类,用来对集合进行操作.部分方法如下: public static <T> boolean addAll(Collection& ...
- 2020最新IDEA插件大集合,一款能帮助你写代码的工具是多么重要
摘要 12款为用户精心打造的Idea插件,含盖前后端,另把使用小技巧分享给大家,提高大家的码率,希望对你们有帮助! Lombok Lombok为Java项目提供了非常有趣的附加功能,使用它的注解可以有 ...
随机推荐
- ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码) ASCII简介 ASCII(American Standard ...
- LcdTools如何实现PX01读取SD中BIN文件并通过端口发出去
在实际应用中我们会碰到需要下载很大容量固件,比如TP固件几百K大小BIN文件,这种情况下用LcdTools写初始化代码的方式实现就不大现实:此时我们可以通过PX01 SD来实现. 首先,把需要操作的B ...
- ElasticSearch之Windows中环境安装
ElasticSearch 说明 本章,我们主要以在 Windows 中对ElasticSearch 安装进行介绍! 1. 下载 ElasticSearch 这里我们下载的版本为7.17.4为例进行介 ...
- 5 why 分析法,一种用于归纳抽象出解决方案的好方法
最近在看了<微信背后的产品观 - 张小龙手抄版>,其中有段话如下: 用户需求是零散的,解决方案是归纳抽象的过程 那如何归纳抽象呢?是否有一定的实践方法论呢?经过一轮探讨和学习,有这些答案: ...
- maven的下载、安装、配置,idea中配置Maven
下载 下载链接: 点击下载地址 : 找到:对应版本的包下载 安装 下载后的压缩包解压出来,然后将解压后的包放到日常安装软件的位置即安装成功,当然取决于个人意愿,也可以不移动. 打开安装包后的目录结构简 ...
- Python基础部分:10、数据类型的内置方法和字符编码
目录 一.数据类型内置方法 1.字典dict内置方法 1.1.类型转换 2.字典必须要掌握的方法 2.1.取值方式 2.2.修改内部数据值 2.3.删除数据 2.4.统计字典中键值对个数 2.5.字典 ...
- web安全学习(sql注入1)
web安全学习(sql注入1) 一.简介 sql语句就是数据库语句,而sql注入就是用户将自己构造的恶意sql语句提交,然后服务器执行提交的危险语句.sql注入可能造成信息泄露以及服务器被控制等危害. ...
- UML建模语言、设计原则、设计模式
1.UML统一建模语言 定义:用于软件系统设计与分析的语言工具 目的:帮助开发人员更好的梳理逻辑.思路 学习地址:UML概述_w3cschool 官网:https://www.omg.org/spec ...
- Vue3组件间传值
12种方式 1. 父组件 ./father.vue 点击查看代码 <template> <h1>father:</h1> <h3>子组件传过来的:{{ ...
- Mysql InnoDB多版本并发控制MVCC
参考书籍<mysql是怎样运行的> 系列文章目录和关于我 一丶为什么需要事务隔离级别 mysql是一个客户端/服务断软件,对于同一个服务器来说,可以有多个客户端进行连接,每一个客户端进行连 ...