文件类型 - VCDIFF 二进制提取

逆向工程 反编译 linux
2021-06-15 01:31:47

我有一个文件,我试图提取以查看,但卡住了……如果我使用 binwalk,我可以获取 gunzip 文件但无法提取它……如果我尝试使用 gunzip 提取,则会返回错误如果我使用 binwalk,当我得到一个文件时0.gz它将保留在“循环”中,这意味着我可以继续一遍又一遍地提取它,而 binwalk 以“目录循环”结束。有谁知道这个问题的解决方案?我做错了吗?

root@svr3:/home/monday_home_test# file testfile
testfile: VCDIFF binary diff
root@svr3:/home/monday_home_test# binwalk --extract testfile 

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
465           0x1D1           gzip compressed data, from Unix, last modified: Sun Sep 28 08:49:05 2014

root@svr3:/home/monday_home_test# 
root@svr3:/home/monday_home_test/_testfile.extracted# ls
1D1.gz
root@svr3:/home/monday_home_test/_testfile.extracted# binwalk --extract 1D1.gz 

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             gzip compressed data, from Unix, last modified: Sun Sep 28 08:49:05 2014

root@svr3:/home/monday_home_test/_testfile.extracted# ls
1D1.gz  _1D1.gz.extracted
root@svr3:/home/monday_home_test/_testfile.extracted# cd _1D1.gz.extracted/
root@svr3:/home/monday_home_test/_testfile.extracted/_1D1.gz.extracted# ls
0.gz

root@svr3:/home/monday_home_test/_testfile.extracted/_1D1.gz.extracted/_0.gz.extracted/_0.gz.extracted# ls
0.gz
root@svr3:/home/monday_home_test/_testfile.extracted/_1D1.gz.extracted/_0.gz.extracted/_0.gz.extracted#  binwalk --extract 0.gz 

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             gzip compressed data, from Unix, last modified: Sun Sep 28 08:49:05 2014

root@svr3:/home/monday_home_test/_testfile.extracted/_1D1.gz.extracted/_0.gz.extracted/_0.gz.extracted# ls
0.gz  _0.gz.extracted
root@svr3:/home/monday_home_test/_testfile.extracted/_1D1.gz.extracted/_0.gz.extracted/_0.gz.extracted#     

Gunzip 错误

root@svr3:/home/monday_home_test/_testfile.extracted# gunzip --decompress 1D1.gz         
gzip: 1D1.gz: invalid compressed data--format violated
root@svr3:/home/monday_home_test/_testfile.extracted/_1D1.gz.extracted# gunzip --decompress 0.gz 
gzip: 0.gz: invalid compressed data--format violated
1个回答

看起来 VCDIFF 不是一个独立的容器,而是一个二进制补丁文件,旨在应用于一些已经存在的数据之上。binwalk 的结果可能是误报。

如果您没有原始数据,则不太可能从中提取任何有意义的信息。也就是说,您可以查看描述文件格式RFC3284,或维基百科文章 中列出的一些工具