Peter Kruse: Open source gør patch-management i IoT til et mareridt

Illustration:
Open source og pilfingrede producenter af blandt andet routere betyder, at de embeddede systemer er et mareridt at vedligeholde, mener Peter Kruse fra CSIS.

Har du tænkt på, om OpenSSL i din badevægt er opdateret til en version, der ikke længere er sårbar i forhold til Heartbleed fra 2014? Spørgsmålet giver naturligvis mest mening, hvis din badevægt er på nettet og anvender en SSL-forbindelse via open source-biblioteket.

Hvorom alting er, så har firmaet CSIS gransket en række Internet of Things-agtige produkter, hvilket i denne sammenhæng dækker alt fra babyalarm til badevægt.

Peter Kruse, CSIS, har erfaret, at alle IoT-enheder indeholder sårbarheder. Illustration: Peter Kruse - LinkedIn

Og det står generelt skidt til på sikkerhedsfronten i de 15 unavngivne produkter, sikkerhedsfolkene ved CSIS har kigget på. Det skyldes, at apparaterne ikke er opdaterede, så sikkerhedshuller står åbne.

Og en del af forklaringen på, hvorfor producenterne ikke bare får skippet nogle patches af sted, mener Peter Kruse fra CSIS skyldes det faktum, at den slags embeddede systemer ofte kører på en open source-platform.

Det fortalte han om under sin præsentation på den netop overståede Copenhagen Cybercrime Conference 2016.

Til Version2 fortæller Kruse, at 90 procent af de enheder, CSIS har kigget på, kører på open source-styresystemet Linux.

»Problemet er, at det er en myriade af forskellige drivere, der skal til. Og det er forskellige afskygninger af open source-software, der bliver brugt. Og det gør patch-management til et mareridt.«

Open source-koden er populært hos flere producenter. Dels koster det i udgangspunktet ikke noget i licens, og så gør den åbne kildekode også producenterne i stand til selv at ændre softwaren og funktionaliteten på enheden, forklarer Peter Kruse.

Men når der er pillet i koden, betyder det også, at de officielle opdateringer til diverse open source-programmer ikke uden videre kan rulles ud på enheder, hvor koden er tilpasset af producenten. Opdateringen skal måske også tilpasses.

»Det er et helt open source-framework, man bruger. Og når man putter funktionalitet ind i det, så bliver det alt andet lige bare mere komplekst at opdatere.«

Kruse: Det handler ikke om religion

Peter Kruse understreger, at han ikke tager stilling til, hvorvidt closed source er mere eller mindre sikkert end open source.

»Det her er ikke et spørgsmål om religion. Vi er nødt til at se realiteterne i øjnene. De enheder, vi har testet, har alle indeholdt forskellige sårbarheder. Enten fordi producenterne ikke har været bekendt med, hvordan man laver designet rigtigt, eller fordi de simpelthen ikke bliver opdateret korrekt. Og det bliver besværliggjort af, at der findes masser af forskellige afskygninger, fordi det er open source, som er nemt at ændre i.«

Open source eller ej, så er det i sidste ende op til producenterne at sikre sig, at den kode, der kører på forbrugernes enheder, er forsvarligt skruet sammen, påpeger Kruse.

»De mange enheder, vi har testet, der har producenterne været mere innovative, end de har været bevidste omkring it-sikkerhed. De har i virkeligheden bare lavet en masse funktionalitet i det open source, de har brugt, og puttet en masse ting på, uden de efterfølgende har sikret sig, at den implementering, de har lavet, har været forsvarlig.«

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Følg forløbet
Kommentarer (14)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Morten Olsson

Meget enig i, at sårbarheder og patch management bør være et vigtigt element i alle IoT projekter.

Men man skal også huske den trådløse sikkerhed. Det nytter ikke meget at have styr på opdateringer og patches, hvis man så sender data over usikre trådløse netværk.

Det har Level 8 skrevet mere om her: https://blog.level8.dk/iot-internet-of-things....eller-trouble

  • 1
  • 0
Jakob Sørensen

Jeg har svært ved at se hvorfor Open Source bliver fremhævet som et specielt problem. Hvis det havde været Closed Source, så skulle producenterne i (mindst) lige så høj grad ind og pille ved koden.
Opdateringer er en udfordring, og har alle dage været det, men synes ikke det relaterer sig til om koden er åben eller lukket...

  • 38
  • 1
Morten Brørup

Peter Kruse har en vigtig pointe i artiklen her: Produkterne er stykket sammen af en samling frameworks, hvilket gør produkterne svære at opdatere, fordi det ikke altid er let at få de benyttede frameworks til at spille sammen med de nyeste versioner.

Problemet er derfor mere specifikt: dårlig lim mellem gode softwarekomponenter, uanset om komponenterne er open eller closed source.

I vores produkter indgår både open source og kommercielle softwarekomponenter, og arbejdsbyrden med integrationsarbejdet (limen, der klistrer dem sammen) afhænger primært af komponenternes modenhed og udviklerdokumentation - overhovedet ikke af komponenternes licensvilkår.

For vores vedkommende er det en del af vores strategi at vedligeholde produkterne i årevis, så vi bruger mange kræfter på korrekt integration af komponenterne, så vi ikke skal starte helt forfra, hver gang vi fx skal opdatere en komponent til en nyere version. Det er simpelhen mest økonomisk for os.

Hvis man derimod laver hit-and-run-produkter, er vedligehold kommercielt set irrelevant.

Mvh
Morten Brørup
CTO, SmartShare Systems

  • 9
  • 1
Bent Jensen

"Peter Kruse, CSIS, har erfaret, at alle IoT-enheder indeholder sårbarheder"
vs
"Version2 fortæller Kruse, at 90 procent af de enheder, CSIS har kigget på, kører på open source-styresystemet Linux."
vs
"Og det står generelt skidt til på sikkerhedsfronten i de 15, unavngivne produkter, sikkerhedsfolkene ved CSIS har kigget på. "

Så når alle de 15 enheder som de har set på har sikkerheds problemmer, så har alle det ?
Hvad køre den sidste 1.5 enhede, det OS må jo også fejle på alle leder og kanter ?

Routere fra de fleste producenter, køre jo også typisk på en eller anden Linux kerne. De må også kaldes IoT enheder, og er typisk dem som bliver angrebet mest og først, da de sider som firewall.
Synes nu at det er sjældent vi høre om fejl eller mangler her, med undtagelse når det er de 3 stjenet som har forsøgt at ødelægge sikkerheden i de produkter.
Men også her står man sig allerbedst med Opensource kode, i forhold til den lukket som ligger på feks. Cisco, som har bevisligt indbygget bagdøre.

Men det er da rigtigt at producenter burde have et produktansvar også dækket software. Men vil mene at udviklingen og software i bilerne er et langt bedre eksempel at bringe frem end badevægte, køleskabe, stavblenter eller ventilatore.

De er langt dyre, de er meget længere på markedet inden udskiftning, og her kan man snakke om sikkerhedsproblemmer hvis bremser eller ligende bliver hacket.

  • 9
  • 0
Christian Nobel

Nemlig at der er opstået en Internet of Trash hype, hvor der bevidstløst er produceret alverdens "løsninger" ud fra hint eller dette ønske om funktionalitet uden man på nogen måde har tænkt sikkerhed ind i løsningerne.

Først bagefter har man så tænkt:
"Hov, måske vi skulle gøre det bare lidt besværligt at kompromittere vores dimser, vi må hellere hælde noget magisk sikkerhed ud over."

Resultatet bliver derefter, og det har meget lidt at gøre med om det er OS eller CS der er blevet brugt.

  • 15
  • 0
Peter Makholm

Produkterne er stykket sammen af en samling frameworks, hvilket gør produkterne svære at opdatere, fordi det ikke altid er let at få de benyttede frameworks til at spille sammen med de nyeste versioner.

Jeg tror det er en erfaring som alle udviklere der forsøger at vedligeholde komplekse systemer har gjort sig. Hvis man skal vedligeholde et komplekst system over en lang periode er der basalt set to mulige strategier:

  • Man fryser hele kodebasen og laver kun minimale fejlrettelser

  • Man sørger løbende for at holde koden opdateret og tilføjer eventuelt nye features

Begge strategier har fordele og ulemper, men kort sagt er den første billigere i drift til gengæld er det min erfaring at man hurtigere rammer muren hvor det er uansvarligt at holde systemet i fortsat drift (og med en større risiko for at man ikke opdager det).

Så jeg tror at den egentlige pointe er at IoT er komplekse systemer. Desvære har folk en tendens til at falde i fælden med at det jo "bare" er en badevægt. Om man baserer sit system på open eller closed source er som sådan ikke relevant.

Hvis man derimod laver hit-and-run-produkter, er vedligehold kommercielt set irrelevant.

Og her kommer vi efter min mening til et spørgsmål hvor det kan være relevant at inddrage open source. Adgang til open source sænker barren for at lave produkter og dermed især hit and run-produkter af tvivlsom kvalitet.

  • 4
  • 0
Christoffer Kjeldgaard

Jeg sidder med det problem at overskriften: "Peter Kruse: Open source gør patch-management i IoT til et mareridt" er en forfærdelig gang vrøvl, og vrøvleriet fortsætter gennem hele artiklen. Kruse har stateret det faktum at embeddede systemer næsten udelukkende er Open Source. Der er dermed, i følge artiklens øvrige indhold, intet der peger på at Open Source licenseret software er specielt problematisk. Undersøgelsen virker til at være lavet repræsentativt, det vil sige der er undersøgt i forhold til hvad der bruges i virkeligheden, og derfor er der en ret skæv fordeling af undersøgte produkter. En forsker ville aldrig lave en repræsentativ undersøgelse hvis der skulle vurderes om der er forskel på OS og CS software i netop IoT produkter; man ville have undersøgt så sammenlignelige produkter som muligt, hvor der er så få forskelligheder udover softwaren.

Det jeg sidder tilbage med er spørgsmålet om det er journalistens eller Kruse's arbejde jeg har mistet tilliden til, fordi filmen er knækket et af de to steder.

  • 23
  • 1
Bent Jensen

@Christoffer Kjeldgaard
Tak for en bedre forklaring, det var sådan noget ligende jeg også forsøgte at få ud.
Et eller anden halter helt.

At der overhovedet ikke er styr på sikkerhed i mange IoT, og slet ikke de biligste, har vi haft mange artikler om, og det er indlysende. Antivirus firmaer vil gerne sælge os licenser til hver enhed.
Hardware producenter vil sælge os andre diser til at beskytte os.
Sikkerheds annelytiker vil gerne i medierne.
Så de er alle interesse i at tale problemet op, og for at trænge igennenm i mængten, så skærper de gerne deres budskab.

Så det er nok det vi ser her, uden dette angreb på opensource, så var der ikke skriven en artikkel. Men om det er V2 eller Peter Kruse som har stremmet den ved jeg ikke.

Men lige at give alt opensource skylden, den køber jeg ikke. Så burde dette udsavn være rigtigt.
"
MS OS til dekstop er det mest sikker system til surfe på nettet, da det er licenssoftware med lukket kildekode.
"

  • 7
  • 0
Simon Shine

Problemet med IoT-sikkerhed er ikke kommerciel brug af open source, eller at open source-kode har lavere kvalitet, men forretningsmodellen hvor et firma ikke ønsker at være ansvarlig for sikkerhedsopdateringer til nogens badevægt de næste femten år.

Noget af problemet kan måske løses med forbrugerbevidsthed, ved at indføre et ratingsystem, hvor produkter får point efter hvor sikre de er vurderet. Men står valget mellem en billig kinesisk kopi af et kendt mærke, og noget som nogen har vurderet sikkert, vinder markedet nok.

Det er nogle interessante problemstillinger der opstår når et kommercielt firma vælger at forke et open source-projekt fordi det er billigere. Når den gennemsnitlige firmwareudvikler ikke ved hvordan man vedligeholder en divergeret fork af et open source-projekt, kan vi godt kalde det et "patch-helvede". Men så er det også fordi de ikke ved, hvad de laver, eller fordi de er økonomisk incentiveret til ikke at gøre det ordentligt.

  • 2
  • 0
Martin Bøgelund

Jeg har svært ved at se hvorfor Open Source bliver fremhævet som et specielt problem.

Open source er tværtom løsningen - ikke problemet. Problemet opstår når man introducerer closed source i den slags løsninger.

For hvis badevægten kommer med en Linux indlejret, har producenten/leverandøren pligt til at levere kildekoden med, pga GPL. Og dermed kan enhver patche dimsen efter behov.

Men hvis leverandøren introducerer noget closed source som kører på Linux-platformen for at få dimsen til at fungere, har de naturligvis ikke pligt til at levere kildekoden med til det - og så kan man ikke lave en ny firmware uden videre.

  • 2
  • 0
Ole Tange Blogger

Jeg skrev om IoT for et par måneder siden. https://www.version2.dk/blog/hvordan-undgaar-vi-iot-internet-trash-697635

Jeg kan sagtens følge Peter Kruses problematik om patch-management. At det skulle blive bedre ved at benytte ufri software kan jeg dog ikke se - her må Peter Kruse lige byde ind med en uddybning af, hvorfor problemerne han skitserer ikke skulle være mindst lige så slemme for ufri software. Derimod er der et incitament til at få ens patches implementeret upstream (hos maintaineren af softwaren), så man ikke i fremtiden skal bøvle med at få ens patch til at virke på fremtidige versioner.

For at undgå hit-and-run produkter bør vi som forbrugere kræve at få softwaren under en fri licens, så vi selv kan lave et community, der kan vedligeholde koden, når producenten ikke gider længere.

  • 6
  • 0
Povl H. Pedersen

Problemer med Open Source fremfor closed source er, at closed source har security by obscurity.
Og med Open Source er der en risiko for, at man ikke implementerer et patch set mod originalkoden, men bare volder den. Så når rettelsen kommer, så er derikke nogen der trækker seneste version ned, og rette patches til.
Så problemet går alene på tilrettet open source hvor man ikke har sendt ændringerne tilbage til projektet. Det er sådan jeg læser det.

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