CISCN 2024 Power_Trajectory+通风机 WP

一些碎碎念

这次是本菜鸡第一次参加正式的CTF比赛,不出意外没做出几个题。最后自己只做出了两个misc,对不起队里的大佬qwq
简单记录一下做出来的两道misc

Power_Trajectory

这题感觉蛮不错的,算是科普了一种侧信道攻击。
题目下发一个.npz文件,提示是硬件的功耗记录泄露,要我们找出密码。
观察题目提示,找到一篇对应的文章如下:
https://zhuanlan.zhihu.com/p/157585244
首先发现下发的文件是一个.npz文件,一共有0-12共13个index,然后有input和trace,推测为每个index代表密码的一位,我们需要从每个index对应的input的所有字符中找到符合条件的那个

于是开始分析trace,首先将.npz文件再整合为一个pandas.Dataframe,方便后续分析。
接着进行分离,以每个index的值为分组,每个input一根折线画出trace的图像,再在其中分析功率曲线的特征。经过分析放大的其中一个例子如下:

显示出600-700左右有明显的特征且只有一个字母,推测为正确的密码的一位。于是通过脚本分离

mask = (index_trace_0.iloc[:, 600:700] < -0.3).any(axis=1)

# 使用这个掩码过滤trace_2
trace_filtered = index_trace_0[mask]
trace_filtered.iloc[:,1]

如此对index=[0,1,...,12]重复,即可得到flag
flag{_ciscn_2024_}

通风机

感觉没什么意义的一道题
下发的是一个.mwp文件。搜索发现.mwp文件需要西门子的专用软件才能打开,爆搜弄到对应软件
发现打不开,结合提示“通风机坏掉了”估计是文件损坏,用下载的软件生成一个.mwp文件,发现是文件头少了47 4A 4B,加上即可。再用软件打开得到base64后的flag

flag{2467ce26-fff9-4008-8d55-17df83ecbfc2}

很难绷的一题,属于是没活硬整。。。
弄个超小众软件里面隐藏点信息让我们找究竟有什么意义,没明白。。

posted @ 2024-05-20 09:57  revalue  阅读(296)  评论(0编辑  收藏  举报