你将学到什么
- 使用基础命令调查系统
- 理解文件与权限机制
- 从日志和进程中寻找证据
通过安全练习掌握 Linux 命令、文件权限、进程、日志与权限边界。
共 39 题。
Linux难度 2系统安装了一个自制 deb 软件包。请用 `dpkg` 或 `apt` 查看其详情,并在描述中寻找隐藏信息。
Linux难度 2多个后台进程中有一个把旗标放在命令行参数里。请用 `ps` 列出并找出它。
Linux难度 2系统中注册了多个用户。请用 `awk` 解析 `/etc/passwd` 找到满足条件的用户,再检查其主目录中的隐藏文件。
Linux难度 2部分旧日志已被 gzip 压缩;请在不解压文件的情况下搜索其中的旗标。
Linux难度 2应用与系统日志中只有一条 `DEBUG` 记录包含旗标。请用 `grep` 等工具筛选。
Linux难度 2系统设置了多个环境变量,其中包括诱饵凭据。请列出变量并找出保存旗标的那一个。
Linux难度 3系统中特定二进制文件被授予 Linux capabilities。请研究不使用 SUID 位的 capabilities 提权方法。
Linux难度 3系统有一份设置了 SUID 位的 `find` 副本。本题在隔离环境中演示此类危险配置为何可导致高权限 shell。
Linux难度 3持续运行的守护进程将旗标保存在环境变量中。请通过 `/proc` 文件系统检查该进程。
Linux难度 3提供的二进制没有标准输出。请用 `strace` 追踪系统调用,确定它打开并读取的文件。
Linux难度 3root 定期运行的清理脚本在检查与处理文件之间存在 TOCTOU 间隙;本题用于理解符号链接与时序风险。
Linux难度 4本题将带 `/proc` 接口的脆弱内核模块作为安全的用户空间模拟进行分析。请从驱动源码片段找出特殊命令,并传给模拟器。
Linux难度 4提供了关闭保护机制的易受攻击 SUID C 二进制文件。利用缓冲区溢出将控制流转入隐藏函数。
Linux难度 5本题将 eBPF rootkit 调查安全地模拟为离线证据分析:不加载 eBPF,也不接触宿主内核;请检查提供的 bpftool 快照和 map 转储,复原隐藏文件路径。
Linux难度 5本题以安全、确定性的用户空间模拟介绍 Dirty COW(CVE-2016-5195)涉及的 `mmap`、`MAP_PRIVATE` 与 `madvise`;请编译并运行提供的程序,检查生成结果。