挑战一览

清除筛选

38 题 (第 1 / 2 页)

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

从 Chrome 浏览器提取会话 Cookie

给你从 Linux 版 Chrome 配置文件中取出的 `/challenge/Cookies` 和 `/challenge/History`(都是 SQLite)。 受害者点击内部邮件中的链接,经过一个伪造的 SSO…

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

检测 DNS 隧道

从 `dns_queries.log` 中检测 DNS 隧道造成的数据外传,并恢复 flag。

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

Docker 取证:检查容器证据

在没有 Docker 守护进程的环境中调查镜像 `registry.internal/kinoco-billing-api:2.4.1` 的元数据:`/challenge/image_history.txt`(相当于 `docker…

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

从 Git 历史中找出被删除的 API 密钥

`/app/repo` 是一个 Git 仓库。开发者曾误将 API_KEY 提交,并在后续提交中将其删除。请查看正常的 Git 历史,找到删除前的 `config.py`,恢复其 API 密钥中包含的旗标。

Linux难度 3★★★☆☆

Linux-Capabilities:不依赖 SUID 的提权

系统中特定二进制文件被授予 Linux capabilities。请研究不使用 SUID 位的 capabilities 提权方法。

Linux难度 3★★★☆☆

Linux-SUID:通过 find 理解提权风险

系统有一份设置了 SUID 位的 `find` 副本。本题在隔离环境中演示此类危险配置为何可导致高权限 shell。

Linux难度 3★★★☆☆

Linux-proc 内存:查看进程环境变量

持续运行的守护进程将旗标保存在环境变量中。请通过 `/proc` 文件系统检查该进程。

Linux难度 3★★★☆☆

Linux-strace:追踪系统调用找出文件

提供的二进制既不输出到标准输出也不落盘。它从隐藏文件读取密钥,在内存中还原旗标并写入 /dev/null。请用 strace 追踪系统调用,找出哪一个调用的参数暴露了旗标。

Linux难度 3★★★☆☆

Linux-竞争条件:分析 TOCTOU 窗口

root 定期运行的清理脚本在检查与处理文件之间存在 TOCTOU 间隙;本题用于理解符号链接与时序风险。

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

从 NTFS $MFT 查找已删除文件痕迹

给你把 Windows 终端 `KINOCO-WS07` 的 `$MFT` 按记录导出的文本 `/challenge/mft_records.txt`(开头给出簇大小和转储的起始 LCN),以及卷 C: 的簇原始数据…

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

Python API:接口自动化

容器内在 `http://127.0.0.1:8000/api/records?page=N` 运行一个分页本地 API。请遍历所有页面直到 `next` 为 `null`,只收集 `tag == "flag"` 的记录;每条形如…

编程难度 3★★★☆☆

Python 自动化:分析 SQLite 数据库

请分析每次启动时生成的 data.db(SQLite,含 users / orders / audit_log)。按 user_id 对 orders 做 SUM(amount) 聚合,找出订单总额最高的前 3…

编程难度 3★★★☆☆

Python 自动化:解密自定义密码

`cipher.txt` 以十六进制保存经自定义密码加密的旗标。加密逐字节执行 add(密钥加法)-> xor(位置相关)-> rotl(循环移位);请按逆序实现解密。完整规格见 `python3 challenge.py`。

编程难度 3★★★☆☆

Python 自动化:破解加密 ZIP 密码

每次启动都会生成 /challenge/secret.zip。其中有 flag.txt 和 readme.txt,使用 ZipCrypto 加密。密码是 /challenge/wordlist.txt 中的一个词再加上两位数字(00 到…

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

SQL 查询大师:复杂连接

SQLite 数据库 `/challenge/company.db` 有三张表: - employees (id, name, department_id, salary, email, note) - departments (id,…

编程难度 3★★★☆☆

算法:迷宫中的 BFS 最短路径

请用 BFS 求 `data.txt` 中从 S 到 E 的最短路径,并将 UDLR 移动序列输入 `challenge.py`。正确路径会显示启动时注入的 FLAG。

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

从事件日志检测暴力破解

分析服务器 `kinoco-srv01` 的 sshd 认证日志 `/challenge/auth.log`,找出暴力破解成功的攻击者会话。 这台服务器是蜜罐,每打开一个会话,PAM 模块都会发放一个金丝雀令牌,并按下面的形式掩码后记录。…

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

strace 调试:跟踪程序行为

`/challenge/strace.log` 是用 strace 跟踪无源代码程序 `/app/mystery_program` 得到的记录。程序会读取多个内容形似令牌(`KINOCO{...}`)的文件,但同时满足以下两个条件的只有一…

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

journalctl:分析 systemd 日志

分析以 `journalctl -o short` 格式导出的 systemd 日志 `/challenge/system.log`。每行格式为“时间 主机 单元[PID]: 优先级: 消息”。单元字段为 `authd` 且优先级字段为…

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

Netcat:离线回调记录分析

无需连接任何外部主机,请分析预先记录的 `artifacts/netcat/callback-transcript.log`,不会启动 listener 或 shell。在连接列表中找到从被攻陷主机 `10.0.5.23` 连到…

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

性能分析:定位资源瓶颈

分析服务器快照 `/challenge/metrics.log`。前半部分是 top 风格的进程表(%CPU 在第 9 列,%MEM 在第 10 列),后半部分是 ps -ef 风格的完整命令行列表。%CPU 不低于 50.0 且…

编程难度 3★★★☆☆

编程:SQLite 证据库

evidence.db 是每次启动时用随机数据生成的 SQLite 数据库(位于 /challenge,包含 users / sessions / access_log 三张表)。对 trust_score 不低于 80…

编程难度 3★★★☆☆

编程:Web 抓取图遍历

site.json 是每次启动时用随机数据生成的抓取结果(位于 /challenge),包含 start 与 target 的 URL,以及每个页面的 url / links / fragment(Base64 片段)。请求出从…

编程难度 3★★★☆☆

编程:ZIP 密码恢复

secret.zip 是每次启动时创建的、用 ZipCrypto(传统 PKWARE 加密)加密的 ZIP(位于 /challenge,同目录有 wordlist.txt)。密码是 wordlist.txt 中的某一个词,后面再加 2…