个人向固件分析练习

就是单纯来适应一下各种工具以及一个流程,并不涉及各种漏洞挖掘等内容。

本次练习的固件:

https://static.tp-link.com/2018/201804/20180403/TL-WR841N%28EU%29_V14_180319.zip

https://gitee.com/hac425/blog_data/blob/master/iot/DIR823GA1_FW102B03.bin

采用AttifyOS进行直接搭建,分享一下链接吧。

https://github.com/adi0x90/attifyos

对路由器固件进行模拟,attify里面已经内置了firmware-analysis-toolkit以及binwalk和qemu,所以直接利用就行

进入目录

图片[1]-个人固件分析练习
sudo python3 fat.py '/home/iot/Desktop/DIR823GA1_FW102B03.bin' 

不知道为啥用sudo,反正不用就报错。。。

图片[2]-个人固件分析练习

出现如下页面后回车,浏览器访问192.168.0.1.

图片[3]-个人固件分析练习

成功模拟路由器固件,然而好像有些不行,,,这东西挺玄学的以后多研究研究。

ps:我还没找到如何关闭固件进程方法,反正直接关闭终端他就没了。。。

图片[4]-个人固件分析练习

进程开启的话有这个网卡,关闭就没了,很神奇

图片[5]-个人固件分析练习

然后后面是简单的练习一下拆包以及分析。。

这里补全一个工具,attify里面没带的

https://github.com/rampageX/firmware-mod-kit

这东西跟binwalk一样,但是可以解包固件后重新打包,安装教程记录一下,有点坑

下载后,需要安装前置所需内容

sudo apt-get install git build-essential zlib1g-dev liblzma-dev python-magic  

进入src目录,直接经典

./configure && make

这样安装好后就不会报错了,记录两个基础操作

./extract-firmware.sh bin文件    //解包

解包完会提示位置,一般都是fmk里面。

./build-firmware.sh         //重构

这个固件本身是个zip,unzip后,里面还给了一个pdf,

图片[6]-个人固件分析练习

看了看好像没啥大用,就是一些简单说明

对bin文件直接binwalk可以进行分析文件

图片[7]-个人固件分析练习

这里binwalk -e和上面工具分离效果一样

就是目录结构有点不一样,binwalk后存在squashfs-root文件夹,fmk解开后是rootfs文件夹。有一说一,进去后完全一致,行吧,就是一样的。

图片[8]-个人固件分析练习

看了几篇文章,一般是直接进etc找init.d的文件,里面有个rcs,可以打开简单看看

图片[9]-个人固件分析练习

有个比较关键的是这个cp -p /etc/passwd.bak /var/passwd

图片[10]-个人固件分析练习

就刚好可以看见他的密码内容

图片[11]-个人固件分析练习

bin目录一般存放各种可执行内容,拿个login出来分析分析。

可能是ida的问题,login导入后只识别为二进制文件,mips指令集貌似支持的并不咋地。。

百度搜了一下有个ghidra的工具可以专门来审计这个

参考了这个教程

https://blog.csdn.net/w12315q/article/details/88317348

图片[12]-个人固件分析练习

有一说一,确实好用,可以看源码之类的, 暂时水平受限,审计挖洞啥的就不干了,就简单走一下流程,后续再试试工具直接分析敏感文件以及漏洞。先这样

© 版权声明
THE END
喜欢就支持一下吧
点赞2 分享
评论 共1条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情
    • 头像hvidwp0