Hvordan utføre sikkerhetstesting gjennom hele utviklingsløpet?

Sikkerhetstesting gjennom hele utviklingsløpet

Mange beveger seg mot, eller er allerede i, skyen. Dette medfører nye krav og metoder for sikring av data. Sikkerhetstesting er noe man kan gjøre gjennom hele utviklingsløpet, fra idè til utfasing. 

Det har aldri vært mer snakk om sikkerhet i IT-verdenen enn det er nå. Ikke så rart med tanke på alle datalekkasjene, cryptolocker og wiper malwaren som florerer på etheren om dagen. Men selv om fokus og snakk fra både fagfolk og media om sikkerhet er større enn før, så smeller det også mye oftere enn tidligere. 

Ikke så rart det heller kanskje, ettersom vi hele tiden digitaliserer mer og mer, og produserer data hvert eneste nanosekund. I motsetning til naturlige stoffer, som vi kjemper for å bevare og utnytte mest effektivt, så bare vokser datamengdene. 

Mange beveger seg mot, eller er allerede i, skyen. Dette medfører nye krav og metoder for sikring av data. I fremtiden vil nok dataene alene ha en del sikkerhetskontroller innebygget, men frem til da så er vi sterkt avhengig av å legge kontrollene på applikasjonene og infrastrukturen som behandler de. 

Men hvordan vet vi at vi har brukt riktig kontrollere på riktig steder? Hvordan vet vi om de tiltakene vi har iverksatt er tilstrekkelige?

For å kunne svare på slike spørsmål må man ha testrutiner som genererer metrikker. Sikkerhetstesting er noe man må gjøre kontinuerlig gjennom hele applikasjonens levetid; fra ide til utfasing. 

Vil du dykke i dybden på sikkerhetstesting? Last ned vår guide:

5 faser: slik utfører du sikkerhetstesting gjennom utviklingsløpet

Begynn med klassifisering av applikasjonene

Uavhengig om du har autonome utvikler-team eller rigide sikkerhetsstrategier, så må alle applikasjoner som skal utvikles først klassifiseres. Her kan man benytte OWASP sin ASVS (Application Security Verification Standard) eller egen utviklede klassifiseringer. Spørsmål man skal stille seg er:

  • Behandler applikasjonen sensitive data?
  • Er applikasjonen kritisk for virksomheten eller samfunnet?

I OWASP ASVS har man i hovedsak 3 applikasjonskategorier:

  • Level 1: Retningslinjer for alle applikasjoner
  • Level 2: Retningslinjer for applikasjoner som behandler sensitive data som krever beskyttelse
  • Level 3: Retningslinjer for applikasjoner ansett som virksomhets- eller samfunnskritiske

Hvert enkelt nivå har et sett med  krav og bør krav vedrørende sikkerhetskontroller som skal implementeres. Slike retningslinjer skaper forutsigbarhet for både produkteiere og utviklere. 

Det kan være tilfeller hvor det er usikkerhet rundt hva som klassifiseres som sensitivt. Mye er det lett å finne svar på ved å besøke Datatilsynets informasjonssider (GDPR krav vedrørende personsensitiv informasjon) eller lovkrav i Sikkerhetsloven, Personvernloven, Statistikkloven, Arkivloven, etc. Ved usikkerhet spør Personvernombudet og/eller en jurist. Har man ikke slike roller i virksomheten så ta direkte kontakt med Datatilsynet.

Ulike test-teknikker for de forskjellige fasene i utviklingen

Neste steg er de fem forskjellige fasene i SDLC (Software Development Lifecycle). OWASP Testing Guide 4.0 definerer fem faser:

  • Fase 1: Pre-utvikling
  • Fase 2: Design
  • Fase 3: Utvikling
  • Fase 4: Deployment
  • Fase 5: Forvaltning

For å ivareta sikkerheten under hver enkelt fase benytter man forskjellige test-teknikker:

  • Manuelle analyser og vurderinger
  • Trusselmodellering
  • Kildekodeanalyse
  • Penetrasjonstester
FASE METODE
Fase 1: Pre-utvikling Teknologiske analyser og vurderinger
Fase 2: Design Manuelle analyser, Trusselmodellering
Fase 3: Utvikling Kildekodeanalyse
Fase 4: Deployment Penetrasjonstester
Fase 5: Forvaltning Penetrasjonstester

 

Vil du lære mer om de 5 fasene? Last ned vår guide for å lære deg hvordan man faktisk gjør det:

Last ned guide om sikkerhetstesting