FixVibe
Covered by FixVibecritical

Kritieke OS-opdrachtinjectie in LibreNMS (CVE-2024-51092)

LibreNMS-versies tot 24.9.1 bevatten een kritieke kwetsbaarheid voor het injecteren van commando's in het besturingssysteem (CVE-2024-51092). Geauthenticeerde aanvallers kunnen willekeurige opdrachten uitvoeren op het hostsysteem, wat mogelijk kan leiden tot een totale inbreuk op de monitoringinfrastructuur.

CVE-2024-51092GHSA-x645-6pf9-xwxwCWE-78

Impact

LibreNMS versies 24.9.1 en eerder bevatten een kwetsbaarheid waardoor geverifieerde gebruikers OS-opdrachtinjectie [S2] kunnen uitvoeren. Succesvolle exploitatie maakt de uitvoering van willekeurige opdrachten mogelijk met de rechten van de webservergebruiker [S1]. Dit kan leiden tot volledige systeemcompromis, ongeautoriseerde toegang tot gevoelige bewakingsgegevens en mogelijke laterale verplaatsing binnen de netwerkinfrastructuur beheerd door LibreNMS [S2].

Oorzaak

Het beveiligingslek is geworteld in de onjuiste neutralisatie van door de gebruiker aangeleverde invoer voordat deze wordt opgenomen in de opdracht [S1] van het besturingssysteem. Deze fout is geclassificeerd als CWE-78 [S1]. In getroffen versies slagen specifieke geverifieerde eindpunten er niet in om parameters adequaat te valideren of op te schonen voordat ze worden doorgegeven aan de uitvoeringsfuncties [S2] op systeemniveau.

Sanering

Gebruikers moeten hun LibreNMS-installatie upgraden naar versie 24.10.0 of hoger om dit probleem [S2] op te lossen. Als algemene best practice op het gebied van beveiliging moet de toegang tot de LibreNMS-beheerinterface worden beperkt tot vertrouwde netwerksegmenten met behulp van firewalls of toegangscontrolelijsten (ACL's) [S1].

Hoe FixVibe erop test

FixVibe neemt dit nu op in GitHub repo-scans. De controle leest alleen geautoriseerde repository-afhankelijkheidsbestanden, inclusief composer.lock en composer.json. Het markeert librenms/librenms vergrendelde versies of beperkingen die overeenkomen met het getroffen bereik <=24.9.1, en rapporteert vervolgens het afhankelijkheidsbestand, het regelnummer, advies-ID's, het getroffen bereik en de vaste versie.

Dit is een statische, alleen-lezen repositorycontrole. Het voert geen klantcode uit en verzendt geen exploit-payloads.