挑战一览
Web-23. Secure Authentication System 的类型转换陷阱
该登录门户提供表单登录、JSON API 登录和验证码检查。管理员真实密码未知,但比较操作的实现可能允许绕过。
Web-24. 利用 Secure Bank 的竞态条件
Secure Bank 可用余额中的金币购买奖品。若余额检查和扣款不是原子操作,请思考如何利用两者之间的空隙。
Web-25. Greeting Card Generator 中的 SSTI
该贺卡生成器以 Flask/Jinja2 构建,会把用户消息直接交给模板引擎渲染。请检查模板语法能被执行到何种程度。
从事件日志检测暴力破解
分析服务器 `kinoco-srv01` 的 sshd 认证日志 `/challenge/auth.log`,找出暴力破解成功的攻击者会话。 这台服务器是蜜罐,每打开一个会话,PAM 模块都会发放一个金丝雀令牌,并按下面的形式掩码后记录。…
网络分析:802.1Q VLAN 隔离的流量
`capture.pcap` 是镜像交换机中继端口抓到的流量,多个 VLAN 的帧带着 802.1Q 标签混在一起。每个 VLAN 上都有同一台设备以 `MGMT|<片段>` 的形式向 UDP 5140…
网络分析:SNMP 信息泄露
捕获到一台使用弱 community string `public` 的 SNMPv2c 设备返回 GetResponse。请分析 `traffic.pcap` 中 SNMP(UDP/161)的 varbind,并从厂商 OID…
网络分析:SSL Strip 导致的明文凭据
SSL Strip 攻击将 HTTPS 降级为 HTTP,受害者凭据以明文传输并被捕获。请分析 `traffic.pcap` 中的明文 HTTP POST,提取登录密码(即旗标)。
网络分析:解除 WebSocket 帧掩码
`capture.pcap` 记录了浏览器与聊天服务器之间的 WebSocket 通信。客户端发往服务器的每一帧都用不同的 4 字节密钥做了掩码。请解析各帧并去掉掩码,把拆成三帧的消息重新拼起来,取出部署用令牌(旗标)。
网络分析:解码自定义协议
捕获到使用简易自定义二进制协议的系统流量。请从 `traffic.pcap` 分析 TCP 9999 端口上的帧结构,解码有效载荷并取得旗标。
从内存发现可疑网络连接
从被入侵主机 `kinoco-app03` 的内存镜像中,恢复出了套接字列表 `/challenge/netstat_dump.txt`,以及每个拥有 ESTABLISHED 套接字的进程的堆区域…
从内存恢复执行过的命令
从内存字符串记录 `memdump.txt` 中提取命令历史,找出可疑命令及其中的 flag。
恢复已删除的 SQLite 记录
给你内部聊天工具 "kinoco-msg" 的 SQLite 数据库 `/challenge/app.db`。作为 "机密消息" 发送的正文,按下面的形式保存: body = "enc:v1:" + hex(明文 XOR 密钥流)…
解开多重压缩文件
`/challenge/artifact.xz` 是攻击者试图带出的文件,被 gzip、bzip2、xz、zip、tar 层层嵌套包裹。请逐层辨认格式并剥开,从最深处的 `flag.txt` 中取得 flag。…
解密加密磁盘
`/challenge/secret_disk.img` 是真实的 LUKS2 容器,数据区里放着一份备份(tar 归档)。口令很弱,是 `/challenge/wordlist.txt` 中的某一项。 这个终端无法使用…
音频文件中的隐藏数据
`hidden.wav` 中隐藏着用通断键控(OOK)编码的消息。把音调的开/关转换为比特并解码,即可得到 flag。 不提供参考解码器。请自己读取并解析信号,例如使用标准库的 `wave` 模块。 提供文件:hidden.wav
从 Android 应用提取秘密密钥
解压安全的 ZIP 格式 APK fixture(evidence/app.apk),分析 Android 资源中记录的已加密 API secret。开发者在构建中误带了多把私钥,请判断哪一把对应该 secret 并解密。…
从 CloudTrail 日志检测未授权访问
分析 CloudTrail 导出文件 `/challenge/cloudtrail.json`,追踪被盗访问密钥的未授权使用以及机密数据的外传。 攻击者在侦察、提权并创建新的访问密钥之后,用这个新密钥把读到的机密以多次 S3…
从 Docker 镜像层提取秘密
`/challenge/image/` 是展开后的 `docker save` 导出(OCI 布局)。各层以摘要命名,作为 gzip 压缩的 tar 存放在 `blobs/sha256/` 中,层的顺序要从…
解密 TLS 加密的 HTTPS 通信
`~/evidence/` 中有记录某台客户端 PC 的 HTTPS 通信的抓包文件 `traffic.pcap`(libpcap 格式),以及浏览器写出的 TLS 密钥日志 `sslkeylog.txt`(NSS 格式)。…
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 是否能提升权限。