题目描述
没有通常会给的已知文件,只给了一个压缩包,里面是被加密的一张png图片
了解一下 明文攻击
- 符合哪些特征可以使用明文攻击
- Zip文件
- 文件均为ZipCrypto加密
- 已知加密文件的部分明文(至少连续的8字节/12字节)
解题思路
- 获取png文件头,得到png_hearder文件
1 2 3 4 5 6 7 8 9 10 11
| hex_string = "89504E470D0A1A0A0000000D49484452"
binary_data = bytes.fromhex(hex_string)
with open("png_header", "wb") as f: f.write(binary_data)
print("文件 'png_header' 已成功创建!")
|
- 使用工具
bkcrack
得到密钥
1
| PS D:\CTF\tool\bkcrack> .\bkcrack.exe -C bkcrack_advanced.zip -c a.png -p png_header
|
Keys: b53dcc5c 19c8786e f0298d20
- 利用密钥破解文件
1
| PS D:\CTF\tool\bkcrack> .\bkcrack.exe -C bkcrack_advanced.zip -c a.png -k b53dcc5c 19c8786e f0298d20 -d 1.png
|
得到解密后的文件1.png