Er zijn meerdere tien jaar oude beveiligingskwetsbaarheden onthuld in het needrestart-pakket dat standaard in Ubuntu Server is geïnstalleerd (sinds versie 21.04), waardoor een lokale aanvaller root-rechten kan verkrijgen zonder tussenkomst van de gebruiker.
De Qualys Threat Research Unit (TRU), die de fouten begin vorige maand identificeerde en rapporteerde, zei dat het triviaal is om er misbruik van te maken, waardoor gebruikers snel actie moeten ondernemen om de oplossingen toe te passen. Er wordt aangenomen dat de kwetsbaarheden bestaan sinds de introductie van tolkondersteuning in needrestart 0.8, uitgebracht op 27 april 2014.
“Deze need-restart-exploits maken Local Privilege Escalation (LPE) mogelijk, wat betekent dat een lokale aanvaller root-rechten kan verwerven”, zei Ubuntu in een advies, waarbij hij opmerkte dat ze zijn aangepakt in versie 3.8. “De kwetsbaarheden treffen Debian, Ubuntu en andere Linux-distributies.”
Needrestart is een hulpprogramma dat een systeem scant om te bepalen welke services opnieuw moeten worden opgestart na het toepassen van gedeelde bibliotheekupdates op een manier die een volledige herstart van het systeem voorkomt.
De vijf tekortkomingen worden hieronder opgesomd:
- CVE-2024-48990 (CVSS-score: 7,8) – Een kwetsbaarheid waarmee lokale aanvallers willekeurige code als root kunnen uitvoeren door Needrestart te misleiden om de Python-interpreter uit te voeren met een door de aanvaller bestuurde PYTHONPATH-omgevingsvariabele
- CVE-2024-48991 (CVSS-score: 7,8) – Een kwetsbaarheid waarmee lokale aanvallers willekeurige code als root kunnen uitvoeren door een race condition te winnen en te misleiden moeten opnieuw beginnen met het runnen van hun eigen, nep-Python-interpreter
- CVE-2024-48992 (CVSS-score: 7,8) – Een kwetsbaarheid waarmee lokale aanvallers willekeurige code als root kunnen uitvoeren door Needrestart te misleiden om de Ruby-interpreter uit te voeren met een door de aanvaller bestuurde RUBYLIB-omgevingsvariabele
- CVE-2024-11003 (CVSS-score: 7,8) en CVE-2024-10224 (CVSS-score: 5.3) – Twee kwetsbaarheden waardoor een lokale aanvaller willekeurige shell-opdrachten als root kan uitvoeren door misbruik te maken van een probleem in het libmodule-scandeps-perl-pakket (vóór versie 1.36)
Succesvol misbruik van de bovengenoemde tekortkomingen zou een lokale aanvaller in staat kunnen stellen speciaal vervaardigde omgevingsvariabelen in te stellen voor PYTHONPATH of RUBYLIB die zouden kunnen resulteren in de uitvoering van willekeurige code die naar de omgeving van de bedreigingsacteur verwijst wanneer needrestart wordt uitgevoerd.
“In CVE-2024-10224 kan (…) door een aanvaller bestuurde invoer ervoor zorgen dat de Module::ScanDeps Perl-module willekeurige shell-opdrachten uitvoert door een ‘vervelende pipe’ te openen (zoals door ‘commands|’ door te geven als bestandsnaam) of door willekeurige tekenreeksen door te geven aan eval(),’ merkte Ubuntu op.
“Op zichzelf is dit niet genoeg voor escalatie van lokale privileges. In CVE-2024-11003 geeft needrestart echter door de aanvaller bestuurde invoer (bestandsnamen) door aan Module::ScanDeps en activeert CVE-2024-10224 met rootprivileges. De oplossing voor CVE-2024-11003 verwijdert de afhankelijkheid van needrestart van Module::ScanDeps.”
Hoewel het ten zeerste wordt aanbevolen om de nieuwste patches te downloaden, zei Ubuntu dat gebruikers tolkscanners indien nodig kunnen uitschakelen, het configuratiebestand opnieuw kunnen opstarten als tijdelijke oplossing en ervoor kunnen zorgen dat de wijzigingen worden teruggedraaid nadat de updates zijn toegepast.
“Deze kwetsbaarheden in het needrestart-hulpprogramma stellen lokale gebruikers in staat hun privileges te escaleren door willekeurige code uit te voeren tijdens pakketinstallaties of upgrades, waarbij needrestart vaak als rootgebruiker wordt uitgevoerd”, zegt Saeed Abbasi, productmanager van TRU bij Qualys.
“Een aanvaller die deze kwetsbaarheden misbruikt, kan root-toegang verkrijgen, waardoor de systeemintegriteit en veiligheid in gevaar komen.”