这是我第一次尝试做一些逆向工程。我正在尝试从 huawei hg523a TalkTalk 路由器上转储文件系统。
问题在于设备上的程序数量非常有限。以下是我可以使用的程序列表。
BusyBox vv1.9.1 (2012-03-05 00:16:52 CST) multi-call binary
Currently defined functions:
[, [[, arp, ash, cat, chmod, chown, cp, date, echo, ftpget,
ftpput, halt, ifconfig, init, kill, killall, linuxrc,
ln, ls, mcast, mkdir, mknod, mount, netstat, nslookup,
ping, poweroff, ps, reboot, rm, route, sh, sleep, test,
top, traceroute, umount, vconfig, wget
所以我试图将文件系统提取到另一台 linux 机器上,以便我可以更轻松地完成它。我可以使用 ftpput 命令上传单个文件。
cat /proc/mtd
dev: size erasesize name
mtd0: 00010000 00001000 "boot"
mtd1: 00001000 00001000 "flag"
mtd2: 003c0000 00001000 "main"
mtd3: 0002d000 00001000 "config"
我想要做的是上传 mtdblock0-3,然后将其安装在我的另一台机器上以探索文件夹结构等。从 /proc/mounts 看起来它是一个 squashfs 文件系统。
cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / squashfs ro 0 0
none /dev tmpfs rw 0 0
/proc /proc proc rw 0 0
none /var tmpfs rw 0 0
none /tmp tmpfs rw 0 0
none /mnt tmpfs rw 0 0
所以基本上我上传了 mtdblock0。
ftpput -s -v -u james -p password -l /dev/mtdblock0 -r ftpdir/mtdblock0 192.168.1.64
并将其安装在另一台计算机上:
root@kali:~/Desktop/talktalk/blocks# mount -t squashfs mtdblock0 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
任何人都可以指导我朝着正确的方向前进,以了解我可能做错了什么?所以不可能以这种方式传输文件系统?
预先感谢您的帮助。