2021 | 中国科学技术大学第八届信息安全大赛 | General
加密的 U 盘
题目¶
这是一个关于 LUKS (Linux Unified Key Setup) 的故事。
第一天
小 T:「你要的随机过程的课件我帮你拷好了,在这个 U 盘里,LUKS 加密的密码是 suijiguocheng123123
。」
小 Z:「啊,你又搞了 Linux 文件系统加密,真拿你没办法。我现在不方便用 Linux,我直接把这块盘做成磁盘镜像文件再回去处理吧。」
第二天
小 Z:「谢谢你昨天帮我拷的课件。你每次都搞这个加密,它真的安全吗?」
小 T:「当然了!你看,你还给我之后,我已经把这块盘的弱密码改掉了,现在是随机生成的强密码,这样除了我自己,世界上任何人都无法解密它了。」
小 Z:「我可不信。」
小 T:「你不信?你看,我现在往 U 盘里放一个 flag 文件,然后这个 U 盘就给你了,你绝对解密不出来这个文件的内容。当初搞 LUKS 的时候我可研究了好几天,班上可没人比我更懂加密!」
LUKS - 技术特点¶
- 采用一种数据分割技术保存加密密钥,保证密钥的安全性
- 支持多用户/密码对同一个设备的访问,用户密码加密主密钥
- 由 Split Master Key 可以得到 Master Key
- 数据加密密钥,即主密钥,不依赖密码,改变密码无需重新加密数据
解题思路¶
- 第一天和第二天分别对应镜像
day1.img
和day2.img
- 由题意可知,从
day1.img
到day2.img
只有用户密码发生了变更,加密数据使用的主密钥并没有变化 - Ubuntu 双击后输入密码,直接挂载
day1.img
,这里并没有 Flag (ŏωŏ),快进到下一步- 或者通过命令行的方式挂载
- 获取 LUKS 加密镜像挂载的位置
- 获取主密钥并保存为二进制文件
- 使用主密钥解密
day2.img
- 进入磁盘,就能看到
flag.txt
了
Flag¶
flag{changing_Pa55w0rD_d0esNot_ChangE_Luk5_ma5ter_key}
参考资料¶
- 钱镜洁,魏鹏,沈长达. LUKS加密卷的离线解密技术分析[J]. 信息网络安全, 2014, 14(9): 217-219.
- losetup(8) — Linux manual page
- cryptsetup(8) — Linux manual page
最后更新:
2022年4月22日 23:55:03
Contributors: