优秀的人,不是不合群,而是他们合群的人里面没有你
MP3&音频隐写
解题思路:
- 正常丢进Audacity打开查看频谱图,波形图,看看有没有密码提示或者类似于摩斯码的信息
- 如果听起来有嘟嘟声,丢随波工具箱用wav拨号功能一键梭哈
- 如果有密码提示,可能就是MP3Steno和SilentEye和Deepsound加密
如果听起来有摩斯密码,用这个网站一把锁哈解决
https://morsecode.world/international/decoder/audio-decoder-adaptive.html
- wav和mp3文件用Audacity打开查看频谱图,或 Shift+M选择频谱图,一般来说,音频中的频谱隐写是将字符串隐藏在频谱中,此类音频通常会有一个较明显的特征,听起来是一段杂音或者比较刺耳。
- 另外如果听到有嘟嘟嘟的拨号声,可以尝试转换成wav后,用随波工具箱的wav拨号功能进行解密。
- DeepSound可以查看音频隐藏写入的内容
mp3文件,使用MP3Stego,在目录下使用命令
Decode.exe -X 1.mp3 可以不用密码试一试
decode -X -P 123456 svega.mp3(密码 123456)
decode -X -P 123456 svega.mp3 outhidden flag123465.txt
选择输出的文件名
需要注意的是,mp3stego并不是说输入对密码才会生产文件,哪怕错的也能生存文件,所以爆破的时候不能用条件判断~
区别就是这个样子
补充一个爆破的代码:
import subprocess
code = 'decode -X -P {} mp3.mp3 outhidden flag{}.txt'
# codes = code.format(1260)
# res = subprocess.Popen(codes, shell=True, stdout=subprocess.PIPE)
# result = res.stdout.read().decode()
# print('-----------')
# print(result)
for i in range(999,1301):
codes = code.format(i,i)
res = subprocess.Popen(codes, shell=True, stdout=subprocess.PIPE)
result = res.stdout.read().decode()
print(result)
还可以这么写
import os
j = 0
for i in range(1000,1301):
command = "decode.exe -X -P {} mp3.mp3 outhidden flag{}.txt".format(i,j)
#print(command)
os.system(command)
j += 1
#decode.exe -X -P 1000 mp3.mp3 outhidden flag{}.txt
- 类似于图片隐写中的 LSB 隐写,音频中也有对应的 LSB 隐写,只针对wav,使用SilentEye,详细步骤如下,点击到如下页面,两个框都要把密码输入,注意不同的音质解密不出来,low和high都尝试换一下,还有aes256和aes128也要换着来试一试
就会自动把隐写的文本提取出来
- 音频隐藏莫斯密码,文件用Audacity打开可以明显看到两段音轨不一样
这段 MP3 正常播放一般是听不出来什么的,但是 Shift+M 选择分离立体声到单声道然后独奏播
放第一栏的音轨
视频隐写
使用视频编辑软件对每一帧进行检查,ffmpeng,可能会有盲水印的题目