Her er de farligste programmeringsfejl

Softwarefirmaer, sikkerhedsfirmaer og efterretningstjenester har identificeret de 25 farligste programmeringsfejl. Listen forventes at få indflydelse på projektkontrakter fremover.

Artikel top billede

Sikkerhedsorganisationen SANS har offentliggjort en liste over de 25 farligste og oftest forekommende programmeringsfejl.

Mere end 30 virksomheder og organisationer har været med til at udpege de alvorligste problemer, som findes i software i dag.

Ofte forekommende fejl

Kigger man listen igennem, er det en lidt forstemmende oplevelse i betragtning af, at vi skriver år 2009.

Bufferoverflow er stadig et ofte forekommende problem, ligesom der ofte ikke foretages inputvalidering i softwaren, der udvikles i dag.

Som folkene bag top 25-listen, skriver i forbindelse med offentliggørelsen af listen:

"De fleste af disse fejl er ikke noget, programmørerne forstår særligt godt; hvordan man undgår dem er ikke noget som uddannelserne gør meget ud af; og tilstedeværelsen af fejlene er ikke noget som softwarefirmaerne tester regelmæssigt for.

Fejlene har vidtrækkende betydning. Blot to af dem førte til mere end 1,5 millioner sikkerhedsbrister på websites i løbet af 2008 - og de sikkerhedsbrister medførte, at folk, der besøgte de berørte websites, fik omdannet deres computere til zombier."

Liste som kontraktgrundlag?

Håbet er, at listen vil få it-branchen til at udvikle mere stabile programmer med færre fejl.

Men listen er ikke kun beregnet til at skærpe udviklernes opmærksomhed på at undgå farlige programmeringsfejl.
Listen skal også bruges i forbindelse med kontraktindgåelse. Det håber SANS' forskningsdirektør Alan Paller bliver tilfældet.

"Top 25-listen er den slags, som bør indføjes i dine kontrakter," siger Alan Paller til IDG News Service.

Tidligere forsøg på at gøre softwareindustrien mere opmærksom på problemerne og få kunder til at stille krav til leverandørerne har dog ikke haft den store succes.

Alan Paller erkender eksempelvis, at SANS' Top 20-liste over sikkerhedsrisici fra 2007 ikke fik leverandørerne til at levere mindre fejlbehæftet software.

Den nye liste er dog mere gennemarbejdet, og håbet er, at efterretningstjenester som NSA og andre regeringsmyndigheder, som har været med i udarbejdelsen af top 25, vil medvirke til at få listen indarbejdet i kontrakter mellem leverandører og kunder.

Fokus på forebyggelse fremfor afhjælpning

"Offentliggørelse af en liste over programmeringsfejl, som gør cyberspionage og cyberkriminalitet muligt, repræsenterer et vigtigt skifte i sikkerhedsbevidstheden, et skifte væk fra en systemadministrator synsvinkel [detect/respond/patch] til fokus på softwareudvikling [design/implementer/verificer]," lyder det eksempelvis fra Konrad Vesey, fra NSA's Information Assurance Directorate.

"Når forbrugerne ser, at de fleste sårbarheder er forårsaget af bare 25 svagheder, så vil en ny standard for passende omhyggelighed i produktudvikling formentlig opstå. Softwaresikkerhed ændres fra at handle om, hvad leverandøren tester for, til hvad leverandøren indbygger i produktet."

De 25 farligste programmeringsfejl

De 25 programmeringsfejl er inddelt i tre kategorier:
Usikker interaktion mellem komponenter, risikofyldt ressourcehåndtering og porøst forsvar.

For hver enkelt programmeringsfejl gives en risikovurdering og det beskrives hvordan man kan undgå at introducere fejlen under arkitekturarbejde, design, implementering og build af systemer. Samtidig gives råd til hvordan man tester for softwarefejlene.

Usikker interaktion mellem komponenter

Mangelfuld inputvalidering

Mangelfuld output-encoding

SQL indsættelse

Cross-site scripting

Kommando indsættelse

Fortrolig information sendes ukrypteret

Cross-site request forfalskning

Race conditions

Fejlmeddelelser med læk af systeminformation

Risikofyldt ressourcehåndtering

Buffer overflow

Manglende kontrol med kritiske data

Mangelfuld kontrol af filnavne

Upålidelig søgesti

Code injection

Download uden integrity check

Mangelfuld frigivelse eller fjernelse af ressource

Mangelfuld initialisering

Mangelfuld beregning

Porøst forsvar

Mangelfuld adgangskontrol og authorisation

Anvendelse af svag kryptering

Hard-coded passwords

Kritiske ressourcer uden passende permission assignment

Tilfældige tal er ikke tilfældige nok

Eksekvering med unødvendige privilegier

Klient, der håndhæver serversikkerhed

Den samlede top 25-liste findes her

Læses lige nu

    Navnenyt fra it-Danmark

    Danske Spil har pr. 1. oktober 2025 ansat Jesper Krogh Heitmann som Brand Manager for Oddset. Han skal især beskæftige sig med at udvikle og drive brandets strategi og sikre en rød tråd på tværs af alle platforme og aktiviteter. Han kommer fra en stilling som Marketing & Communications Manager hos Intellishore. Nyt job

    Jesper Krogh Heitmann

    Danske Spil

    Enterprise Rent-A-Car har pr. 1. september 2025 ansat Christian Kamper Garst som Senior Key Account Manager. Han skal især beskæftige sig med at vinde markedsandele i hele Norden som led i en storstilet turnaround-strategi. Han kommer fra en stilling som Salgsdirektør hos Brøchner Hotels. Nyt job

    Christian Kamper Garst

    Enterprise Rent-A-Car

    Circle Of Bytes ApS har pr. 1. maj 2025 ansat Jeanette Kristiansen som Account Manager. Hun skal især beskæftige sig med at opbygge og styrke relationer til kunder og samarbejdspartnere, samt sikre det rette match mellem kunder og konsulenter. Nyt job

    Jeanette Kristiansen

    Circle Of Bytes ApS

    Netip A/S har pr. 15. september 2025 ansat Jimmi Overgaard som Key Account Manager ved netIP's kontor i Viborg. Han kommer fra en stilling som Sales Executive hos Globalconnect A/S. Nyt job

    Jimmi Overgaard

    Netip A/S