iot工具使用


说明

注:以项目为主线,完成任务并且有时间可以深入分析,之后会补充详细的工具使用

这里对常用工具进行说明。

下载或提取到的固件是包含整个操作系统和文件系统的。包括boot-loader(一般是uboot,用来引导系统启动),linux内核,文件系统。需要的是文件系统,厂商自己定义的代码一般在文件系统里主要分析的也是文件系统里的文件

  • binwalk可以用来解压,把一个固件解压找到它的文件系统分析单个文件。
  • ghidra可以用来反编译,iot固件一般不用x86架构用的arm和mips比较多。ghidra是一个比较好的其他架构语言反编译工具
  • qemu 动态调试工具。调试起来比较麻烦,从项目角度动态调试一般用不到

binwalk

安装

官方的安装文档,注意需要把上面的工具都安装了(不安装也能用但是会有一些文件系统解压不出来)

https://github.com/ReFirmLabs/binwalk/blob/master/INSTALL.md

比较坑的是上面写了一堆下面说官方准备好了一键安装脚本

一键安装脚本

遇到问题

E: 无法定位软件包 cramfsprogs

可以取官网下载这个包https://packages.ubuntu.com/xenial/amd64/cramfsprogs/download
然后安装dpkg -i xxxx.deb

常用命令


binwalk -Me xxxx.bin
  • M表示递归(镜像可能会进行很多层压缩)
  • e表示解压,会生成一个文件夹

find . |grep httpd可以找到httpd文件所在的目录

  • find是搜索一个路径,递归底下所有的文件夹,文件
  • |grep表示过滤,只在显示器上显示包含httpd的目录

file xxx命令可以查看二进制文件的信息

file命令

  • LSB表示小端字节序
  • ARM是cpu架构

ghidra

ghidra 用于反编译mips架构(一种cpu架构,路由器比较常用,跟arm,x86,amd一类)的程序。ida只能看到mips架构程序的汇编,这个工具可以反编译。结合ida使用。

效果如图

ghidra_usage

下载 https://ghidra-sre.org/ (暂时不能用,在其他地方找资源吧)

常用命令:

  • g:跳转到某个地址或函数
  • ctrl+shift+e 搜索字符串
  • 查找交叉引用如下

ghidra_usage

其他工具参考

https://github.com/tower111/iot/blob/master/%E6%95%B4%E7%90%86/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E6%A2%B3%E7%90%86.md


评论
 上一篇
windows漏洞复现环境搭建 windows漏洞复现环境搭建
进程查看工具process hacker 可以在看雪上下载 https://tool.pediy.com/index-detail-106.htm 动态调试工具ollydbg 吾爱破解的一个比较强大的工具(9年前的版本现在依然好用) 试了一
2020-12-07
下一篇 
漏洞整理iot-2 漏洞整理iot-2
说明这次比较幸运找到了一个比较完整的分析文档。以及用到的固件。 https://payatu.com/blog/munawwar/trendNet-wireless-camera-buffer-overflow-vulnerability
2020-12-06
  目录