明文攻击(特别的)

224 词

题目描述

没有通常会给的已知文件,只给了一个压缩包,里面是被加密的一张png图片

了解一下 明文攻击

  • 符合哪些特征可以使用明文攻击
    1. Zip文件
    2. 文件均为ZipCrypto加密
    3. 已知加密文件的部分明文(至少连续的8字节/12字节)

解题思路

  1. 获取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' 已成功创建!")
  1. 使用工具bkcrack得到密钥
1
PS D:\CTF\tool\bkcrack> .\bkcrack.exe -C bkcrack_advanced.zip -c a.png -p png_header

Keys: b53dcc5c 19c8786e f0298d20

  1. 利用密钥破解文件
1
PS D:\CTF\tool\bkcrack> .\bkcrack.exe -C bkcrack_advanced.zip -c a.png -k b53dcc5c 19c8786e f0298d20 -d 1.png

得到解密后的文件1.png