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:
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 må 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 |