我如何从 squashfs 中提取 TP-LINK 固件?

逆向工程 固件 米普
2021-06-28 07:30:15

我已经安装了 FMK 和binwalk. FMK 有一个旧的binwalk不起作用。所以,我运行了一个新的binwalk(来自 git)如下:

$> binwalk -e wr741ndv4_ru_3_13_2_up_boot(140521).bin

并在目录中 _wr741ndv4_ru_3_13_2_up_boot(140521).bin.extracted/

$ls 
120200.squashfs  20400  20400.7z  3CEC  3CEC.7z  squashfs-root  unsquashfs

然后我编译unsquashfsLZMA_XZ_SUPPORT = 1

$> ./unsquashfs -v 
unsquashfs version 4.2 (2011/02/28)

$> ./unsquashfs -h
SYNTAX: ./unsquashfs [options] filesystem [directories or files to extract]
[...]
Decompressors available:
gzip
lzma

然后,我有一个错误解压squashfs

$> ./unsquashfs 120200.squashfs
Parallel unsquashfs: Using 1 processor
lzma uncompress failed with error code 9
read_block: failed to read block @0x23d12a
read_fragment_table: failed to read fragment table index
FATAL ERROR aborting: failed to read fragment table

我做错了什么?

PS 如果有人解压squashfs过这个版本的固件,请分享一下。

1个回答

添加到选项“M”

$> binwalk -eM wr741ndv4_ru_3_13_2_up_boot(140521).bin

参考)

$ man binwalk

-M, --matryoshka 递归扫描提取的文件