Opråb til udviklere: Sikkerhed er jeres ansvar

17. oktober 2013 kl. 11:092
Det er i høj grad op til softwareudviklerne at sørge for ordentlig sikkerhed i it-systemerne. Sådan lyder budskabet fra sikkerhedsmanden Brian Chess, der også kommer med gode råd til udviklerne.
Artiklen er ældre end 30 dage
Manglende links i teksten kan sandsynligvis findes i bunden af artiklen.

Først udviklede han software, så brugte han ti år i sikkerhedsbranchen, og nu er han vendt tilbage til softwareudvikling. Men det er desværre ikke et kønt syn, set med sikkerhedsøjne. Sådan lød det fra Brian Chess, der nu arbejder i Netsuite, da han holdt keynote på Goto-konferencen i Aarhus i begyndelsen af oktober.

»Jeg har lært i softwarebranchen, at man bare løser problemerne med en patch. Det er helt anderledes med hardware. Men de fleste sikkerhedsproblemer er softwareproblemer,« sagde han til de 1.100 udviklere i salen.

Første store problem - som NSA-afsløringerne for alvor har sat fokus på - er hvordan sikkerheden på de enkelte computere generelt er for dårlig, mens protokollerne til at sende data rundt sikkert generelt fungerer godt. Det er som at transportere guldbarrer i en pansret vogn - for så derefter at opbevare dem i et telt, sagde han.

»Vi har nogle rimelige protokoller til at flytte data rundt med, mens vi på endpoints har software, som er virkelig dårlig,« sagde Brian Chess.

Artiklen fortsætter efter annoncen

Det kan for eksempel være sløsede implementeringer af de funktioner, der skal beskytte mod hackere.

»Jeg håber, I kan lide at gøre grin med matematikere - for det kan jeg. Vi har kigget på kode-implementeringer af hash-funktioner og fandt sårbarheder i næsten dem alle sammen. Så vi kunne sige ’haha, matematikere kan ikke kode’,« sagde Brian Chess.

Modsat er der hos mange it-kriminelle et superprofessionelt forhold til sikkerhed i software. Da sikkerhedsforskere fandt en fejl i Conficker-malwaren, gik der kun to uger, før de var blevet rettet af bagmændene, fortalte Brian Chess.

Forudse dine fiaskoer

Skal man kode mere sikkert, skal man være sikkerhedsmæssig pessimist.

Artiklen fortsætter efter annoncen

»Du skal være konservativ og tænke i worst case scenarios. Det kan være meget værre, end du kan forestille dig,« sagde han.

Derfor er en strategi om at smække noget software sammen og få det penetrationstestet heller ikke gangbar som eneste værn mod problemer.

»Det er en fælde. For det kræver, at dem som laver pen-testen, er lige så gode angribere som de rigtige angribere. Ellers vil du tabe,« sagde Brian Chess.

Man kan også fokusere forkert og gøre noget meget sikkert - mens man overser en åben ladeport et andet sted. For eksempel havde Citibank udviklet en iPhone-app med tilgang til masser af bankoplysninger, i den tro at sikkerheden omkring iPhone ville være beskyttelse nok. De glemte bare, at mange har automatisk backup til deres computer, som hurtigt kan blive inficeret af noget skidt.

Artiklen fortsætter efter annoncen

»Hvis du vil have succes, skal du vide, hvordan du sandsynligvis vil fejle,« sagde Brian Chess og sammenlignede med høns, der kun kender til det trygge liv i hønsegården - indtil de en dag pludseligt bliver slagtet.

Nemt bytte hvis du ikke får hjælp

Hans råd til at få bedre sikkerhed i softwaren var først og fremmest bedre uddannelse.

»Uddannelse, der handler om kode, og om sikker kode, hjælper - men helt generisk sikkerhedstræning er temmelig nytteløs for en udvikler,« sagde han.

Samtidigt skal man som udvikler være meget hurtig til at indse sine sikkerhedsmæssige begrænsninger.

»Du bliver ikke en ekspert i at hashe passwords ved at læse lidt om det. Det gør dig tværtimod til et nemt bytte. Få hjælp til det, ligesom du vil få til alle andre dybe emner, du skal arbejde med,« rådede han.

Man må heller aldrig overlade for mange valgmuligheder, der kan gå ud over sikkerheden, til brugerne, som typisk altid vil slå noget fra, hvis det irriterer dem. Et API til andre udviklere skal heller ikke overlade ansvaret til dem. Man skal selv sætte bundniveauet for sikkerhed, lød rådet.

Og så er generel kvalitetskontrol også en vej til højere sikkerhed.

»Sikkerhed er en del af kvalitet. Har du en god kvalitetskontrol, så har du også en bedre sikkerhed,« sagde Brian Chess.

Hvad man i hvert fald ikke måtte, var at tro, at andre nok skulle sørge for sikkerheden i systemet, man sidder og koder på.

»Jeg prøver at fortælle programmører, at det er deres ansvar, om et system er sikkert eller ej. Det kan de normalt ikke lide at høre,« sagde Brian Chess.

2 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
1
17. oktober 2013 kl. 13:25

Hvorfor er denne artikel ikke kommet for et halvt år siden, mens jeg havde kontraktbaseret udvikling. Det er nemlig en matematisk tilgang til udvikling.

2
18. oktober 2013 kl. 10:27

Vi har nogle rimelige protokoller til at flytte data rundt med, mens vi på endpoints har software, som er virkelig dårlig

Det er som at transportere guldbarrer i en pansret vogn - for så derefter at opbevare dem i et telt, sagde han

Jeg syntes også Windows er et virkeligt dårligt telt. Men hvorfor siger han ikke bare hvad han mener?.

Dette er ikke en politisk/religiøs udtalelse, det er derimod fakta. Hvis jeg var "hacker" ville jeg angribe Windows fordi det er nemmest at angribe det svageste led. Hvorfor gå efter en krypteret linie, når man bare kan angribe Sårbare-Windows?.