Artikel top billede

Her er de farligste programmeringsfejl

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

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




Brancheguiden
Brancheguide logo
Opdateres dagligt:
Den største og
mest komplette
oversigt
over danske
it-virksomheder
Hvad kan de? Hvor store er de? Hvor bor de?
itm8 A/S
Outsourcing, hosting, decentral drift, servicedesk, konsulentydelser, salg og udleje af handelsvarer, udvikling af software.

Nøgletal og mere info om virksomheden
Skal din virksomhed med i Guiden? Klik her

Kommende events
Cyber Briefing: Backup, availability og disaster recovery

I en tid hvor truslerne mod it-driften kun vokser, er det afgørende at kende forskellen på backup, availability og disaster recovery. Deltag og få konkret viden og praksisnære eksempler på, hvordan I kan styrke jeres beredskab.

07. april 2025 | Læs mere


Cyberthreat Day, København: Trusler, angreb og forsvar i praksis

Stå rustet mod cybertrusler. Få et detaljeret overblik over de nyeste sårbarheder, angrebsmønstre og metoder, som cyberkriminelle anvender. Lyt til beretninger fra sikkerhedseksperter på den digitale frontlinje, og få indsigt i både succesfulde angreb og de, der blev afværget

08. april 2025 | Læs mere


Cyberthreat Day, Horsens: Trusler, angreb og forsvar i praksis

Stå rustet mod cybertrusler. Få et detaljeret overblik over de nyeste sårbarheder, angrebsmønstre og metoder, som cyberkriminelle anvender. Lyt til beretninger fra sikkerhedseksperter på den digitale frontlinje, og få indsigt i både succesfulde angreb og de, der blev afværget

10. april 2025 | Læs mere