Alvorligt DNS-hul i det udbredte open source-bibliotek glibc

17. februar 2016 kl. 13:454
Google og Red Hat har opdaget en fejl i en DNS-funktion i glibc.
Artiklen er ældre end 30 dage
Manglende links i teksten kan sandsynligvis findes i bunden af artiklen.

Det udbredte softwarebibliotek glibc, der blandt andet anvendes i Linux, indeholder en buffer overflow-fejl, som gør det muligt for en angriber at eksekvere kode på en klient.

Det fortæller Google om i et blogindlæg.

Specifikt er der tale om en fejl i glibc, der har eksisteret siden version 2.9. Fejlen muliggør et bufferoverflow-angreb, når klienten kalder funktionen getaddrinfo(). Funktionen bliver ifølge BBC News brugt til at omsætte et domænenavn til en ip-adresse.

»Software der anvender denne funktion kan blive forsøgt udnyttet via angriberkontrollerede domænenavne, angriberkontrollerede DNS-servere eller gennem et man-in-the-middle-angreb,« står der i Googles blogindlæg.

Artiklen fortsætter efter annoncen

Google har i samarbejde med Red Hat undersøgt problemets omfang og udarbejdet en patch. Fejlen i glibc blev registreret helt tilbage i juli 2015, men den blev i første omgang flaget som havende lav prioritet. Først senere har Google og Red Hat kortlagt omfanget af sårbarheden.

Google linker til et Proof of Concept på GitHub, så det er muligt selv at undersøge, hvorvidt ens klientmiljø er sårbart. PoC'et er ikke weaponized, som Google bemærker i blogindlægget. Det vil sige, det ikke er sat sammen på en måde, så kan bruges til faktisk at angribe en klient med.

Det skulle - heldigvis - være vanskeligt at udnytte sårbarheden i glibc, fremgår det af blogindlægget.

Eksempelvis kræver det, at en angriber omgår eventuelle sikkerhedsmekanismer i klientmiljøet som ASLR (Address space layout randomization) før et angreb kan gennemføres.

Katastrofalt scenarie eller lige ved og næsten

BBC News har talt med professor Alan Woodward fra University of Surrey om problemet. Han bliver introduceret som sikkerhedsekspert.

Artiklen fortsætter efter annoncen

»Mange folk render rundt lige nu og forsøger at regne ud, hvorvidt dette virkeligt er et katastrofalt scenarie, eller om vi har undgået en kugle.«

Windows-systemer og systemer med OS X er ifølge BBC ikke berørte. Og Android-enheder anvender ifølge det britiske medie et andet bibliotek end glibc, og derfor er disse enheder heller ikke sårbare.

Udover Linux-systemer, der måske uden videre kan opdateres med en ikke-sårbar udgave af glibc, så er der alle de internetforbundne enheder, som routere, der også kan være sårbare, og som måske ikke uden videre modtager en opdatering.

»Tænk routere og i stadig større grad alt, som bliver betragtet som værende en del af 'Internet of Things',« siger Woodward til BBC.

Ifølge BBC er glibc-sårbarheden blevet sammenlignet med Shellshock fra 2014. Det var en alvorlig sårbarhed i Bash, som også gjorde det muligt for en angriber at eksekvere kode på systemer med Linux.

Det fremgik tidligere af blandt andet artiklens overskrift, at sårbarheden er i libc. Det rigtige bibliotek er glibc.

4 kommentarer.  Hop til debatten
Denne artikel er gratis...

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.

Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.

Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.

Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.

Debatten
Log ind eller opret en bruger for at deltage i debatten.
settingsDebatindstillinger
4
19. februar 2016 kl. 13:36

ASLR gør det sværere at udnytte, men det er ikke en barriere. Mange Linux distributioner har desuden kun Linuxs standard ASLR som er "svag" (lav entropi). Du skal bruge grsecurity, PAX eller lignende for at få højere entropi. Lav entropi øger chancen for at et angreb som ignorerer ASLR bliver succesfuldt. Hvis fx der kun er 256 mulige adresser hvor library kode kan placeres, så vil 1 ud af 256 angreb virke. Med tilstrækkeligt mange maskiner kan en angriber ignorere ASLR og bare kompromittere de servers han kan få fat i.

ASLR er i sig selv ikke en beskyttelse imod udnyttelse af sådan en sårbarhed. ASLR er gør Return Oriented Programming (ROP) mere besværligt/ustabilt. ROP er en måde at omgå DEP/NX/W^X. Så ASLR er et forsøg på at gøre det sværere at bruge ROP til at omgå DEP/NX. Det er et fart-bump, ikke en barriere.

ASLR er mere at sammenligne med en røggenerator end en ståldør.

Sårbarheden er meget alvorlig, specielt fordi den kan reflekteres igennem cache-DNS servers. Dvs. at potentialet for at ramme rigtig mange servers er stort.

3
18. februar 2016 kl. 10:12

Artiklen er opdateret, så der står Glibc alle steder. Jakob - Version2

2
17. februar 2016 kl. 22:55

Aslr aspektet gør det godt nok svært at udnytte sådan en sårbarhed.

1
17. februar 2016 kl. 16:23

Det er specifikt GLIBC projektets kode der har problemet.

Problemet er ikke rapporteret imod nogen andre libc implementeringer (FreeBSD, AIX, Solaris osv.)

("libc" er standard biblioteket til C-compileren)