挑战一览
高级 Bash:复杂脚本处理
`/challenge/logs/` 中有 4 台 Web 前端的访问日志(combined log format,60 个文件,超过 10 万行)。WAF 为许多来源 IP 各留下了一行 `waf_rule=...…
AWS CLI:云资源枚举
`/challenge/s3_audit/` 中是离线导出的 S3 配置审计记录(`buckets.json` 以及每个 bucket 的 `*_publicaccessblock.json`、`*_policy.json`、`*_acl…
Ansible:Vault 导出审计
无需运行 Ansible 或接触服务器,请分析生成的运行记录 `artifacts/ansible/vault-export.yml`。其中有大量任务结果,其中多数带有 `vault_payload_hex`。只有 `host` 为…
CI/CD 安全:工作流泄露审计
审计 `/challenge/repo/.github/workflows/` 下的 20 个 GitHub Actions 工作流。许多步骤带有 `# audit-ticket: KINOCO{...}` 注释。…
Terraform:tfstate 工件审计
无需初始化 Terraform provider,请分析生成的 `terraform/terraform.tfstate`。outputs 中的 `recovery_secret_arn` 指向恢复用密钥的 ARN。在…
Kubernetes:Pod 快照调查
无需连接 Kubernetes 集群,请调查 `artifacts/kubernetes/` 中的两个快照(`pod-snapshot.yaml` 和 `secret-snapshot.yaml`)。命名空间…
Linux-内核模块:安全分析模拟驱动
本题将一个脆弱的字符设备驱动作为安全的用户空间模拟进行分析,不加载真实内核模块。root 守护进程将该驱动暴露为 /run/vulnerable.sock,你以非特权用户 challenger(uid 1000)连接。阅读提供的驱动源码…
Linux-缓冲区溢出:利用 gets() 漏洞
提供了关闭保护机制的易受攻击 SUID C 二进制文件。利用缓冲区溢出将控制流转入隐藏函数。
Web-26. User Profile Manager 中的原型污染
在这个 Node.js/Express 应用中,已登录用户能更新自己的资料。请检查用于更新的递归合并函数是否过滤了特殊键。
Web-27. GraphQL API 的内省信息泄露
该 GraphQL API 公开 User 对象的 schema,并启用了内省。请调查默认界面之外是否存在未记录的查询或字段。
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,并按序列号顺序拼接以恢复旗标。
GPG 加密:解密受保护消息
练习用 GnuPG 解密。请导入 `/challenge/keys/` 中的所有私钥,并解密 `/challenge/messages/` 中的每一封密文。只有用真正接收者的密钥加密的那一封,解密后才是包含旗标的明文;其余都是无害的业务通…
Nmap NSE:脚本化服务枚举
对内部子网 `10.66.13.0/24` 执行 `nmap -sV -sC --script vuln` 的结果保存在 `/challenge/scan_results/nmap_scan.nmap`(普通格式)和…
静态分析:审阅程序证据
内部笔记应用的 Python 源代码位于 `/challenge/src/`。上一次静态分析标记的 9 行在行尾带有 `# finding: KINOCO{...}` 形式的发现 ID,但大多数是误报。…
APT 模拟:攻击链证据分析
这不是执行攻击的题目,而是阅读已发生事件日志的蓝队演练。请从汇总了 EDR、认证和网络设备日志的统一时间线 `/challenge/timeline.log` 中,重建混在日常业务中的 APT…
漏洞赏金:离线分诊报告审计
不要测试真实应用,请分析固定的 `artifacts/bug-bounty/triage-report.json`。漏洞链报告的 `status` 为 `validated-chain`,并在 `chain` 中按顺序列出组成它的…
Linux-eBPF Rootkit:揭开隐藏进程的真相
本题将 eBPF rootkit 调查安全地模拟为离线证据分析:不加载 eBPF,请从提供的 bpftool 快照中分辨出植入程序及其映射,复原隐藏文件路径,并用植入程序自身的密钥解密保存在该文件中的加密载荷。
Linux-内核利用:安全的 Dirty COW 模拟
本题以安全、确定性的用户空间模拟介绍 Dirty COW(CVE-2016-5195)涉及的 `mmap`、`MAP_PRIVATE` 与 `madvise`;请编译并运行提供的程序,检查生成结果。