分辨压缩包的真加密与伪加密

前言

问题 :对于文件加密与否的判别,通常可以用010Editor打开压缩包,查看标记位(zip文件是从504B0102的50开始数到第9字节,RAR文件是从文件头开始数到第24个字节)。然而这种方法并不高效:一是该方法无法区分真加密与伪加密,因为无论真加密还是伪加密的标志位都不为0;二是由于加密方法的不同,标志位可能会发生改变,例如zip文件的第9字节可能改成第6字节。
方案:binwalk工具可解决上述问题,使用binwalk对压缩包进行提取,若该包为真加密则无法提取,若该包为伪加密则可绕过其加密位对包中内容进行提取

做法

1.使用binwalk对伪加密包进行提取

当前路径中存放着一个伪加密包HELLO_NoPwd.rar,使用binwalk对该包进行提取,命令行输出入下:

bash 复制代码
┌──(kali㉿kali)-[~/tmp]
└─$ binwalk -Me -C /home/kali/tmp/HELLO_NoPwd HELLO_NoPwd.rar


Scan Time:     2026-02-18 21:59:48
Target File:   /home/kali/tmp/HELLO_NoPwd.rar
MD5 Checksum:  2145f20ab7606fb870ff850e38a142e5
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------

0             0x0             RAR archive data, version 4.x, first volume type: MAIN_HEAD


Scan Time:     2026-02-18 21:59:50
Target File:   /home/kali/tmp/HELLO_NoPwd/_HELLO_NoPwd.rar-0.extracted/hello.py
MD5 Checksum:  6c3a562ab867246f2dffe2c31f852eec
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------


Scan Time:     2026-02-18 21:59:50
Target File:   /home/kali/tmp/HELLO_NoPwd/_HELLO_NoPwd.rar-0.extracted/hello.cpython-314.pyc
MD5 Checksum:  871201900704f4fb29c1711ca3e58748
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------


Scan Time:     2026-02-18 21:59:50
Target File:   /home/kali/tmp/HELLO_NoPwd/_HELLO_NoPwd.rar-0.extracted/__init__.cpython-314.pyc
MD5 Checksum:  aed040720ec86033ab806e797ab80c9b
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------

                                                         
┌──(kali㉿kali)-[~/tmp]
└─$ binwalk -Me -C /home/kali/tmp/HELLO_NoPwd HELLO_NoPwd.rar



Scan Time:     2026-02-18 22:00:09
Target File:   /home/kali/tmp/HELLO_NoPwd.rar
MD5 Checksum:  2145f20ab7606fb870ff850e38a142e5
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------

0             0x0             RAR archive data, version 4.x, first volume type: MAIN_HEAD


Scan Time:     2026-02-18 22:00:10
Target File:   /home/kali/tmp/HELLO_NoPwd/_HELLO_NoPwd.rar.extracted/__init__.cpython-314.pyc
MD5 Checksum:  aed040720ec86033ab806e797ab80c9b
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------


Scan Time:     2026-02-18 22:00:10
Target File:   /home/kali/tmp/HELLO_NoPwd/_HELLO_NoPwd.rar.extracted/hello.py
MD5 Checksum:  6c3a562ab867246f2dffe2c31f852eec
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------


Scan Time:     2026-02-18 22:00:10
Target File:   /home/kali/tmp/HELLO_NoPwd/_HELLO_NoPwd.rar.extracted/hello.cpython-314.pyc
MD5 Checksum:  871201900704f4fb29c1711ca3e58748
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------

此外文件目录中出现了我命令里指定的文件夹HELLO_NoPwd,该文件夹中存放了提取出来的文件。

2.使用binwalk对真加密压缩包进行提取

HELLO_Pwd.rar是一个真加密的压缩包,对其进行提取,命令行输出如下:

bash 复制代码
┌──(kali㉿kali)-[~/tmp]
└─$ binwalk -Me -C /home/kali/tmp/HELLO_Pwd HELLO_Pwd.rar

Scan Time:     2026-02-18 22:00:58
Target File:   /home/kali/tmp/HELLO_Pwd.rar
MD5 Checksum:  162cbbc655c2119ab94448b6bd012753
Signatures:    411

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------

0             0x0             RAR archive data, version 4.x, first volume type: MAIN_HEAD

文件目录中多了一个我命令中指定的HELLO_Pwd文件夹,该文件夹中的0.rar本质上是HELLO_Pwd.rar的复制,但想要查看其中内容仍需输入密码,相当于无法打开。

相关推荐
济6175 分钟前
ARM Linux 驱动开发篇---内核定时器实验--- Ubuntu20.04
linux·嵌入式·嵌入式linux驱动开发
小尔¥7 分钟前
Nginx核心功能
运维·网络·nginx
燃于AC之乐9 分钟前
OpenClaw“小龙虾”深度解析:60天碾压Linux的AI智能体,从原理到搞定本地部署【Windows系统 + 接入飞书】
linux·人工智能·飞书·openclaw·小龙虾
犀思云11 分钟前
解构网络复杂性:基于 FusionWAN NaaS 的确定性架构工程实践与流量编排深度指南
网络·人工智能·机器人·智能仓储·专线
进击切图仔11 分钟前
Linux 下 USB 设备端口错乱问题排查与解决
linux·运维·服务器
Irissgwe14 分钟前
基础I/O
java·linux·前端
刘一说15 分钟前
OpenClaw 在 Docker 容器中的部署实战——零配置启动
运维·docker·容器
洛菡夕18 分钟前
Linux系统安全
linux
一个无名的炼丹师18 分钟前
从零构建工业级 AI Agent 操作系统:本地优先记忆网络与动态 Skills 架构详解
网络·人工智能·架构·大模型·openclow
The Shio20 分钟前
为什么我认为设备协议真正缺的,不是更多文档,而是代码生成能力?
网络·物联网·c#·.net·业界资讯