تاثیر
نسخههای LibreNMS 24.9.1 و نسخههای قبلی دارای آسیبپذیری هستند که به کاربران تأیید شده اجازه میدهد تا دستور تزریق سیستم عامل [S2] را انجام دهند. بهره برداری موفقیت آمیز، اجرای دستورات دلخواه را با امتیازات کاربر وب سرور [S1] امکان پذیر می کند. این می تواند منجر به به خطر افتادن کامل سیستم، دسترسی غیرمجاز به داده های نظارتی حساس و حرکت جانبی احتمالی در زیرساخت شبکه تحت مدیریت LibreNMS [S2] شود.
علت اصلی
این آسیبپذیری ریشه در خنثیسازی نامناسب ورودیهای ارائهشده توسط کاربر قبل از گنجاندن آن در یک فرمان سیستمعامل [S1] دارد. این نقص به عنوان CWE-78 [S1] طبقه بندی می شود. در نسخههای آسیبدیده، نقاط پایانی تأیید شده خاص نمیتوانند پارامترها را قبل از ارسال به توابع اجرای سطح سیستم [S2] بهاندازه کافی تأیید یا پاکسازی کنند.
اصلاح
کاربران باید نصب LibreNMS خود را به نسخه 24.10.0 یا جدیدتر ارتقا دهند تا این مشکل [S2] حل شود. به عنوان بهترین روش امنیتی عمومی، دسترسی به رابط اداری LibreNMS باید به بخش های شبکه قابل اعتماد با استفاده از فایروال ها یا لیست های کنترل دسترسی (ACL) [S1] محدود شود.
چگونه FixVibe آن را آزمایش می کند
FixVibe اکنون این مورد را در اسکن های مخزن GitHub شامل می شود. چک فقط فایلهای وابستگی مخزن مجاز را میخواند، از جمله composer.lock و composer.json. نسخههای قفلشده یا محدودیتهای <=24.9.1 را علامتگذاری میکند، سپس فایل وابستگی، شماره خط، شناسههای مشاوره، محدوده آسیبدیده و نسخه ثابت را گزارش میکند.
این یک چک مخزن استاتیک و فقط خواندنی است. کد مشتری را اجرا نمی کند و بارهای اکسپلویت را ارسال نمی کند.
