挑战一览
Python 练习:追踪访问日志中的目标 IP
data.txt(约 1300 行,每次启动时生成)是 Web 服务器的访问日志。请只提取来自 192.168.1.100 的访问(混入了 192.168.1.10、192.168.1.101 等相似的诱饵 IP)。这个 IP 通过…
Python 自动化:批量 Base64 解码
data.txt(约 150 行,每次启动时生成)的每一行都是 Base64。请逐行解码,如果结果以 "b64:" 开头,就把剩余部分再做一次 Base64 解码(有些行嵌套多层)。无法解码的行(损坏的…
Python 自动化:筛选 CSV 销售数据
每次启动时生成的 data.txt 是销售 CSV(transaction_id,date,product_id,amount,status,ref,notes)。同时满足 amount >= 10000、status 为…
Python 自动化:查询 JSON 用户数据
请分析每次启动时生成的 JSON 文件 data.txt({"users": [...]})。每个用户包含 id、name、email、role、active、token。同时满足 role 为 "admin"(完全一致)、active…
Python 自动化:解析访问日志
data.txt(约 1300 行,每次启动时生成)是 Web 服务器的访问日志。请只提取来自 192.168.1.100 的访问(混入了 192.168.1.10、192.168.1.101 等相似的诱饵 IP)。这个 IP 通过…
Python 自动化:破解密码哈希
请分析每次启动时随机生成的 data.txt(SHA-256 哈希列表)和 wordlist.txt(800 个由 4 位小写字母和数字组成的 token)。data.txt 的每一行要么是诱饵 sha256(word)(word 是…
从 Windows 注册表查找 USB 历史
分析 SYSTEM 文件(用文本表示的注册表 hive 的 USBSTOR 部分),确定 2025-11-19 14:45(UTC)前后接入的 USB 设备,并从该设备记录的值中获取 flag。学习 Windows 取证的基础。…
文本处理大师:sed 与 awk
`/app/data.csv` 的第 2 列价格需至少为 1000;把第 3 列中的 `_` 改为空格,并为第 1 列添加 `PROD-`。处理后第一行的商品名是旗标。
从磁盘镜像中寻找秘密文件
检查 ext4 文件系统的磁盘镜像 `disk.img`,找出文件系统中隐藏的秘密备份并取得 flag。 容器内无法 mount,请用 debugfs 直接遍历文件系统。
网络分析:DNS 区域传送泄露
捕获到一次针对配置错误权威 DNS 服务器的未认证区域传送(AXFR)。请分析 `traffic.pcap` 中传输的内部区域 TXT 记录并恢复旗标。
网络分析:利用 ICMP 外泄数据
内部主机 10.20.0.15 伪装成 ping(ICMP 回显请求)向外部主机 203.0.113.66 外泄了数据。请从首页下载 `traffic.pcap`,按 ICMP 序列号顺序连接发往外部主机的回显请求的数据部分,恢复旗标。
网络分析:SMB 共享枚举泄露
捕获到攻击者枚举网络 SMB 共享的通信。请下载 `traffic.pcap`,跟踪 SMB(TCP/445)流量,并从泄露的文件列表或读取结果中提取旗标。
网络分析:Telnet 凭据
一台旧服务器通过 Telnet(明文)进行远程管理。请从 `traffic.pcap` 跟踪 Telnet 会话,提取登录时传输的密码;密码就是旗标。
网络分析:匿名 FTP 传输文件
捕获到一次匿名 FTP 明文传输。请从 `traffic.pcap` 跟踪 FTP 数据传输,并从下载文件内容中提取旗标。
网络分析:明文 HTTP 凭据
请分析在公共 Wi-Fi 上截获的通信:某人通过明文 HTTP 登录。下载 `traffic.pcap`,找到 HTTP POST 登录请求并提取密码;密码就是旗标。
网络分析:明文 SMTP 附件
内部主机 10.30.0.25 未加密地向邮件服务器 10.30.0.10 的 25 端口发送了一封邮件。请从首页下载 `traffic.pcap`,取出邮件附带的机密备忘录(`secret-memo.txt`),找到其中写着的令牌(旗标…
从数据包捕获中寻找密码
分析 `traffic.pcap` 中的 HTTP 登录请求,找出管理员提交的密码。
根据文件时间戳确定入侵时刻
分析 evidence/ 中多个文件的修改时间,确定入侵发生的时间段以及与之相关的隐藏文件。隐藏文件的内容不一定能直接读懂。 学习时间线分析的基础。
编程:Bash 脚本
/challenge/jobs.log 是每次容器启动都会用随机数据重新生成的夜间批处理日志。每一行是一次作业运行,key=value 字段以空格分隔。请只选出 job 恰好为 archive 且 status 为 ok 的行,把每个…
编程:PIN 暴力匹配
/challenge/vault.json 是每次容器启动都会用随机数据重新生成的金库记录,其中有 salt(十六进制字符串)和 pin_hash = sha256(salt + pin)(把 salt 与 6 位 pin…
编程:哈希计算
请分析每次启动时随机生成的证据文件 artifact-manifest.json。每个 artifact(artifact_00 到 artifact_09)有多条记录(name、sha256、data),只有 data 经…
编程:二进制 TLV 解析
/challenge/capture.bin 是每次容器启动都会用随机数据重新生成的自定义二进制文件。开头 4 字节为 KBIN,之后是 TLV 记录(type 1 字节、length 2 字节大端、value),type…
进程猎人:隐藏进程
名为 `secret_service` 的后台进程把旗标放在命令行参数中。请找出它的 PID、运行用户和完整参数。
从内存转储中查找进程
memory.dump 是将内存转储的分析结果(pslist / psscan / cmdline)排列在一起的简化文本。请找出在进程列表中被隐藏的可疑进程,并从它携带的配置值中读出 flag。学习内存取证的基础。…