私は最近、エクスプロイトを発見しました。私(またはだれかを想定)は、パスワードを知らなくても暗号化されたZipファイルを再暗号化できます。
#Zip --encrypt encrypted.Zip -r dir1/
上記は、ユーザーにnewパスワードの入力を要求します。何か足りないものはありますか、それとも既知の問題ですか?
Zipアーカイブには、含まれているさまざまなファイルに対して複数のパスワードを設定できます。アーカイブ内のファイルは基本的に相互に独立しています。他のファイルに関係なく圧縮され、同じ方法で暗号化されます。きみの encrypted.Zip
には2つ(またはそれ以上)の暗号化されたセグメントがあり、1つは元のパスワード、もう1つは新しいパスワードです。
ファイルをunzip
にしようとすると、両方のパスワードの入力を求められます。
$ unzip ../test.Zip
Archive: ../test.Zip
[../test.Zip] file1 password:
inflating: file1
inflating: file2
[../test.Zip] newfile password:
inflating: newfile
ファイル名のリストであるディレクトリは暗号化されていません。これはバグではありませんが、混乱する可能性があり、すべてのZipツール(特にグラフィカルツール)が状況をうまく処理できるわけではありません。