Securityspecialisten van Microsoft hebben onlangs een aantal kwetsbaarheden in de populaire ‘ncurses’ library ontdekt. Via deze kwetsbaarheden kunnen aanvallers kwaadaardige code draaien in macOS-, Linux- en FreeBSD-applicaties. Een patch is beschikbaar.
De veelgebruikte programmeerlibrary ‘ncurses’ biedt API’s voor tekstgebaseerde user interfaces en terminal-applicaties. Met deze features kunnen ontwikkelaars onder meer windows maken, tekst aanpassen, gebruikersinput inzetten, colors gebruiken en andere use cases voor terminal UI-applicaties afhandelen.
‘Vergiftigen’ van omgevingsvariabelen
De nu door Microsoft ontdekte ‘gremlins’ zijn vooral geheugencorruptiekwetsbaarheden, die maken datalekken, het aanpassen van data, privilege-escalatie en het draaien van willekeurige code mogelijk.
Het gaat voornamelijk om zogenoemde ‘geheugencorruptie’-problemen in ncurses libraryversie 6.4 20230408 en eerder. De kwetsbaarheden geven hackers de mogelijkheid de TERMINFO-omgevingsvariabele te misbruiken. De library gebruikt deze variable om de mogelijkheden van een terminal op te zoeken, net als de mogelijkheden van de variabele HOME. Deze laatste variabele beschrijft het pad naar de home directory van een eindgebruiker.
Een andere mogelijkheid voor de hackers is het ‘vergiftigen’ van omgevingsvariabelen, dit is een bekende aanvalstechniek. Hierbij passen hackers de omgevingsvariabele-informatie aan om het applicatiegedrag negatief te beïnvloeden of het te doen crashen. Daarnaast wordt deze techniek gebruikt voor privilege-escalatie, het draaien van willekeurige code en het triggeren van DNS-aanvallen.
Patch uitgebracht
Microsoft heeft inmiddels een patch uitgebracht voor de ontdekte kwetsbaarheden die zijn samengevat in CVE-2023-29491. Ontwikkelaars wordt aangeraden zo snel mogelijk hun libraries te updaten. Voor macOS-gebruikers weren Microsoft en Apple nog samen aan een oplossing.