Linux Exploit 利用的通用条件
典型场景与必要条件对照
| 场景 | 关键条件 | 常用检查/命令 |
|---|---|---|
| 内核本地提权 | 存在漏洞的内核版本;匹配的 Exploit;能在目标编译/执行;可稳定触发 | uname -r;cat /etc/os-release;searchsploit linux kernel;gcc 编译与执行 |
| SUID 滥用 | 存在root 所有的 SUID 程序;程序可被诱导执行任意命令或存在环境变量/库劫持路径 | find / -perm -u=s -type f 2>/dev/null;strings/ltrace/strace 分析;参考 GTFOBins |
| sudo 配置错误 | /etc/sudoers 存在宽松规则(如可无密码执行、可逃逸到 shell 的命令) | sudo -l;检查规则是否能执行可逃逸命令(如 less、vim、python 等) |
| 计划任务 Cron | 可写/可劫持的 cron 脚本或 PATH;任务以root运行 | crontab -l;cat /etc/crontab /etc/cron.d/*;检查脚本权限与目录可写性 |
| NFS 无 root_squash | 共享配置含no_root_squash;可挂载并写入SUID程序 | cat /etc/exports;showmount -e;尝试挂载并创建 SUID 二进制 |
| Docker 容器逃逸 | 加入docker 组即可操作 daemon;或容器为特权容器/具备CAP_SYS_ADMIN且无 AppArmor | docker images/run;fdisk -l;capsh --print;检查 /sys/kernel/security/apparmor |
| 内核特性型 Exploit | 特定内核配置/符号可见性/能力位满足要求 | cat /proc/sys/kernel/kptr_restrict;cat /proc/sys/kernel/perf_event_paranoia_level;必要时调整或具备相应能力 |
快速自检清单
合规与安全提示