RCTF 2019 杂项 Disk WriteUp

图源(后补):《明日方舟》游戏背景 龙门之夜

本文ID:23166646-ab98-11e9-ad68-d1f5f7d77a33


我又来随便糊一篇文章了。

题目设定如下:

An otaku used VeraCrypt to encrypt his favorites.

Password: rctf

Flag format: rctf{a-zA-Z0-9_}

题目给的提示十分简单。于是准备 VeraCrypt,开始解题。

找前半段Flag

首先下载题目附件,得到 rctf-disk.zip,解压得到 encrypt.vmdk。因为无法确定 vmdk 是 VeraCrypt 加密完的虚拟硬盘文件随便改了个格式,还是存储了 VeraCrypt 加密后虚拟磁盘文件的虚拟磁盘(这话真的超级绕hhh),因此先尝试使用 7zip 打开该文件。

7zip 可以成功打开

西湖论剑预选赛 Misc 第二题 Write-UP

图源:“西湖论剑”线上赛主页

本文ID:23166640-ab98-11e9-ad68-d1f5f7d77a33


所以说,近期铺天盖地宣传的“西湖论剑”网络安全技能赛预选已经结束了。在这里随便糊一篇文章(也是我第一次写Write-Up文章),就聊聊杂项最先放出的那个第二题的解法。

首先拿到题,解压,发现里面有“题目描述”,先看描述,是这么写的:

我们截获了一些IP数据报,发现报文头中的TTL值特别可疑,怀疑是通信方嵌入了数据到TTL,我们将这些TTL值提取了出来,你能看出什么端倪吗?

然后看给出的另一个文件,ttl.txt,里面的内容是这样的:


不难发现TTL值只有 $63$,$127$,$191$,$255$ 四种,都是$2$的某次幂$-1$的值。于是将这四个数都转换成二进制,得到 $111111_2$、$1111111_2$、$10111111_2$、$11111111_2$ 四个二进制数。从后面两个数字可以观察到二进制数的开头两位似乎有关系。又因为TTL值为一个8位整数,进行合理猜想,不妨将不足8位的二进制数开头补0,变为8位后再取开头两位。即:$00111111_2$、$01111111_2$、$10111111_2$、$11111111_2$提取开头两位为:$00_2$、$01_2$、$10_2$、$11_2$,恰好为全排列,可以用于数据的存储。

这样每组两个比特,四组就可以组成一个字节。博客园上也有文章提到了这种数据隐藏方式(点击这里)。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×