TEW-654TR敏感信息泄露
firmware-mod-kit
先安装firmware-mod-kit,尝试用这个更强大的工具来进行解包和各种操作
sudo apt-get install git build-essential zlib1g-dev liblzma-dev python-magic
git clone https://github.com/mirror/firmware-mod-kit.git
安装好以后:
但是error了:
弄了一会儿没搞好,先放一个可能的解决方法,暂且搁置:
https://aur.archlinux.org/packages/firmware-mod-kit/
把源码下下来自己make,build前加入这行命令:
grep -rPl '(major|minor|makedev)\(' | xargs grep -l 'sys/types.h' | xargs -i sed -i '/#include/ a #include' {}
———————————————————————————————————————
再使用binwalk试一下:
缺了些什么。
安装sasquatch:
https://github.com/devttys0/sasquatch
sudo apt-get install zlib1g-dev liblzma-dev liblzo2-dev
sudo git clone https://github.com/devttys0/sasquatch
cd sasquatch
sudo ./build.sh
然后binwalk解包就正常了:
目录结构已经暴露出来了,很明显是linux:
跟着教程走,学习一下分析思维,打开etc\rc.d文件目录,里面有一个脚本:
#!/bin/ash
# This script runs when init it run during the boot process.
# Mounts everything in the fstab
mount -a
mount -o remount +w /
# Mount the RAM filesystem to /tmp
mount -t tmpfs tmpfs /tmp
# copy all files in the mnt folder to the etc folder
cp -a /mnt/* /etc
mkdir -p /var/etc
mkdir -p /var/firm
mkdir -p /var/log
mkdir -p /var/misc
mkdir -p /var/run
mkdir -p /var/sbin
mkdir -p /var/tmp
mkdir -p /tmp/var
cp -f /etc/udhcpd.conf /var/etc/
cp -f /etc/udhcpd.leases /var/misc/
#Add link for resolv.conf
ln -sf /var/etc/resolv.conf /etc/resolv.conf
# Load configure file from Flash
/bin/echo "Init System..."
system_manager &
# Start web server lighttpd
/bin/echo "Start Lighttpd..."
mkdir -p /var/log/lighttpd
/usr/bin/lighttpd -f /etc/lighttpd/lighttpd.conf
# Start tftpd
/bin/echo "Start Tftpd..."
tftpd &
#insert cc_dev module for reset packet counter
insmod /lib/modules/cc_dev.ko
值得注意的是这个路由器一开机就启动了tftp服务。
找到一个名字叫tftpd的文件。
盲猜是一个tftp server。
教程中使用tftp连上路由器测试了,但是我并没有真机,所以先pass。
把目光转向开机启动的system_manager程序:
查找一下字符串:
这里有几个db文件很可疑,很可能是用来存放默认配置的,对应着路由器的几种工作模式:
但是etc下边并没有找到db文件:
猜测这些文件都是动态生成的,真机上应该会有,教程是在里边找到了密码。
整个过程是利用了tftp服务开机启动的特点,直接从路由器里边把db文件给拉下来了,拿到密码基本就可以为所欲为,但是现在的路由器基本都默认禁用tftp了。
感谢本文的贡献者:黄越、陈佳豪、齐振庆