Blev tilbudt 10.000 dollars - valgte i stedet at fortælle om Ubuntu-sårbarhed

Illustration:
Siden Ubuntu 12.10 har hackere haft mulighed for at fjerneksekvere kode i Ubuntu Desktop som følge af fejl i Apport.

Ubuntus standard-program til crash-håndtering, Apport, har siden version 12.10 af styresystemet indeholdt en kodemæssig uhensigtsmæssighed, der har gjort det muligt for en angriber at fjerneksekvere kode på systemet, såfremt brugeren eksekverer en særligt udformet fil.

Det kan Zdnet på baggrund af flere skriftlige kilder berette.

Sikkerhedsforsker Donncha O'Cearbhaill har opdaget problemet, som han har skrevet et teknisk detaljeret blogindlæg om.

Her fortæller han, hvordan det siden Ubuntu Desktop 12.10 fra 2012 og frem til december i år, hvor hullet blev patched, har været muligt for en angriber via Apport at eksekvere kode på et sårbart system. I forbindelse med sin research er O'Cearbhaill blevet inspieret af arbejde fra en anden sikkerhedsforsker, Chris Evans. Nærmere bestemt Evans arbejde med at udnytte svagheder i gstreamer-medie-biblioteket, hvilket blandt andet har ramt Ubuntu.

Læs også: Hack: Nintendo-musik betyder 'game over' for Ubuntu-desktop

Donncha O'Cearbhaill har fundet frem til, at det via Apport-frameworket har været muligt at injicere Python-kode i Ubuntu Desktop, som så vil blive eksekveret på systemet med brugerrettigheder, hvilket kan være slemt nok.

Sikkerhedsforskeren har lavet en video, som viser, hvordan en bruger henter, hvad der ligner en zip-fil med kattebilleder, hvorefter lommeregner-appen i systemet bliver eksekveret, når brugeren åbner filen.

O'Cearbhaill har også lagt et detaljeret proof-of-concept på GitHub.

En anden sårbarhed

Sikkerhedsforskeren har også fundet en anden sårbarhed, der forværrer ovenstående problem. Det er et path traversal-angreb, som ifølge ZDnet betyder, at hvis brugeren har et numerisk UID mindre end 500 og indtaster sit kodeord ved standard-prompten 'System program problem detected', så bliver det muligt at eksekvere førnævnte Python-angreb med root-rettigheder.

O'Cearbhaill rapporterede problemet til Apport-maintaineren 9. december i år. 14. december blev der frigivet Apport-pakker, hvor problemet var løst.

I sin konklusion fortæller O'Cearbhaill, ganske tankevækkende, om en interessekonflikt, han mener huserer i sikkerhedsbranchen. Der er nemlig virksomheder, der vil betale en del penge for den slags sårbarheder, som han har fundet frem til. Et af de kendte eksempler er den nu hedengangne italienske virksomhed Hacking Team, der selv blev hacket. Dette hack afslørede at Rigspolitiet var blandt Hacking Teams kundekreds.

Der er penge i sårbarhederne, fordi der er en efterspørgsel fra blandt andet cyberkriminelle, efterretningstjenester og politimyndigheder, der af forskellige årsager kan være interesserede i at kunne kompromittere et styresystem. Eksempelvis med aflytning for øje.

»Jeg modtog et bud på mere end 10.000 dollars (ca. 71.500 kroner) fra en sårbarhedsforhandler for disse Apport-bugs. Disse finansielle motivationer øges kun i takt med, at software bliver mere sikkert og bugs bliver sværere at finde,« skriver O'Cearbhaill, der må formodes at have sagt nej til pengene.

Han fortsætter:

»For at forbedre sikkerheden for alle, så bliver vi nødt til at finde en holdbar måde at skabe incitament for forskere til at finde og afsløre problemer og til at få bugs fikset.«

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Følg forløbet
Kommentarer (8)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Mike Mikjær Blogger

Er du selv Linux- eller Ubuntubruger?

Det her giver ihvertfald ikke rigtig mening "hvis brugeren har et numerisk UID mindre end 500 og indtaster sit kodeord ved standard-prompten 'System program problem detected'!

Kunne du mon overtales til at uddybe og/eller henvise til originalteksten?

  • 1
  • 5
Cristian Ambæk

> En anden sårbarhed

hvis brugeren har et numerisk UID mindre end 500 og indtaster sit kodeord ved standard-prompten

Ubuntu starter med at lave normale brugere ved uid 1000, ved installation af OS'et og derefter tæller den op derfra så den næst-første uid bliver 1001.

Brugere under uid 1000 er system brugere som www-data og what not, og er brugere du ikke kan logge ind med.

Dette kan du også f.eks enforce med usermod.

Mange andre distros starter deres bruger uid fra 500, og jeg ser ingen ide i selv at vælge et uid til ens bruger under 500. Så jeg fejler at se "En anden sårbarhed" er en sårbarhed.

Ellers første halvdel af artiklen, spændende læsning.

  • 1
  • 1
Tobias Volfing

Det er da slet ikke utænkeligt at der findes 'normale brugerkonti' rundt omkring på Ubuntu systemer med et uid mindre end 500, selvom Ubuntu ikke af sig selv tildeler så lave uids.
Man kunne f.eks. forestille sig at oplysninger om brugere blev håndteret andetsteds og lå i en ekstern database som f.eks. et LDAP directory, og at man her benyttede uids mindre end 500.
Man kunne måske også forestille sig at man for at skjule en brugerkonto fra loginskærmen, i f.eks. Ubuntu 12.04 havde tildelt et uid mindre end 500. http://askubuntu.com/questions/92349/how-do-i-hide-a-particular-user-fro...

  • 3
  • 0
Cristian Ambæk

f.eks. et LDAP directory, og at man her benyttede uids mindre end 500

Du kan da sagtens have en DB et sted, med UID's mindre end 500 uden problemer med Ubuntu, så længe du ikke laver en 1 til 1 relation på det UID. Og igen så giver det ikke mening at lave UID >>mindre<< end 1000 på selve systemet som har brugeren, da du risikere at komme i karambolage med system-brugere selv med en ekstern DB. Da dette må anses som dårligt design så (min mening).

Man kunne måske også forestille sig at man for at skjule en brugerkonto fra loginskærmen

Det giver heller ikke rigtig mening at gemme brugere fra login skærmen, hvad vil du opnå med det? Alle brugere kan nemt kryptere deres hjemme bibliotek hvis det er fordi man ikke vil have at andre skal se hvad man har.

Man kan så tænke i forbindelse med journalister og udenlandske rejser, men man må formode at hvis man ender i en situation hvor man bliver bedt om at låse sin >>krypterede<< maskine op så "professionelle" kan gennemgå den, at så kan de også køre en kommando som

kommando fjernet

og hurtigt finde disse "gemte" brugere, samt /etc/passwd kan læses af alle brugere.

Jeg syntes her man skal spørge sig selv "hvis jeg ændre ved systemets standard værdier, til noget der ikke længere er standard. Kan eventuelle fejl så stadig anses som en sårbarhed i selve systemet?"

  • 0
  • 1
Tobias Volfing

Jeg syntes her man skal spørge sig selv "hvis jeg ændre ved systemets standard værdier, til noget der ikke længere er standard. Kan eventuelle fejl så stadig anses som en sårbarhed i selve systemet?"

Øh, ja.*

Lad mig give dig et hypotetisk eksempel. Lad os antage at der er en sårbarhed i Ubuntu der gør at hvis man har et baggrundsbillede med en opløsning der er lavere end 2560x1600, kan en angriber hvis han stirer længe nok på baggrunden opnå root adgang. Er det så ikke en sårbarhed fordi standard baggrundsbilledet har en opløsning på 2560x1600?

Vi kan også tage en til: Lad os antage at der er en sårbarhed i Ubuntu der gør at hvis du i All Settings> Mouse & Touchpad skifter Primary button fra 'Left' til 'Right', så kan en angriber ved at koble en kuglemus til opnå root adgang.

Er det heller ikke en sårbarhed fordi standardindstillingen er 'Left'?

*Det kommer naturligvis an på hvad det er for en værdi man ændrer.

  • 1
  • 0
Erik Haukjær Andersen

Det mest oplagte eksempel er hvis brugeren er oprettet på en nfs-server, og man ønsker at mounte uden id mappning. Så kan id forholdsvis nemt være under 500.
De fleste linux distributioner har dog haft almindelige brugere over 500 (og senest er de flyttet over 1000).

  • 0
  • 0
Log ind eller Opret konto for at kommentere