挑战一览

清除筛选

27 题 (第 1 / 2 页)

基础技能难度 4★★★★☆

AWS CLI:云资源枚举

`/challenge/s3_audit/` 中是离线导出的 S3 配置审计记录(`buckets.json` 以及每个 bucket 的 `*_publicaccessblock.json`、`*_policy.json`、`*_acl…

数字取证难度 4★★★★☆

从 Android 应用提取秘密密钥

解压安全的 ZIP 格式 APK fixture(evidence/app.apk),分析 Android 资源中记录的已加密 API secret。开发者在构建中误带了多把私钥,请判断哪一把对应该 secret 并解密。…

基础技能难度 4★★★★☆

Ansible:Vault 导出审计

无需运行 Ansible 或接触服务器,请分析生成的运行记录 `artifacts/ansible/vault-export.yml`。其中有大量任务结果,其中多数带有 `vault_payload_hex`。只有 `host` 为…

基础技能难度 4★★★★☆

CI/CD 安全:工作流泄露审计

审计 `/challenge/repo/.github/workflows/` 下的 20 个 GitHub Actions 工作流。许多步骤带有 `# audit-ticket: KINOCO{...}` 注释。…

数字取证难度 4★★★★☆

从 CloudTrail 日志检测未授权访问

分析 CloudTrail 导出文件 `/challenge/cloudtrail.json`,追踪被盗访问密钥的未授权使用以及机密数据的外传。 攻击者在侦察、提权并创建新的访问密钥之后,用这个新密钥把读到的机密以多次 S3…

数字取证难度 4★★★★☆

从 Docker 镜像层提取秘密

`/challenge/image/` 是展开后的 `docker save` 导出(OCI 布局)。各层以摘要命名,作为 gzip 压缩的 tar 存放在 `blobs/sha256/` 中,层的顺序要从…

基础技能难度 4★★★★☆

Terraform:tfstate 工件审计

无需初始化 Terraform provider,请分析生成的 `terraform/terraform.tfstate`。outputs 中的 `recovery_secret_arn` 指向恢复用密钥的 ARN。在…

基础技能难度 4★★★★☆

Kubernetes:Pod 快照调查

无需连接 Kubernetes 集群,请调查 `artifacts/kubernetes/` 中的两个快照(`pod-snapshot.yaml` 和 `secret-snapshot.yaml`)。命名空间…

Linux难度 4★★★★☆

Linux-内核模块:安全分析模拟驱动

本题将一个脆弱的字符设备驱动作为安全的用户空间模拟进行分析,不加载真实内核模块。root 守护进程将该驱动暴露为 /run/vulnerable.sock,你以非特权用户 challenger(uid 1000)连接。阅读提供的驱动源码…

Linux难度 4★★★★☆

Linux-缓冲区溢出:利用 gets() 漏洞

提供了关闭保护机制的易受攻击 SUID C 二进制文件。利用缓冲区溢出将控制流转入隐藏函数。

数字取证难度 4★★★★☆

解密 TLS 加密的 HTTPS 通信

`~/evidence/` 中有记录某台客户端 PC 的 HTTPS 通信的抓包文件 `traffic.pcap`(libpcap 格式),以及浏览器写出的 TLS 密钥日志 `sslkeylog.txt`(NSS 格式)。…

Web 安全难度 4★★★★☆

Web-26. User Profile Manager 中的原型污染

在这个 Node.js/Express 应用中,已登录用户能更新自己的资料。请检查用于更新的递归合并函数是否过滤了特殊键。

Web 安全难度 4★★★★☆

Web-27. GraphQL API 的内省信息泄露

该 GraphQL API 公开 User 对象的 schema,并启用了内省。请调查默认界面之外是否存在未记录的查询或字段。

Web 安全难度 4★★★★☆

Web-28. 劫持 OAuth 授权码

该 OAuth 2.0 授权提供方提供登录流程,但对 redirect_uri 的校验可能过弱。请尝试劫持授权码并取得管理员级访问令牌。

Web 安全难度 4★★★★☆

Web-29. MongoDB 登录表单中的 NoSQL 注入

该登录门户使用 MongoDB,并把用户名和密码 JSON 直接放入查询。请尝试在不知道真实密码时以管理员身份登录。

Web 安全难度 4★★★★☆

Web-30. KinoVault 中的不安全反序列化

旧式备份系统 KinoVault 据称用 Python `pickle` 序列化用户会话并存进 Cookie。请分析 Cookie 格式,并检查构造的 pickle 是否能提升权限。

基础技能难度 4★★★★☆

自定义工具:目录扫描报告分析

请分析本地生成的 `artifacts/scanner/directory-report.ndjson`,而不是扫描真实网站。扫描器对同一站点扫描了多次(`run`)。只有最新一次 run 中 `path` 恰好为…

基础技能难度 4★★★★☆

SSH 隧道:访问回环内部服务

在单个容器内练习SSH本地端口转发。SSH监听127.0.0.1:22,内部服务使用/run/tunnel/database.sock,本地玩家无法直接访问该套接字。…

数字取证难度 4★★★★☆

从内存提取恶意软件载荷

`/challenge/memstrings.txt` 是从可疑进程地址空间中提取的字符串,加载器解开的第二阶段载荷(Base64)混在诱饵字符串和诱饵 Base64 之中。`/challenge/malfind_region.txt`…

数字取证难度 4★★★★☆

从内存检测隐藏的内核模块

从疑似感染 LKM rootkit 的 Linux 主机内存中恢复出三份模块信息。`/challenge/modules_list.txt` 是内核 modules 链表(相当于…

数字取证难度 4★★★★☆

解读多阶段隐写

`/challenge/cover.png` 和 `/challenge/notes.txt` 中埋设了三个阶段的隐写。每个阶段都包含读取下一阶段所需的密钥(口令或符号对应表),密钥每次启动都会变化,因此无法跳过中间阶段。请依次分析…

数字取证难度 4★★★★☆

恢复碎片化的 JPEG 文件

`/challenge/fragments/` 中有从存储卡未分配空间回收的 256 字节簇(`clus_NNNN.bin`)。编号与原始顺序无关,还混有其他相机的照片和垃圾数据。请根据 JPEG 的结构(标记长度、DRI 和…

基础技能难度 4★★★★☆

GPG 加密:解密受保护消息

练习用 GnuPG 解密。请导入 `/challenge/keys/` 中的所有私钥,并解密 `/challenge/messages/` 中的每一封密文。只有用真正接收者的密钥加密的那一封,解密后才是包含旗标的明文;其余都是无害的业务通…

数字取证难度 4★★★★☆

恢复损坏的 RAID5 阵列

文件服务器 fs01 的 RAID5 阵列 `/dev/md0`(4 块盘)因成员 sdd 故障而无法组装。`~/evidence/` 中有各成员的镜像(`sdb.img`、`sdc.img`、`sde.img`,空的…