2019西湖论剑预选赛Misc第二题Write-UP
图源:《送别》 nitoo190 112680544
所以说,近期铺天盖地宣传的“西湖论剑”网络安全技能赛预选已经结束了。在这里随便糊一篇文章(也是我第一次写Write-Up文章),就聊聊杂项最先放出的那个第二题的解法。
首先拿到题,解压,发现里面有“题目描述”,先看描述,是这么写的:
我们截获了一些IP数据报,发现报文头中的TTL值特别可疑,怀疑是通信方嵌入了数据到TTL,我们将这些TTL值提取了出来,你能看出什么端倪吗?
然后看给出的另一个文件,ttl.txt
,里面的内容是这样的:

不难发现TTL值只有
这样每组两个比特,四组就可以组成一个字节。博客园上也有文章提到了这种数据隐藏方式(点击这里)。
随后编写脚本,将这些数据进行处理并将得到的二进制数据转为十六进制明文。Python脚本代码如下:(假设输入文件为ttl.txt
,输出文件为ttl_res.txt
)
1 | infile = open("ttl.txt", "r") |
得到的文件是这个样子的:

随后打开WinHex,新建文件,将记事本中的内容全选、复制,粘贴到WinHex中,粘贴方式选择“ASCII Hex”,得到如下结果:

另存为txt文件,怀疑其仍为16进制数据。在WinHex中再次新建文件,重复上述操作,得到:

FF D8 FF E1
是JPEG文件头部标志,因此保存为jpg。能从缩略图发现这是一个二维码,但是不完整。

怀疑该文件中含有多张JPEG图片。搜索JPEG文件尾标志FF D9
,结果如下:

将6个JPEG文件分别提取保存为新的文件,得:

分别是同一个二维码的不同部分。利用Photoshop拼接得到完整二维码:

二维码识别,扫描结果为:
这并非flag原文而是密文。前面的key字段有两个含义:加密方式为 AutoKey Chiper 且加密密钥为AutomaticKey
。找到在线解密网站进行解密(注意:这个网站只会将字母解密,因为符号和数字在密码加密前后不变,因此网站自动忽略了对它们的处理),用解密后的字母替换解密之前的字母得到真正的flag:
2019西湖论剑预选赛Misc第二题Write-UP
https://www.zhouweitong.site/2023/09/12/xihuctf-misc2-writeup/
来做第一个留言的人吧!