Indbyg sikkerhed helt fra begyndelsen

Softwareudviklere kan reducere mængden af sårbarheder, hvis de anvender en udviklingsmetode, hvor sikkerhed indgår, skriver Shehzad Ahmad i denne klumme fra Computerworld Online.

Chefkonsulent Shehzad Ahmad, UNI•C, der leder det danske Computer Emergency Response Team (DK•CERT), skriver hver måned på Computerworld Online om aktuelle it-sikkerhedsspørgsmål. Kommentarerne bringes her, efterhånden som de udkommer.

Hvordan fjerner man mest effektivt sikkerhedshuller i software? Efter min mening kan det betale sig at sikre, at de slet ikke er der.

Når et program først er ude hos brugerne, koster det tid og ressourcer at rette fejl i det. Og hvis der er tale om fejl med betydning for sikkerheden, er det et kapløb med tiden: Man skal nå at lukke sikkerhedshullerne, inden hackere begynder at udnytte dem.

Derfor er det godt at se, at flere softwarehuse gør en indsats for at tænke sikkerheden ind i programudviklingen.

Fx har Adobe netop offentliggjort, at firmaet er ved at køre sin gamle programkode gennem udviklingsprocessen Secure Product Lifecycle (SPLC).

Gratis skabelon

I denne måned kom Microsoft med et nyt tilbud: Man kan gratis hente en skabelon til Visual Studio Team System. Skabelonen bygger på Microsofts model for udvikling af sikker software, Security Development Lifecycle (SDL).

Skønt SDL er udviklet af Microsoft, er den ikke begrænset til Windows-verdenen.

Modellen opdeler udviklingsarbejdet i en række processer. Allerede i kravspecifikationsfasen skal man analysere risici inden for sikkerhed og fortrolighed.

I designfasen bruger man trusselsmodellering til at afdække potentielle trusler.

Under kodeskrivningen anvender man kun sikre funktioner, der ikke indeholder kendte sårbarheder eller risici. Man gennemfører også statisk analyse af koden.

Den følges senere op af dynamisk analyse og test.

Færre sårbarheder
Hvilken gevinst giver sådan en metode? Kigger man på Microsofts produkter, taler tallene for sig selv:

Windows XP blev udviklet, inden SDL blev indført. I det første år efter udsendelsen blev der fundet 119 sårbarheder.

Windows Vista er udviklet med SDL. Her fandt man 66 sårbarheder i det første år. Vi er altså tæt på en halvering.

I SQL Server 2000 fandt man 34 sårbarheder i de første tre år efter offentliggørelsen.

I SQL Server 2005, som er udviklet med SDL, er det tilsvarende tal kun tre sårbarheder – eller en tiendedel af mængden før SDL.

SDL er omfattende, og det er ikke sikkert, at alle elementer i den passer til din organisation. Men enhver organisation, der udvikler software, kan have gavn af at sætte sig ind i den og udvælge de elementer, der giver mening.

 

Oprindelig bragt på Computerworld Online den 29. maj 2009

 

LINKS

Microsofts Security Development Lifecycle (SDL)
Blog fra Adobe om brugen af Secure Product Lifecycle
Denne klumme på Computerworld

Keywords: