Linux 常见 Exploit 安全漏洞分类与代表案例
一 内核本地提权
- 代表漏洞与要点如下(仅列常见高影响项):
- CVE-2024-1086:Netfilter nf_tables 双重释放(UAF),低权限可提权至 root,影响 Linux 内核 v5.14–v6.6(不含已修补分支 v5.15.149、v6.1.76、v6.6.15);常见于默认配置环境,亦可能被用于容器逃逸。缓解:升级内核、临时禁用 nf_tables 或限制用户命名空间。
- CVE-2016-5195(Dirty COW):写时拷贝(COW)竞态条件,影响自 2.6.22(2007) 起的广泛内核版本,低权限可写只读映射实现提权。缓解:升级至修复版本。
- CVE-2021-22555:Netfilter 堆溢出,在启用 CONFIG_USER_NS/CONFIG_NET_NS 的 64 位系统上可提权或容器逃逸。缓解:升级内核、禁用非特权用户命名空间。
- CVE-2022-0847(Dirty Pipe):管道机制写时拷贝缺陷,可覆盖只读文件页实现本地提权。缓解:升级内核。
- CVE-2021-4034(PwnKit):polkit 的 pkexec 环境变量处理缺陷,SUID 根程序默认安装,任何本地非特权用户可获取 root。缓解:升级 polkit、移除不必要的 SUID 位。
- CVE-2021-3156(Baron Samedit):sudo 堆溢出,特定版本(如 1.8.9–1.8.23 等受影响分支)下可通过参数处理缺陷提权。缓解:升级 sudo。
二 用户态与配置滥用提权
- SUID/SGID 滥用:查找并滥用具有 SUID/SGID 的程序(如 find、vim、bash 变体等),结合 GTFOBins 执行提权;风险点在于不恰当授予 SUID 或遗留调试二进制。
- sudo 误配置:如 NOPASSWD 过度授权、命令别名/白名单配置不当,或历史漏洞(如 CVE-2019-14287、CVE-2021-3156)叠加导致提权。
- Cron 任务可写:计划任务脚本或目录可被普通用户修改,注入反弹 shell 或提权命令,实现定时触发提权。
- PATH 环境变量劫持:SUID 程序调用外部命令时未使用绝对路径,攻击者通过预置同名可执行文件劫持执行流。
- NFS 弱配置:导出目录 no_root_squash、权限宽松时,可在挂载点放置 SUID 二进制并在目标机触发执行,实现提权。
三 远程代码执行与服务漏洞
- Samba CVE-2017-7494(“SambaCry”):影响 Samba 3.5.0 之后且未打补丁的版本(不含 4.6.4/4.5.10/4.4.14),可在共享目录写入恶意库被加载执行,导致远程代码执行。
- Bash Shellshock CVE-2014-6271:Bash 环境变量函数解析缺陷,CGI/FCGI 等场景通过特制环境变量触发任意命令执行。
- PHP CGI CVE-2012-1823:PHP-CGI 参数注入,构造特定查询串可在 CGI/FastCGI 模式下执行任意代码。
- Java RMI CVE-2013-0422:RMI 注册表/激活服务默认配置缺陷,反序列化导致远程代码执行(常见于开放 1099 端口的服务)。
四 信息泄露与本地攻击面
- 核心转储信息泄露 CVE-2025-5054 / CVE-2025-4598:apport、systemd-coredump 的竞争条件缺陷,本地攻击者可能借助 SUID 程序的崩溃转储读取敏感文件(如 /etc/shadow 的密码哈希)。缓解:升级相关组件,限制或禁用 SUID 程序的核心转储生成(如 ulimit -c 0、/proc/sys/fs/suid_dumpable 调整)。
五 近期值得关注的动向
- CVE-2025-6018 / CVE-2025-6019:两个相互关联的本地提权漏洞,已在主流发行版上演示 root 权限获取,存在 PoC,建议尽快修补。
- nf_tables 新缺陷:社区持续披露 nf_tables 相关漏洞与利用技术,可能带来提权与容器逃逸风险,需关注发行版安全通告并优先升级内核。