物联网之固件提取

admin 2022年9月30日19:06:37评论114 views字数 1161阅读3分52秒阅读模式

mmp 不小心x掉了,写了那么多都没了,又要从头写

什么是物联网,我就不说了,除了web安全,其他的关于机器的渗透都算是物联网。

固件又是个啥?运行在硬件上的软件,里面的文件系统提取后是二进制文件,也包含相关代码,如php,asp。

固件分析流程

固件提取  电路板截取数据  烧flash  官网下载固件分析  概念范围广,可理解挖0day,如路由器rce文件系统提取  cramfs  jffs2  yaffs2  initrd  Squashfs  ext4文件系统加载  启动项  sh文件文件系统分析  配置文件  密钥文件

binwalk  固件提取工具,除了它还有其他的工具,自行百度

自动识别固件,进行自动提取

binwalk -Me xxx.bin

物联网之固件提取

解压后会出现_xxx.bin.extracted目录

物联网之固件提取

进到目录后就是他的文件系统

这种squashfs的目录就直接是文件系统,如果是jffs2, yaffs2 就需要对文件系统进行提取,通常是用unyaffs工具。

然后对文件系统进行信息收集

使用firmwalker进行信息收集

- etc/shadow 和 etc/passwd- 列出 etc/ssl 目录- 搜索 SSL 相关文件,例如 .pem、.crt 等。- 搜索配置文件- 寻找脚本文件- 搜索其他 .bin 文件- 寻找诸如管理员、密码、远程等关键字。- 搜索物联网设备上使用的常见网络服务器- 搜索常见的二进制文件,例如 ssh、tftp、dropbear 等。- 搜索 URL、电子邮件地址和 IP 地址- 使用 Shodan CLI 调用 Shodan API 的实验性支持

运行脚本即可

物联网之固件提取

emm,真垃圾

我用find都比它找得多

find . -name "*.conf" -o  -name "*.sh" -o -name "*.pem"

物联网之固件提取


查找之后呢,就是找二进制文件进行逆向分析,路径大致在usr/sbin/

具体请看这里D-Link DSL-3782 代码注入漏洞分析

挖day,代码审计,只不过通过汇编和伪代码的方式查找,这就很费时间

命令行参数:argv操作,经典的栈溢出环境变量:getenv()输入数据文件:read() fscanf() getc() fgetc() fgets() fscanf()键盘输入/stdin: read,  scanf   getchar   gets网络数据:read  recv  recvfrom字符串复制:strcpy(char *dest,char *src)  strncpy命令执行:system  execve字符串格式化:strcat格式化字符串:sprintf   snprintf

再然后就是固件模拟,因为没有money买真实设备,就需要模拟器进行搭建,三种模拟方式后续的话,我应该会写出来,可自行百度下面三种方式。

firmadyne

FirmAE

qemu


原文始发于微信公众号(轩公子谈技术):物联网之固件提取

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年9月30日19:06:37
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   物联网之固件提取https://cn-sec.com/archives/1327227.html

发表评论

匿名网友 填写信息