Er dårlige udviklerpraksisser den næste sikkerhedskatastrofe i teknologibranchen?

Discover how to deliver better software and systems in rapidly scaling environments. Join our Community

Dårlige udviklerpraksisser er ved at udvikle sig til en kritisk sikkerhedsudfordring, som ofte øger antallet af sårbarheder. Denne artikel undersøger de mest almindelige faldgruber og praktiske løsninger, der kan hjælpe organisationer med at gøre udviklerne til den første forsvarslinje mod cybertrusler.

Key Takeaways

Den menneskelige faktor i sikkerhed: Mennesker er det svageste led i it-sikkerheden. Menneskelige fejl, som ofte overses, kan alvorligt svække selv de bedste teknologiske forsvarsmekanismer. En robust sikkerhedsramme for udviklere er afgørende.

Hurtig udvikling: Et risikabelt kapløb: Presset for hurtig implementering og kontinuerlig integration får udviklere til at prioritere hastighed over sikkerhed, hvilket fører til selvtilfredshed og øget sårbarhed over for potentielle trusler.

Problemer med rettigheder: Risici ved administratoradgang: Unødvendige administratorrettigheder for udviklere skaber sikkerhedsudfordringer ved at muliggøre uautoriserede ændringer, vanskeliggøre overholdelsen af regler og udsætte miljøer for potentielle brud på sikkerheden.

Sårbarheder i kode: En hackers legeplads: Almindelige kodesårbarheder som SQL-injektioner og angreb med scripts på tværs af websteder udgør betydelige risici. Udviklere skal følge sikker kodningspraksis for at mindske disse trusler og beskytte følsomme data.

Stol på, men kontrollér: Bevidsthed om åben kildekode: En øget afhængighed af komponenter med åben kildekode og AI-genereret kode kan introducere sikkerhedsrisici, hvis udviklere ikke grundigt undersøger disse værktøjer. Det kræver løbende årvågenhed og uddannelse i sikker praksis.

Det er blevet sagt, at det svageste led i it-sikkerheden er mennesker. Den menneskelige faktor er ofte overset i sikkerhedsprocessen, fordi mennesker er mere tillidsfulde end en computer og mindre regelrette i pressede situationer.

Traditionelt er menneskelige fejl blevet behandlet med en blasert holdning. Vi ved, at de skaber udfordringer, men vi håndterer dem aldrig fuldt ud og fokuserer ofte på områder som værktøjer i stedet for at udvikle et robust sikkerhedsrammeværk for mennesker. Men efterhånden som softwareudvikling udvikler sig, gør de trusler, der retter sig mod den, det også, og fejl her kan underminere selv de mest avancerede sikkerhedsforanstaltninger.

Dårlig praksis blandt udviklere er ved at blive en betydelig bekymring for en organisations sikkerhed, og teknologiske fremskridt kan ikke afbøde dette. Krypteringsalgoritmer, automatiseret håndtering af programrettelser og sårbarhedsscanning er alle nyttige komponenter i forsvaret af jeres teknologistak, men vi er havnet i en tid med selvtilfredshed i forhold til, hvordan vi udruster vores udviklere, og den efterfølgende dårlige praksis bringer overholdelse af regler i fare.

Hvad fører til dårlig praksis blandt udviklere?

Udviklere har historisk set arbejdet i et tidspresset fag og har oplevet at få mere og mere på deres tallerkener. Udviklere har et arsenal af værktøjer til rådighed, og med dette følger mere øjeblikkelige resultater. Hyppigere implementeringer og softwareopdateringer har ændret kunders og brugeres forventninger, og dette forventningspres ligger fast på udviklernes skuldre – med et behov for at innovere nyt og hurtigt. Set fra sikkerhedens perspektiv er dette en opskrift på katastrofe. 

Forespørgsler om hurtig implementering og et stigende fokus på kontinuerlig integration og kontinuerlig levering (CI/CD) får udviklere til at stole for meget på automatiseringsmekanismerne i deres CI/CD-leveringspipelines og udsætte sig selv for sikkerhedsrisici og brud. Den agile metode, som er så populær blandt udviklere, tilskynder udviklere til at prioritere hastighed og effektivitet, hvilket igen fører til, at sikkerhedsforanstaltninger naturligt tilsidesættes. I teorien bør automatiseringsmekanismerne i CI/CD levere sikkerhedstjek, men tidspressede udviklere har ikke tid til regelmæssigt at revidere og vedligeholde dem.

En anden faktor, der bidrager til dårlig praksis blandt udviklere, er kompleksiteten i nutidens softwaremiljøer. Med tiden får udviklere ofte unødvendige administratorrettigheder og skal administrere tredjepartsarkitekturer og indviklede afhængigheder. Nøglen til succes for organisationer er overholdelse af regler, men mange udviklere ender med udvidede rettigheder til implementeringer. 

Denne praksis afdækker et væld af udfordringer, da den giver enhver med administratorrettigheder mulighed for at foretage uautoriserede ændringer, hvilket hæmmer revisions- og complianceindsatsen og skaber ekstra arbejde for udviklere, der skal finde frem til disse ændringer. Endnu mere bekymrende er det, at denne praksis udsætter udviklingsmiljøer for sikkerhedsbrud, hvis en ondsindet aktør får adgang til en konto med udvidede administratorrettigheder. 

Softwareudviklingsområdet er allerede komplekst, og i takt med at teknologien er udviklet, har dette miljø og forretningsstrategien også udviklet sig. Efterhånden som Global 2000-virksomheder samler deres forretningsdrift omkring omfattende, integrerede platforme som Pega, ServiceNow, SalesForce og andre, repræsenterer den type applikationer, der skal bygges og understøttes, en ændring fra traditionelle kodebaserede apps. 

Derudover skal rettigheder, leveringspipelines og udviklingspraksisser som agil udvikling og kontinuerlig levering, der er en del af DevOps, tilpasses. Midt i denne platformstendens kan selv de mest erfarne udviklere og administratorer utilsigtet introducere sikkerhedsrisici.

Get Free Access
Get regular tech leadership wisdom for delivering better software and systems.
Get Free Access

Have an account? Log In

Hvordan en enkelt kodelinje kan lægge jeres drift ned

Sikkerhed er en vedvarende hovedpine for organisationer, og teknologien har gjort det muligt for trusler at opstå hvor som helst. Et vellykket angreb kan forårsage et utal af problemer, både økonomiske og juridiske, og hurtigt standse innovation.

Et af de mest betydelige områder for sårbarheder er i kodningsfasen, herunder angreb som:

  • SQL-injektioner indebærer, at en angriber indsætter kode, som kan ødelægge databaseposter eller -skemaer. Disse teknikker bruges til at slette, stjæle eller ændre følsomme data i organisationer og er blandt de mest almindelige hackingteknikker. For nylig har etiske hackere demonstreret deres evne til at omgå TSA-kontroller gennem SQL-injektioner. 
  • Scripting på tværs af websteder (XSS) retter sig mod betroede applikationer eller websteder, hvilket betyder, at omdømmeskaden kan være alvorlig. Angreb indebærer, at ondsindede scripts tilføjes til en virksomheds websted, hvorefter de køres, når en bruger indlæser webstedet. Det er normalt føjet til slutningen af en URL, og et offer lokkes til at klikke på den, eller mere komplekst er det et injektionsangreb, der er indlejret i virksomhedens kode.
  • Buffer-overløb opstår, når et program forsøger at indsætte flere data i en buffer, end den kan rumme. Da der ikke er andre steder at gøre af dem, flyder de ekstra data over i hukommelsen, hvilket risikerer at beskadige eller overskrive vigtige oplysninger i dette område. Denne fejl i softwarekoden gør det muligt for hackere at udnytte sårbarheder, stjæle eller ændre data og få adgang til følsomme kunde- eller virksomhedsoplysninger.

Denne type angreb er mere udbredte og derfor velkendte blandt udviklere. De kan i vid udstrækning afværges ved at følge sikker kodningspraksis, kontinuerlig test og kontinuerlig overvågning. På trods af dette kan organisationer ikke slå sig til ro og er nødt til regelmæssigt at kontrollere gyldigheden af deres kodningsretningslinjer og uddanne udviklere i, hvordan de undgår nyere former for hacking.

Derudover kan en større afhængighed af open source-komponenter, tredjepartsbiblioteker og AI-understøttet kodegenerering medføre, at udviklere utilsigtet anvender usikre kodningspraksisser. Udviklere har knap tid og integrerer disse komponenter for at fremskynde leveringen. Derfor kan vi forvente, at døren åbnes for større sikkerhedsrisici og udnyttelse, når udviklere stoler på open source-komponenter, biblioteker og AI uden grundigt at kontrollere deres gyldighed. 

Når det er sagt, findes der adskillige værktøjer, som automatiserer denne kontrolproces, men måske er tiden inde til også at begynde at kontrollere open source-bidragsydernes identitet og ægthed for at reducere risikoen for statsstøttede ondsindede aktører. En enkelt linje usikker kode i et bibliotek kan kompromittere en hel applikation, spilde utallige timer og ressourcer og udsætte en organisation, en nation og offentligheden for sårbarheder. Og trods de omfattende fremskridt inden for AI-baseret kodeudvikling skal AI-genereret kode gennemgå etablerede procedurer, praksisser og protokoller, før den implementeres i produktion.

Kontinuerlig uddannelse og opkvalificering er afgørende for at opretholde sikkerheden

Som med enhver teknologi eller disciplin er løbende uddannelse afgørende, og det forventes ofte, at udviklere forbedrer deres uddannelse og træning i deres egen fritid. Organisationer, der vil forhindre deres udviklere og systemadministratorer i at anvende dårlige sikkerhedspraksisser, skal investere i træning i stedet for at kræve, at IT-teams selv håndterer deres sikkerhedsrammer. Videnshuller har en reel og væsentlig indvirkning på en organisations sikkerhed, og uden at håndtere dette er udviklere måske ikke ajour med deres forståelse af sikkerhedskonsekvenserne af deres daglige handlinger. 

Da udviklernes praksisser potentielt kan føre til sikkerhedsrisici, skal organisationer også anlægge et omfattende perspektiv på deres platforme. Salesforce og ServiceNow spiller for eksempel en afgørende rolle i at gøre det muligt for ikke-traditionelle udviklere at bygge, levere og implementere, men er deres rolle inden for sikkerhed fuldt ud forstået? Organisationer skal lære, hvordan de opretholder sikkerheden i deres brug af disse platforme, og ikke overse deres potentiale som et åbent vindue for angreb og brud.

More Articles

Overvind sikkerhedsudfordringer for at understøtte udviklere

Der kræves en tilgang med flere facetter for at forhindre, at dårlige udviklerpraksisser bliver den næste sikkerhedskampplads. 

For det første skal organisationer fremme en sikkerhedsfokuseret kultur og sikre, at den er integreret i udviklingsprocessen. Dette kan omfatte automatiserede kvalitets- og sikkerhedsforanstaltninger, herunder indbyggede kvalitetstjek, godkendelsesporte og værktøjer til kontinuerlig test, så det sikres, at hver implementering opfylder organisationens standarder for overholdelse. 

Organisationer bør også anvende princippet om mindst mulige privilegier og sikre, at udviklere kun har adgang til de implementeringer og kode­rammer, de har brug for, i stedet for en udbredt spredning af administratoradgang. Uanset hvilken platform og/eller tjeneste en organisation bruger til sin implementering, er det vigtigt at udnytte de automatiserede arbejdsgange og den kontinuerlige overvågning, som de tilbyder, så problemer identificeres, før de bliver kritiske.

For det andet skal organisationer investere mere i uddannelse af deres udviklere i stedet for at lade dem kæmpe mod stadig mere sofistikerede angribere og sikkerhedstrusler. Det er afgørende, at udviklere på alle niveauer, især borgerudviklere, har den nødvendige viden til at identificere uregelmæssige mønstre og overvinde sikkerhedsrisici. Denne model vil variere fra organisation til organisation, men den skal være regelmæssig, i overensstemmelse med kravene og testet for at sikre, at udviklernes sikkerhedsbevidsthed styrkes.

Endelig bør organisationer, der vil ruste deres udviklere til kampen for bedre sikkerhed, kun anvende værktøjer, der understøtter sikker udviklingspraksis. Dette omfatter kodeanalyseværktøjer, automatiserede processer til håndtering af afhængigheder og systemer til konfigurationsstyring (CMS), der håndhæver stærkere sikkerhedsforanstaltninger. Ved at udnytte disse værktøjer sikres større ensartethed, overholdelse og sporbarhed på tværs af en organisations implementeringer, hvilket bidrager til at opretholde en sikkerhedsfokuseret kultur.

Når det er sagt, kan opbygningen af en sikkerhedsfokuseret kultur ved outsourcing af arbejde også ofte begynde med et samarbejde med en nearshore-softwareudviklings virksomhed eller et firma inden for skræddersyet softwareudvikling.

Vend udviklingen ved det næste sikkerhedsmæssige brændpunkt

Dårlig udviklerpraksis kan blive det næste sikkerhedsproblem på softwareudviklingens front, men det behøver den ikke at blive. Selvom det er sandt, at angribere og hackeroperationer bliver mere sofistikerede, har vi mulighed for at vende udviklingen og styrke den viden og de ressourcer, som udviklere har adgang til. På den måde kan folk undgå at være det svageste led og arbejde sammen med teknologien for at styrke en organisations sikkerhed. Ved at indarbejde en tankegang omkring sikker udvikling i dag vil vi se morgendagens softwaresikkerhed styrket.

Tilmeld dig The CTO Clubs nyhedsbrev for at få flere oplysninger om bedste praksisser for udviklere.

Scott Willson
Scott has over 20 years of technology experience that spans software development across financial services, manufacturing, government, and tech industries. Professionally, Scott has built software, managed professional services, sold and implemented software, and is currently applying that background to marketing. Scott is passionate about technology and helping businesses achieve value through technology and was leading DevOps at organizations before it was coined DevOps. He has also co-authored papers for the DevOps Enterprise Forum.
Follow the author:

You may also like