有几天我试图提取路由器固件的文件系统。检查供应商提供的图像,我可以看到上面有 SquashFS 标志:
DECIMAL HEX DESCRIPTION
-------------------------------------------------------------------------------------------------------
52 0x34 uImage header, header size: 64 bytes, header CRC: 0x1A27096C, created: Tue Nov 27 06:52:32 2012, image size: 3448768 bytes, Data Address: 0x80000000, Entry Point: 0x8023A000, data CRC: 0x584BBD98, OS: Linux, CPU: MIPS, image type: OS Kernel Image, compression type: lzma, image name: "Linux Kernel Image"
116 0x74 LZMA compressed data, properties: 0x5D, dictionary size: 33554432 bytes, uncompressed size: 2445108 bytes
983092 0xF0034 Squashfs filesystem, little endian, non-standard signature, version 3.0, size: 2463170 bytes, 637 inodes, blocksize: 65536 bytes, created: Tue Nov 27 06:51:11 2012
提取文件并使用 hexdump 检查后,我发现了以下幻数shsq:
00000000 73 68 73 71 7d 02 00 00 00 00 00 54 03 00 00 08 |shsq}......T....|
00000010 1c 71 b7 a0 12 71 b7 19 1f 73 00 18 03 00 00 00 |.q...q...s......|
00000020 38 72 10 00 c0 02 01 cf 54 b4 50 d4 0c 1f 10 00 |8r......T.P.....|
00000030 00 00 00 00 00 01 00 2c 00 00 00 02 00 a2 bf c2 |.......,........|
00000040 95 25 00 00 00 00 00 b6 95 25 00 00 00 00 00 be |.%.......%......|
这不是我第一次找到这个标题,但我找不到解压缩它的解决方案。
到目前为止我尝试过的事情:
- unsquashfs 和firmware-mod-tools 的所有版本。
- 修改 unsquash 工具可以识别的已知标题的标题。
- 这个补丁http://sandeen.net/wordpress/computers/uncompressing-cisco-x2000-firmware-images/
您可以在此链接中找到有关此问题的更多信息,但没有解决方案:
http://forums.modem-help.co.uk/viewtopic.php?t=9668
任何人都知道如何实现这一目标?