挑战一览
01:第一步——二进制与十六进制
安全领域常使用二进制和十六进制。请把给出的十六进制序列转换成 ASCII 字符,找到旗标。 将下列十六进制转换为 ASCII: `46 4c 41 47 7b 68 65 78 5f 74 6f 5f 61 73 63 69 69 7d`
09. Python 自动化:读取文件
安全工作常需用编程处理大量数据。本题的 `data.txt` 有 100 行文本,其中一行包含旗标;请补全 Python 代码并找出它。
10:安全基础——伦理与规则
成为白帽黑客不仅需要技术,也需要伦理与法律意识。阅读情境后,选择发现朋友网站漏洞时应采取的正确行动。 请思考哪一种行动才是恰当的。 这种先向所有者报告所发现漏洞的行为称为“负责任的披露(responsible disclosure)”。…
API 请求:识别最高利润交易
容器启动时,股票 API 会在 http://localhost:9102 上运行(无需自己启动 server.py)。请通过 GET /api/stocks 和 GET /api/stocks/<symbol> 获取 5 只股票共约…
Bash 脚本:自动化的力量
`/app/numbers.txt` 每行有一个 1 到 1000 的数字。求同时是 3 和 5 的倍数、但不能被 7 整除的数字之和;总和是旗标。
Git 侦探:丢失的提交
`/app/repo` 是 Git 仓库。开发者误删了含重要信息的提交;请用 `git reflog` 找回并读取其提交消息中的旗标。
JSON 大师:数据提取
`/app/users.json` 有 100 位用户。筛选 `age` 在 25–30、`country` 为 `Japan`、`is_active` 为 `true` 的用户;按字母排序后第一个邮箱构成 `KINOCO{...}`。
OSINT 基础:元数据分析
从离职员工的共享盘中回收的文件(照片 `IMG_*.jpg` 和 Office 文档)位于 `/challenge/evidence/`。有几名员工使用了个人导出工具 `PhotoVault-ExportTool`,用它导出的照片会在…
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 练习:追踪访问日志中的目标 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 是…
文本处理大师:sed 与 awk
`/app/data.csv` 的第 2 列价格需至少为 1000;把第 3 列中的 `_` 改为空格,并为第 1 列添加 `PROD-`。处理后第一行的商品名是旗标。
编程: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、运行用户和完整参数。
日志分析:找出入侵者
`/app/auth.log` 记录认证事件。找出一小时内失败登录至少 10 次的 IP,并取得该 IP 的第一次失败时间戳。日志格式:`[YYYY-MM-DD HH:MM:SS] Failed login from…