Files
Sec-Interview/Chapter15/15-36.md
T
2026-03-11 10:31:47 +08:00

906 B

请简述 udev 提权漏洞的基本原理

udev 是 Linux 内核的设备管理器,负责动态管理 /dev 目录下的设备节点

当内核检测到硬件事件(如插入 USB 设备)时,会通过 netlink 套接字 向用户空间的 udev 守护进程发送 uevent(设备事件)

udev 根据 /etc/udev/rules.d/ 中的规则执行相应操作(如创建设备文件、加载驱动、运行自定义程序)

内核发送的 uevent 本质是一条包含环境变量(如 ACTION=addDEVPATH=...)的字符串

udev 守护进程以 root 权限 运行,它接收并解析这些消息,然后根据规则执行操作

问题在于:netlink 套接字不仅允许内核向 udev 发送消息,也允许用户空间的普通进程向 udev 发送伪造的 uevent

发送伪造消息后,udev 以 root 权限处理该消息,执行攻击者控制的命令