【攻防世界】- 不确定,再看看
⭕、知识点
WAV二进制冗余数据隐写/脚本编写/base64隐写
一、题目
一个wav音频文件

二、解题
1、尝试频域分析无果
2、binwalk没有发现隐藏信息
3、查看十六进制数据,发现文件头部有一些整齐有规律的字母,看起来像是base64编码

4、编写脚本提取base64文本
start_index = int("86",16)
end_index = int("2EE0",16)
base64_str = ""
with open("A Comme Amour.wav", "rb") as f:
f.seek(start_index)
while f.tell() < end_index:
data = f.read(1)
if data == bytes.fromhex("00") or data == bytes.fromhex("FF"):
continue
else:
base64_str += data.decode("utf-8")
print(base64_str)

5、复制下来放到在线网站提示格式有误解密不了
后来发现用CyberChef可以解密(其对格式没有太严格的要求)
发现一段类似flag的东西,应该是被替代或者置换了,又扫了一眼代码有a、b和模运算,猜测是仿射密码加密
6、尝试用脚本爆破仿射密码
。。。得到了一个假flag T_T

6、尝试base64隐写,得到真flag

三、答案
flag{ba5e64_hiding_1s_s0_in7erest1ng!}
四、总结
1、学习到了原来WAV也可以进行二进制数据隐写
2、学到了仿射密码暴力攻击的方式
3、学到了base64隐写的原理
参考资料:
base64加密原理
base64隐写原理


浙公网安备 33010602011771号