Nieuwe Linux-bug kan leiden tot lekken van gebruikerswachtwoorden en het kapen van het klembord

Er zijn details naar voren gekomen over een kwetsbaarheid die invloed heeft op de opdracht “wall” van het util-linux-pakket en die mogelijk door een slechte actor kan worden uitgebuit om het wachtwoord van een gebruiker te lekken of het klembord op bepaalde Linux-distributies te wijzigen.

De bug, bijgehouden als CVE-2024-28085, heeft de codenaam gekregen MuurEscape door veiligheidsonderzoeker Skyler Ferrante. Het is beschreven als een geval van onjuiste neutralisatie van ontsnappingssequenties.

“Het util-linux wall-commando filtert geen ontsnappingsreeksen uit opdrachtregelargumenten”, aldus Ferrante. “Hierdoor kunnen onbevoegde gebruikers willekeurige tekst op de terminals van andere gebruikers plaatsen, als mesg is ingesteld op “y” en wall is setgid.”

De kwetsbaarheid werd geïntroduceerd als onderdeel van een commit in augustus 2013.

Cyberbeveiliging

Het commando “wall” wordt gebruikt om een ​​bericht te schrijven naar de terminals van alle gebruikers die momenteel zijn ingelogd op een server, waardoor gebruikers met verhoogde rechten in feite belangrijke informatie kunnen uitzenden naar alle lokale gebruikers (bijvoorbeeld een systeemuitschakeling).

“wall toont een bericht, of de inhoud van een bestand, of anderszins de standaardinvoer ervan, op de terminals van alle momenteel ingelogde gebruikers”, luidt de manpagina voor de Linux-opdracht. “Alleen de superuser kan schrijven op de terminals van gebruikers die ervoor hebben gekozen berichten te weigeren of een programma gebruiken dat automatisch berichten weigert.”

CVE-2024-28085 maakt hoofdzakelijk gebruik van onjuist gefilterde escape-reeksen die worden aangeboden via opdrachtregelargumenten om gebruikers te misleiden zodat ze een valse SUDO-prompt op de terminals van andere gebruikers maken en hen te misleiden om hun wachtwoorden in te voeren.

Om dit te laten werken moet echter het mesg-hulpprogramma – dat de mogelijkheid regelt om berichten van andere gebruikers weer te geven – worden ingesteld op “y” (dwz ingeschakeld) en moet het wall-commando worden uitgevoerd met setgid-machtigingen.

CVE-2024-28085 heeft gevolgen voor Ubuntu 22.04 en Debian Bookworm omdat aan deze twee criteria wordt voldaan. Aan de andere kant is CentOS niet kwetsbaar omdat het wall-commando geen setgid heeft.

“Op Ubuntu 22.04 hebben we voldoende controle om standaard het wachtwoord van een gebruiker te lekken”, aldus Ferrante. “De enige indicatie van een aanval voor de gebruiker zal een onjuiste wachtwoordprompt zijn wanneer hij zijn wachtwoord correct typt, terwijl zijn wachtwoord in zijn opdrachtgeschiedenis staat.”

Op dezelfde manier kan een aanvaller op systemen waarmee berichten op een prikbord kunnen worden verzonden, mogelijk het klembord van een gebruiker wijzigen via ontsnappingssequenties op geselecteerde terminals zoals Windows Terminal. Het werkt niet op GNOME Terminal.

Gebruikers wordt geadviseerd om te updaten naar util-linux versie 2.40 om de fout te verhelpen.

Cyberbeveiliging

“[CVE-2024-28085] staat gebruikers zonder rechten toe om willekeurige tekst op de terminals van andere gebruikers te plaatsen, als mesg is ingesteld op y en *wall is setgid*”, aldus de release-opmerkingen. “Niet alle distributies worden beïnvloed (bijv. CentOS, RHEL, Fedora niet; Ubuntu en Debian wall is zowel setgid als mesg is standaard ingesteld op y).'

De onthulling komt op het moment dat beveiligingsonderzoeker Notselwyn een use-after-free kwetsbaarheid in het netfilter-subsysteem in de Linux-kernel heeft beschreven die kan worden uitgebuit om lokale escalatie van bevoegdheden te bewerkstelligen.

Het onderliggende probleem, dat de CVE-identifier CVE-2024-1086 (CVSS-score: 7,8) heeft gekregen, komt voort uit het mislukken van de invoeropschoning van netfilter-uitspraken, waardoor een lokale aanvaller een denial-of-service (DoS)-toestand kan veroorzaken of mogelijk willekeurige code kan uitvoeren. Het probleem is aangepakt in een commit die op 24 januari 2024 werd gepusht.

Thijs Van der Does