一.题目详情
题目链接:https://adworld.xctf.org.cn/challenges/list
点击下载附件,发现又是一个没有后缀名的文件:
第一思路可以用01editor或者winhex来查看文件头;或者可以把文件放进kali虚拟机使用file+文件名来查看文件类型,发现为wav音频文件
二.解题思路
(1)第一反应做音频文件类型题,使用Audacity来查看音频里是否藏信息之类的,查看频谱图和分析是否存在高低音频之类的(转二进制思路)
发现什么都没有,这条思路走不通
(2)通过binwalk来分析文件是否还有没有隐藏其他文件,binwalk+文件名,发现还是什么都没有
再尝试strings 文件名 | grep flag 看看有没有信息,可惜还是没有
说明这条思路也是死路
(3)点击打开听一下音频是否有什么隐藏信息,听完发现貌似是一段信号电波;查询一下有没有破译信号电波的工具,发现kali有个工具为multimon-ng,是用于专门解码aprs、psk等业余无线电数字通信协议的工具;反正没有其他思路了,尝试是否可以解决出flag
三.解题过程
(1)在kali机上下载multimon-ng
sudo apt-get install multimon-ng
(2)在使用multimon-ng时,需要使用sox工具将wav音频文件转化为raw类型文件
sox -t wav latlong -esigned-integer -b16 -r 22050 -t raw latlong.raw
这条命令使用sox工具将WAV文件latlong.wav转换为RAW文件latlong.raw,并指定了一些参数:
-t wav:指定输入文件的格式为WAV。
latlong:输入的WAV文件名。
-esigned-integer:指定输出文件的采样格式为有符号整数。
-b16:指定输出文件的位深度为16位。
-r 22050:指定输出文件的采样率为22050 Hz。
-t raw:指定输出文件的格式为RAW。
latlong.raw:输出的RAW文件名。
(3)成功获得一个raw文件
(4)使用multimon-ng 获取信息
multimon-ng -t raw -a AFSK1200 latlong.raw
以RAW格式作为输入类型(-t raw),并指定解码方式为AFSK1200(-a AFSK1200),对latlong.raw文件进行解码。
获取flag为:
flag{f4ils4f3c0mms}
四.提交flag获取分数
五.总结
本次misc题,明白了处理音频文件除了用Audacity外,还有kali中的multimon-ng。又get到一个新工具multimon-ng。