这是某安全工程师捕获的一次外传流量,请分析传输了什么秘密信息。
流量分析
发现疑似文件的十六进制字符串:
这是 PNG 图像文件 的文件头。
标准 PNG 文件头特征:
89 50 4E 47 0D 0A 1A 0A
- PNG 签名(前8个字节)- 你提供的数据以
889504e470d0a1a0a0...
开始,其中:89
- PNG 文件标识50 4E 47
- “PNG” 的 ASCII 码0D 0A 1A 0A
- DOS/Unix 换行符和文件结束符
png数据提取脚本
from scapy.all import rdpcap, DNSQR
import re
import binascii
# 读取 pcapng 文件
packets = rdpcap("flag.pcapng")
# 用来存储提取的十六进制字符串
hex_data_list = []
# 匹配十六进制字符串的正则
hex_pattern = re.compile(r'\b[0-9a-fA-F]{20,}\b')
for pkt in packets:
if pkt.haslayer(DNSQR):
qname = pkt[DNSQR].qname.decode(errors="ignore")
match = hex_pattern.search(qname)
if match:
hex_data_list.append(match.group(0))
# 拼接成完整的十六进制串
hex_string = "".join(hex_data_list)
# 转成二进制
binary_data = binascii.unhexlify(hex_string)
# 保存为文件
with open("output.png", "wb") as f:
f.write(binary_data)
print(f"提取完成,共提取 {len(hex_data_list)} 段数据,已保存为 output.bin")
可以看到是猫脸变换
破解猫脸变换
工具:
根据提示:
我们从20爆破到29
如果会cv库就做个cv库识别。
得到
flag{3c56c9cf-8ca6-4f8e-8a20-e8c96605ec65}