挑战一览
Web-28. 劫持 OAuth 授权码
该 OAuth 2.0 授权提供方提供登录流程,但对 redirect_uri 的校验可能过弱。请尝试劫持授权码并取得管理员级访问令牌。
Web-29. MongoDB 登录表单中的 NoSQL 注入
该登录门户使用 MongoDB,并把用户名和密码 JSON 直接放入查询。请尝试在不知道真实密码时以管理员身份登录。
Web-30. KinoVault 中的不安全反序列化
旧式备份系统 KinoVault 据称用 Python `pickle` 序列化用户会话并存进 Cookie。请分析 Cookie 格式,并检查构造的 pickle 是否能提升权限。
自定义工具:目录扫描报告分析
请分析本地生成的 `artifacts/scanner/directory-report.ndjson`,而不是扫描真实网站。扫描器对同一站点扫描了多次(`run`)。只有最新一次 run 中 `path` 恰好为…
SSH 隧道:访问回环内部服务
在单个容器内练习SSH本地端口转发。SSH监听127.0.0.1:22,内部服务使用/run/tunnel/database.sock,本地玩家无法直接访问该套接字。…
网络分析:从 TCP 还原 chunked 与 gzip 的 HTTP
`capture.pcap` 记录了在一条 TCP 连接上进行的两次 HTTP 交互。服务器发出的分段顺序被打乱,部分因重传而重复;第二个响应(`GET /api/export`)同时使用了 chunked 与 gzip。请重组 TCP…
网络分析:TCP 重传差分隐蔽信道
`capture.pcap` 中有 TCP 序列号相同的重传包。请仅提取有效载荷发生变化的重传,对每个重复序列号的两个单字节有效载荷做 XOR,并按序列号顺序拼接以恢复旗标。
从内存提取恶意软件载荷
`/challenge/memstrings.txt` 是从可疑进程地址空间中提取的字符串,加载器解开的第二阶段载荷(Base64)混在诱饵字符串和诱饵 Base64 之中。`/challenge/malfind_region.txt`…
从内存检测隐藏的内核模块
从疑似感染 LKM rootkit 的 Linux 主机内存中恢复出三份模块信息。`/challenge/modules_list.txt` 是内核 modules 链表(相当于…
解读多阶段隐写
`/challenge/cover.png` 和 `/challenge/notes.txt` 中埋设了三个阶段的隐写。每个阶段都包含读取下一阶段所需的密钥(口令或符号对应表),密钥每次启动都会变化,因此无法跳过中间阶段。请依次分析…
恢复碎片化的 JPEG 文件
`/challenge/fragments/` 中有从存储卡未分配空间回收的 256 字节簇(`clus_NNNN.bin`)。编号与原始顺序无关,还混有其他相机的照片和垃圾数据。请根据 JPEG 的结构(标记长度、DRI 和…
GPG 加密:解密受保护消息
练习用 GnuPG 解密。请导入 `/challenge/keys/` 中的所有私钥,并解密 `/challenge/messages/` 中的每一封密文。只有用真正接收者的密钥加密的那一封,解密后才是包含旗标的明文;其余都是无害的业务通…
恢复损坏的 RAID5 阵列
文件服务器 fs01 的 RAID5 阵列 `/dev/md0`(4 块盘)因成员 sdd 故障而无法组装。`~/evidence/` 中有各成员的镜像(`sdb.img`、`sdc.img`、`sde.img`,空的…
Nmap NSE:脚本化服务枚举
对内部子网 `10.66.13.0/24` 执行 `nmap -sV -sC --script vuln` 的结果保存在 `/challenge/scan_results/nmap_scan.nmap`(普通格式)和…
关联多个日志以重建攻击场景
`/challenge/web.log`、`/challenge/auth.log` 和 `/challenge/db.log` 中记录了混在大量正常通信里的同一次入侵。请从对 Web…
静态分析:审阅程序证据
内部笔记应用的 Python 源代码位于 `/challenge/src/`。上一次静态分析标记的 9 行在行尾带有 `# finding: KINOCO{...}` 形式的发现 ID,但大多数是误报。…
APT 模拟:攻击链证据分析
这不是执行攻击的题目,而是阅读已发生事件日志的蓝队演练。请从汇总了 EDR、认证和网络设备日志的统一时间线 `/challenge/timeline.log` 中,重建混在日常业务中的 APT…
重建 APT 攻击的全部阶段
四个日志 `/challenge/edr_process.log`、`proxy_http.log`、`dns_queries.log` 和 `dlp_transfer.log` 中,APT 攻击混杂在大量正常记录里。…
破解 BitLocker 加密驱动器
用安全的元数据 fixture 学习 BitLocker 恢复密钥的验证。bitlocker.img 不是真实卷。请将候选密钥的 SHA-256 与记录的摘要比对以确定恢复密钥,再用该密钥解密受保护的载荷。
提取 Bitcoin 交易中隐藏的消息
受害者把赎金支付到了比特币地址 `bc1qr4nsmw4r3pay7hzfx0d9cq3vkt8e6m5ljgs2ua`。`/home/ctfuser/evidence/transactions.json`…
漏洞赏金:离线分诊报告审计
不要测试真实应用,请分析固定的 `artifacts/bug-bounty/triage-report.json`。漏洞链报告的 `status` 为 `validated-chain`,并在 `chain` 中按顺序列出组成它的…
从 IoT 设备固件提取秘密密钥
分析网络摄像头 KNC-CAM-2000 的更新文件 `/home/ctfuser/evidence/firmware.bin`(不要连接真实设备)。厂商把 rootfs 加密后分发,解密由引导程序在启动时完成。头部与分区表的格式见…
C2 框架:离线通信分析
不会启动 C2 服务器、agent、socket 通信或命令执行。请分析本地的 `artifacts/c2/beacon-transcript.log`。beacon 会把一条消息拆成多个分片(`frag=i/n`)并乱序发送。收集…
反取证:识别痕迹清除
攻击者入侵后试图清除痕迹:从 `/challenge/auth_syslog.log`(`kinoco-bastion01` 在 2026-07-04 夜间的主日志)中删掉了一段时间,并清空了 shell 历史。`rsyslogd`…