这是zip加密错误吗?


13

我最近发现了一个漏洞,利用该漏洞,我(或假设有人)可以重新加密我的加密zip文件,而无需知道密码:

#zip --encrypt encrypted.zip -r dir1/

上面的内容将提示用户输入密码。有什么我想念的东西吗,或者这是一个已知问题?


5
您是否找到一种方法来读取原始zip文件中的数据?
ctrl-alt-delor

@ ctrl-alt-delor是的,我没有忘记密码,这是我偶然发现的
lamino

17
对不起,我的意思是,您是否找到了一种在不知道密码的情况下读取原始zip文件中的数据的方法?
ctrl-alt-delor

Answers:


40

Zip存档可以为包含的不同文件提供多个密码。存档中的文件本质上彼此独立-压缩文件时不考虑其他文件,并且以相同的方式加密。您encrypted.zip将拥有两个(或多个)加密段,一个使用原始密码,一个使用新密码。

尝试unzip该文件将提示输入两个密码:

$ unzip ../test.zip
Archive:  ../test.zip
[../test.zip] file1 password:
  inflating: file1
  inflating: file2
[../test.zip] newfile password:
  inflating: newfile

目录(文件名列表)未加密。尽管这可能会造成混淆,并且并非所有的zip工具(尤其是图形工具)都能很好地处理这种情况,但这并不是一个bug。


2
违反直觉但有趣的功能。感谢您的澄清
-lamino

14
目录,即文件名列表,未加密 -这就是为什么目录列表也很敏感的情况下,通常会将原始文件压缩后未加密为zip文件,然后将其压缩并加密为另一个zip文件。然后,唯一没有密码即可看到的是内部zip文件的名称。
Stobor

2
@Stobor在相关说明中,.7z存档格式可以选择对目录列表和文件进行加密。
user3490
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.