跳至主要内容
全部题解
团队题解取证

No Hack No CTF 2026

Kira-Notes

沿着浏览器历史,找到从磁盘镜像中雕刻恢复的文件与加密归档。

发布日期
类别
数字取证

起始文件是一份 Firefox 历史记录数据库。答案并不直接藏在其中;它保存的是整条线索链的第一个入口,而这条链随后跨越了源码仓库、提交讨论和共享证据包。

重建浏览轨迹

Firefox 会将访问过的 URL 存入 moz_places。一条简短的 SQLite 查询,就能按时间顺序找回相关历史记录:

SELECT url, title, last_visit_date
FROM moz_places
WHERE url IS NOT NULL
ORDER BY last_visit_date DESC;

关键记录指向一个笔记仓库。其中一条提交评论提到第二个仓库,而后者又提供了一个共享下载包,内含磁盘镜像与辅助图片。

检查文件系统,再排除诱饵

分区检查显示,镜像起始位置后 1 MiB 处存在一个 ext4 文件系统。可见的下载目录中放着多个名称诱人却大小为零的文件,因此只看文件系统列表并不足够。

我们让镜像保持只读,转而进行文件雕刻。原始数据中的文件签名帮助我们恢复了:

  • 一个加密 ZIP 归档;
  • 多张 PNG 图片;
  • 一份 PDF 文档。

我们将恢复的图片与文档相互对照,而不是分别孤立分析。其中一张便笺给出了归档密码;那些显眼的空文件只是诱饵。

解锁最终归档

该密码成功打开雕刻出的 WinZip AES 归档。归档内容提供了完成提交所需的最终证据。

关键结论

浏览器历史记录往往是一张地图,而不是终点。保留时间顺序,追踪每一个仓库引用;当挂载后的文件系统干净得不合常理时,就应检查未分配数据。

赛事页面:CTFtime 上的 No Hack No CTF 2026