你将学到什么
- 使用基础命令调查系统
- 理解文件与权限机制
- 从日志和进程中寻找证据
通过安全练习掌握 Linux 命令、文件权限、进程、日志与权限边界。
共 39 题。
Linux难度 1你已连接到 Linux 服务器;主目录中有一个写着旗标的文件。请用基本命令找到它。
Linux难度 1Linux 中以 `.` 开头的文件默认不会被普通 `ls` 显示。服务器上有一个隐藏文件,请找到它。
Linux难度 1`/var/log/app` 下有大量按日期归档的日志,只有一条 `ERROR` 记录包含旗标。请用 grep 或 find 找到它。
Linux难度 1应用配置目录深处藏着一个类似私钥的文件。请用 `find` 根据扩展名和目录线索找到并检查它。
Linux难度 1主目录中的压缩归档 `.tar.gz` 内藏有写着旗标的文件。请用 tar 解开并检查内容。
Linux难度 1检查 `/usr/local/bin` 中的定时脚本及注册它的 cron 配置;脚本注释也可能含有线索。
Linux难度 1`/etc` 下有多份服务配置,混有诱饵和真实线索;请连同注释一起仔细检查。
Linux难度 1一条符号链接链连接了多个文件。请用 `ls` 或 `readlink` 一直跟到真实文件。
Linux难度 1隐藏目录中有一个大小异常的大文件。请用 du 或 find 的大小选项定位并检查它。
Linux难度 1某个脚本没有执行权限。请检查其权限,用 `chmod` 添加执行位后运行它。
Linux难度 1扩展名为 `.jpg` 的文件未必真是图片。请使用 file 找出扩展名和实际内容不一致的文件。
Linux难度 1请从数个后台进程中找到具有目标命令行参数的进程,练习 `ps` 的基本用法。
Linux难度 1唯一的旗标文件藏在多层嵌套目录深处;请用 `find` 排除诱饵并找到它。
Linux难度 1shell 启动时设置的环境变量中有一个保存旗标。请用 env 或 echo $变量名检查。
Linux难度 1学习 Linux 基本命令和文件权限。请依据提示找到 SUID 文件,并使用题目指定的可执行文件取得旗标。
Linux难度 2检查普通用户可免密码通过 sudo 运行的命令;某个命令可用已知 GTFOBins 技巧进入 shell。
Linux难度 2系统包含 `/etc/cron.d`、`/etc/crontab` 和用户 crontab 等多处 cron 配置。检查它们,找出写有旗标的位置。
Linux难度 2root 会定期运行一个 cron 脚本。检查其权限,并思考普通用户可写时下次执行会发生什么。
Linux难度 2systemd 单元可在 `[Service]` 段设置环境变量。请检查已注册服务的定义和值。
Linux难度 2多个目录由符号链接交错相连。请不要被诱饵提示文件误导,逐一跟随链接到真正的旗标文件。
Linux难度 2脚本内有多个故意设置的拼写和语法错误,无法运行到最后。请用 Bash 调试功能逐一修复。
Linux难度 2后台服务正在某个端口监听。请用 `ss` 或 `netstat` 找到端口,并以 `nc` 连接来接收旗标。
Linux难度 2项目目录有多个以 `.bak`、`.tmp` 或 `~` 结尾的诱饵备份和临时文件;真正的旗标位于隐藏文件中。
Linux难度 2访问日志包含大量记录,其中多行有旗标。请用管道 `|` 串联命令,只提取所需字段。