BUUCTF——firmwork

这是前几天做的一道逆向题,固件里面的bin文件分析,学了不少的姿势,所以单独拿出来记录一下
开始我使用binwallk看得,果然binwalk出了不少的文件,发现有一个Squashfs文件,说明他用了Squashfs 文件系统
BUUCTF——firmwork_第1张图片
但是一直没办法解压,通过查阅大量资料,终于找到解压的办法。
先运行
hexdump -C 1.bin | grep -n “hsqs” //得出位移为0x00120200
再提取一个从0x00120200开始的一百个字节并定义为squash的文件
dd if=1.bin bs=1 count=100 skip=1180160‬ of=squash
file一下
file squash : //得出字节数为2774624
dd if=1.bin bs=1 count=2774624 skip=1180160 of=1.squash //提取
然后安装firmware-mod-kit解压缩工具,后面连接有大佬教程连接,这里把代码带过来

  git clone https://github.com/mirror/firmware-mod-kit.git

  sudo apt-get install build-essential zlib1g-dev libz1zma-dev python-magic

  ./configure && make 

在firmware-mod-kit的目录下运行unsquashfs_all.sh 1.squash,成功解压

流程图:

BUUCTF——firmwork_第2张图片
找到backdoor文件
BUUCTF——firmwork_第3张图片
发现有一个UPX壳,去掉,查询字符串
找到我们要的地址BUUCTF——firmwork_第4张图片
这是他的端口
在这里插入图片描述
然后变成MD5,ok啦

最后附上大神的文章,感觉固件这一块挺有趣的,可以玩一玩
https://www.cnblogs.com/blacksunny/p/7208451.html?utm_source=itdadao&utm_medium=referral

你可能感兴趣的:(逆向题目练习)