LibreNMS w wersjach przed 24.10.0 zawiera podatność typu OS command injection, umożliwiającą uwierzytelnionemu zdalnemu atakującemu wykonanie dowolnego kodu na serwerze. Wysoki wynik CVSS (9.1) oraz dostępny moduł Metasploit czynią tę podatność szczególnie niebezpieczną.
▸ Pokaż oryginał (EN)
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutController.php's index(), SettingsController.php's update(), and PollDevice.php's initRrdDirectory().
Podatność wynika z nieprawidłowej walidacji danych wejściowych w trzech miejscach kodu aplikacji: metodzie index() kontrolera AboutController.php, metodzie update() kontrolera SettingsController.php oraz metodzie initRrdDirectory() klasy PollDevice.php. Atakujący z aktywnym kontem w LibreNMS może dostarczyć spreparowane dane, które są następnie przekazywane do poleceń systemowych bez odpowiedniego oczyszczenia (CWE-78), co prowadzi do wykonania dowolnych poleceń OS na serwerze hostującym aplikację. Dla podatności dostępny jest publiczny moduł exploit w ramach frameworka Metasploit.
Atakujący może wykonać dowolne polecenia systemu operacyjnego w kontekście procesu aplikacji, co może prowadzić do przejęcia kontroli nad serwerem, kradzieży danych, instalacji backdoora lub dalszego lateral movement w sieci.
Należy niezwłocznie zaktualizować LibreNMS do wersji 24.10.0 lub nowszej. Szczegóły patcha dostępne są w oficjalnym security advisory projektu na GitHub (GHSA-x645-6pf9-xwxw). Do czasu aktualizacji zaleca się ograniczenie dostępu do panelu LibreNMS wyłącznie do zaufanych sieci oraz minimalizację liczby kont użytkowników.
LibreNMS we wszystkich wersjach przed 24.10.0
Dla tej podatności istnieje publiczny moduł exploit w Metasploit Framework (modules/exploits/linux/http/librenms_authenticated_rce_cve_2024_51092.rb), co znacząco obniża próg wejścia dla potencjalnych atakujących. Podatność wymaga posiadania aktywnego konta w aplikacji (PR:L), jednak zakres ataku wykracza poza system bazowy (S:C).
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:LLibrenms
APPLibrenms< 24.10.0
Powiązane podatności
SQL Injection w LibreNMS — endpoint ajax_table.php (wyszukiwanie IPv6)
Insufficient Session Expiration in GitHub repository librenms/librenms prior to 22.10.0.
LibreNMS v22.3.0 was discovered to contain multiple command injection vulnerabilities via the service_ip, host...
Librenms 21.11.0 is affected by a path manipulation vulnerability in includes/html/pages/device/showconfig.inc...
An issue was discovered in LibreNMS through 1.47. The scripts that handle the graphing options (html/includes/...