Microsoft skyller 'Ncurses' Gremlins ud

Microsoft skyller 'Ncurses' Gremlins ud

Microsoft Flushes Out 'Ncurses' Gremlins PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Et meget brugt programmeringsbibliotek kaldet "ncurses" er inficeret af ondsindede gremlins - i form af flere hukommelseskorruptionssårbarheder, der giver angribere en måde at målrette mod programmer, der kører i macOS, Linux og FreeBSD.

Forskere fra Microsoft afslørede sårbarhederne i biblioteket, som grundlæggende leverer API'er til tekstbaserede brugergrænseflader og terminalapplikationer. I en teknisk rapport i denne uge beskrev forskere fra virksomhedens trusselsefterretningsteam fejlene som tillader datalæk, privilegieeskalering og vilkårlig kodeudførelse.

"Efter at have opdaget sårbarhederne i ncurses-biblioteket, arbejdede vi sammen med vedligeholderen, Thomas E. Dickey, og Apple for at sikre, at problemerne blev løst på tværs af platforme," sagde forskerne. "Udnyttelse af sårbarheder i ncurses-biblioteket kan have bemærkelsesværdige konsekvenser for brugerne, hvilket gør det muligt for angribere at udføre ondsindede handlinger som at øge rettighederne til at køre kode i et målrettet programs kontekst og få adgang til eller ændre værdifulde data og ressourcer."

Bemærkelsesværdige konsekvenser for brugere

Biblioteket ncurses blev først tilgængeligt i 1993. Programmører på tværs af forskellige platforme bruger det relativt bredt til udvikling af terminalbrugergrænseflader og grænseflader i teksttilstand. Biblioteket indeholder funktioner til at skabe vinduer, manipulere tekst, håndtere brugerinput, farver og andre anvendelsesmuligheder for terminalbrugergrænsefladeapplikationer.

De sårbarheder, som Microsoft opdagede, var alle problemer med hukommelseskorruption i ncurses version 6.4 20230408 ​​og tidligere. De nu-patchede fejl gav specifikt angribere en måde at manipulere - eller forgifte - en miljøvariabel kaldet TERMINFO, som ncurses bruger til at slå op på en terminals muligheder og en anden kaldet HOME, der beskriver stien til en brugers hjemmemappe.

An miljøvariabel er en variabel, hvis værdi ikke behøver at blive hardkodet ind i et program. For eksempel angiver miljøvariablen HOME hjemmebibliotekets placering på en specifik brugers system. Ved kørsel vil et program bruge HOME-miljøvariablen til at finde information eller værdi forbundet med etiketten. Miljøvariabler begrænser behovet for applikationsændringer, hver gang konfigurationsoplysningerne ændres, hvilket nogle gange ville være tilfældet, når en app bruges i forskellige miljøer og af forskellige brugere.

Velkendt teknik

Almindelig miljøvariabelforgiftning er en velkendt angrebsteknik, hvor angribere ændrer oplysninger om miljøvariabler på en måde, der påvirker applikationsadfærd negativt eller får den til at gå ned. Fælles mål omfatter privilegieeskalering, vilkårlig kodeudførelse og udløsning af lammelsesangrebsbetingelser. Som Microsoft-forskerne forklarede i deres blog, har der tidligere været flere tilfælde af sårbarheder, der tillod miljøvariable forgiftninger.

Et eksempel forskerne pegede på var CVE-2023-22809, en sårbarhed i sudo-kommandolinjeværktøjet, der giver brugere i Unix-lignende miljøer, inklusive macOS, mulighed for at køre programmer med forhøjede rettigheder. Sårbarheden stammede fra, hvordan sudos EDITOR-variabel håndterede brugerleverede miljøvariabler og dybest set gav angribere en måde at skrive vilkårlige filer til systemet.

Sådan fjerner du ncurses Curse

Microsoft opdagede i alt fem hukommelseskorruptionssårbarheder i ncurses, der tillod en sådan variabel forgiftning. Bibliotekets vedligeholder udstedte en patch til de sårbarheder, der tilsammen er identificeret som CVE-2023-29491. Udviklere skal sørge for, at deres biblioteker er opdaterede.

Microsoft-forskere arbejdede også med Apples sikkerhedsteam om at løse de macOS-specifikke problemer relateret til ncurses-sårbarhederne. Apple den 8. september udgivet en opdatering for macOS Monterey, der anerkendte Microsoft for at opdage og rapportere problemet til det – brugere bør opdatere deres OS-versioner for at sikre, at de er beskyttet mod angreb. Virksomheden beskrev problemet som at give cyberangribere en måde at potentielt afslutte kørende applikationer eller udføre vilkårlig kode på berørte systemer.

I mellemtiden Red Hat vurderede CVE-2023-29491 til at være en trussel af middel sværhedsgrad. "En sårbarhed blev fundet i ncurses og opstår, når den bruges af en setuid-applikation," sagde virksomheden. "Denne fejl giver lokale brugere mulighed for at udløse sikkerhedsrelevant hukommelseskorruption via misdannede data i en terminfo-databasefil, der findes i $HOME/.terminfo eller nås via miljøvariablen TERMINFO eller TERM."

Tidsstempel:

Mere fra Mørk læsning