alarm_clock
题目附件
https://pan.baidu.com/s/1ntjpwzC_VelRSaZTFfknYQ?pwd=mkes 提取码: mkes解题过程
解压缩包后得到一个vmdk文件,使用R-Studio磁盘恢复工具打开发现存在压缩包和音频文件
将音频文件和压缩包恢复到本地,发现压缩包解压需要密码,猜测密码存在于音频文件里
打开音频文件,根据听到的声音猜测是SSTV编码
使用Audacity工具将音频左右声道分离拼接
拼接后:
使用kali安装qsstv解sstv
sudo apt-get install qsstv -y
使用得到的密码解压压缩包,查看data.txt
推测为数字序列,编写脚本将其转换为笔画路径并绘制图形
# Sample sequences (first three lines)input_text = """3,3,3,3,9,9,6,6,6,0,0,0,0,1,1,5,56,6,6,6,4,3,21,2,3,4,5,6,6,6,6,6,6,3,9,9,9,10,11,0,1,2,3,33,3,6,6,6,6,7,9,11,5,3,1,0,0,9,9,0,08,7,6,8,4,6,5,46,3,3,9,9,6,3,3,6,6,9,93,3,6,6,6,6,9,9,0,0,0,0,6,6,3,33,3,6,6,6,63,3,6,6,6,6,0,0,9,9,0,03,3,6,6,6,6,9,9,0,0,0,07,1,6,6,6,6,9,3,33,3,9,9,6,6,6,6,3,3,0,0,9,910,9,8,7,6,5,4,3,23,33,3,6,6,9,9,3,3,6,6,9,93,3,6,6,6,6,9,9,0,0,0,07,1,6,6,6,6,9,3,36,6,6,6,6,0,0,1,2,3,4,5,6,7,8,9,10,11,03,37,7,7,3,3,3,9,0,0,0,6,6,6,6,63,3,6,6,6,6,9,9,0,0,0,0,6,6,3,37,7,7,3,3,3,9,0,0,0,6,6,6,6,63,3,6,6,6,6,9,9,0,0,0,03,33,3,6,6,6,6,0,0,9,9,0,06,3,3,9,9,6,3,3,6,6,9,96,6,6,6,6,0,0,1,2,3,4,5,6,7,8,9,10,11,03,3,3,3,9,9,6,6,6,0,0,0,0,1,1,5,53,36,6,6,6,6,0,0,1,2,3,4,5,6,7,8,9,10,11,03,3,3,3,11,10,9,8,7,6,5,4,3,2,13,3,6,6,6,63,3,6,6,9,9,6,6,3,36,6,6,6,6,0,0,1,2,3,4,5,6,7,8,9,10,11,03,3,6,6,9,9,3,3,6,6,9,93,3,6,6,6,63,3,6,6,6,6,0,0,9,9,0,06,6,6,6,6,0,0,1,2,3,4,5,6,7,8,9,10,11,03,3,6,6,9,9,6,6,3,37,1,6,6,6,6,9,3,33,3,3,3,11,10,9,8,7,6,5,4,3,2,14,5,6,4,8,6,7,8"""
import matplotlib.pyplot as pltimport numpy as np
lines = [list(map(int, line.split(','))) for line in input_text.strip().split('\n')]
# Plot strokes using relative movesfor i, seq in enumerate(lines): x, y = 0, 0 xs, ys = [x], [y] for k in seq: theta = np.pi/2 - k * (2 * np.pi / 12) # 0 at top, increasing clockwise x += np.cos(theta) y += np.sin(theta) xs.append(x) ys.append(y) plt.figure() plt.plot(xs, ys, '-o') plt.axis('equal') plt.title(f"Relative Stroke Sequence {i+1}") plt.savefig('123\\'+str(i)+'.png', bbox_inches='tight')
得出flag为:
flag{5879016c-301b-4840-95bf-be72b379b21e}