挑战一览
Linux-符号链接迷宫:穿过分岔路径
多个目录由符号链接交错相连。请不要被诱饵提示文件误导,逐一跟随链接到真正的旗标文件。
Linux-脚本调试:修复损坏的 Bash 脚本
脚本内有多个故意设置的拼写和语法错误,无法运行到最后。请用 Bash 调试功能逐一修复。
Linux-网络基础:连接监听端口
后台服务正在某个端口监听。请用 `ss` 或 `netstat` 找到端口,并以 `nc` 连接来接收旗标。
Linux-备份查找:辨认真正的临时文件
项目目录有多个以 `.bak`、`.tmp` 或 `~` 结尾的诱饵备份和临时文件;真正的旗标位于隐藏文件中。
Linux-管道:用 grep 和 awk 筛选日志
访问日志包含大量记录。某个 IP 在短时间内产生了大量 404,将它这一连串请求的路径拼接起来即为旗标。请用管道组合 grep、awk、sort、uniq 等命令来拼出答案。
Linux-软件包信息:检查已安装软件包详情
系统安装了一个自制 deb 软件包。请用 `dpkg` 或 `apt` 查看其详情,并在描述中寻找隐藏信息。
Linux-进程追踪:找出运行中的目标进程
多个后台进程中有一个把旗标放在命令行参数里。请用 `ps` 列出并找出它。
Linux-用户调查:用 awk 筛选目标用户
系统中注册了多个用户。请用 `awk` 解析 `/etc/passwd` 找到满足条件的用户,再检查其主目录中的隐藏文件。
Linux-日志轮转:搜索压缩的旧日志
部分旧日志已被 gzip 压缩;请在不解压文件的情况下搜索其中的旗标。
Linux-日志探索:从多份日志中挖出旗标
应用与系统日志中只有一条 `DEBUG` 记录包含旗标。请用 `grep` 等工具筛选。
Linux-环境变量秘密:寻找名为 FLAG 的变量
系统设置了多个环境变量,其中包括诱饵凭据。请列出变量并找出保存旗标的那一个。
OSINT 基础:元数据分析
从离职员工的共享盘中回收的文件(照片 `IMG_*.jpg` 和 Office 文档)位于 `/challenge/evidence/`。有几名员工使用了个人导出工具 `PhotoVault-ExportTool`,用它导出的照片会在…
文本处理大师:sed 与 awk
`/app/data.csv` 的第 2 列价格需至少为 1000;把第 3 列中的 `_` 改为空格,并为第 1 列添加 `PROD-`。处理后第一行的商品名是旗标。
进程猎人:隐藏进程
名为 `secret_service` 的后台进程把旗标放在命令行参数中。请找出它的 PID、运行用户和完整参数。
日志分析:找出入侵者
`/app/auth.log` 记录认证事件。找出一小时内失败登录至少 10 次的 IP,并取得该 IP 的第一次失败时间戳。日志格式:`[YYYY-MM-DD HH:MM:SS] Failed login from…
压缩迷宫:多层归档文件
`/app/flag.tar.gz` 是多层压缩文件:`flag.tar.gz → flag.tar → flag.zip.bz2.gz → flag.zip.bz2 → flag.zip → flag.txt`。请逐层解压并读取最终文件。
正则表达式大师:日志文件分析
`/app/access.log` 有数千条访问记录。提取 IP 以 `192.168.1.` 开头且状态码为 `404` 的记录,匹配行数即为旗标。
环境变量大师:PATH 劫持
隐藏命令 `getflag` 位于 `/app/secret_bin`,但目录未在 `PATH` 中。请用绝对路径和修改 `PATH` 两种方式运行它。
Docker 取证:检查容器证据
在没有 Docker 守护进程的环境中调查镜像 `registry.internal/kinoco-billing-api:2.4.1` 的元数据:`/challenge/image_history.txt`(相当于 `docker…
从 Git 历史中找出被删除的 API 密钥
`/app/repo` 是一个 Git 仓库。开发者曾误将 API_KEY 提交,并在后续提交中将其删除。请查看正常的 Git 历史,找到删除前的 `config.py`,恢复其 API 密钥中包含的旗标。
Linux-Capabilities:不依赖 SUID 的提权
系统中特定二进制文件被授予 Linux capabilities。请研究不使用 SUID 位的 capabilities 提权方法。
Linux-SUID:通过 find 理解提权风险
系统有一份设置了 SUID 位的 `find` 副本。本题在隔离环境中演示此类危险配置为何可导致高权限 shell。
Linux-proc 内存:查看进程环境变量
持续运行的守护进程将旗标保存在环境变量中。请通过 `/proc` 文件系统检查该进程。
Linux-strace:追踪系统调用找出文件
提供的二进制既不输出到标准输出也不落盘。它从隐藏文件读取密钥,在内存中还原旗标并写入 /dev/null。请用 strace 追踪系统调用,找出哪一个调用的参数暴露了旗标。