打开从固件下载中提取的非标准压缩 .tar.lzma 文件

逆向工程 linux 工具 解压
2021-07-02 06:25:53

我们正在尝试检查我们在本地网络上运行的产品的固件下载。使用命令

binwalk -Me filename

我们生成了一个包含以下内容的文件夹:

184A46C.cramfs
276466C.cramfs
6C.cramfs
C2426C.cramfs
cramfs-root/
cramfs-root-0/
cramfs-root-1/
cramfs-root-2/

Binwalk 似乎已经很好地打开了 CramFS。因此,导航到 cramfs-root 并运行 file 命令,我们看到以下内容:

app.tar.lzma:    data
copy_logo:       data
cramfs.img:      empty
dvrCmd.tar.gz:   data
hicore.tar.lzma: data
hisi.tar.lzma:   data
logo.tar.lzma:   data
misc.tar.lzma:   data
new_10.bin:      data
player.bin:      PE32 executable (GUI) Intel 80386, for MS Windows, UPX compressed
start.sh:        data
uImage:          u-boot legacy uImage, Linux-3.0.8, Linux/ARM, OS Kernel     Image (Not compressed), 2854980 bytes, Tue Apr 14 10:16:02 2015, Load Address: 0x80008000, Entry Point: 0x80008000, Header CRC: 0x6C502F38, Data     CRC: 0xE9307D6E
version:         ASCII text
webs.tar.lzma:   data

除了 uImage 文件,它显然包含一个 linux 内核,这里的大多数文件显然是 .tar.lzma 文件。尝试将其中一个作为普通 .tar.lzma 打开对我们不起作用。

tar --lzma -xvf logo.tar.lzma
xz: (stdin): File format not recognized
tar: Child returned status 1
tar: Error is not recoverable: exiting now

尝试别的东西:

unlzma logo.tar.lzma
unlzma: Decoder error

然而,lzmainfo 似乎认为它是有效的,但它正在将其计算为一个可笑的大 PB 文件。我很确定它不是。

lzmainfo logo.tar.lzma

logo.tar.lzma
Uncompressed size:             8351652399384 MB (8757342266336797407 bytes)
Dictionary size:               525 MB (2^29 bytes)
Literal context bits (lc):     0
Literal pos bits (lp):         2
Number of pos bits (pb):       4

如果您愿意查看它,我已将文件上传到此处

0个回答
没有发现任何回复~