Skip to main content

Sjekklisten for sikkerhet

Denne sjekklisten kan brukes som et startpunkt for å vurdere prosjektets sikkerhet.

Her finner du en liste med JA/NEI spørsmål som hvert utviklingsteam burde besvare.
Målet er å svare JA på alle spørsmål, men dette er selvsagt åpent for vurdering av systemet og kundens behov.

  • Svares det JA på et punkt skal det forklares hvordan dette er løst.
  • Svares det NEI på et punkt skal det forklares hvorfor det ikke er løst eller settes en frist for ny vurdering.

Last ned sjekklisten og implementere den som en del av kildekoden i ditt prosjektet.

Planlegge

Ansvar & rutiner:

  • Er ansvarsområder* godt definert og fordelt mellom involverte parter (team, kunde, tredjepart)?
    *infrastruktur, kildekode, monitorering, vedlikehold, etc.

Personvern:

  • Er sensitiv data sikret fra å komme på avveie (logging, testdata, etc.)?
  • Er personopplysninger håndtert i henhold til EU og Datatilsynets gjeldende regelverk?

Disaster recovery og backup:

  • Kan systemet gjennopprettes ved en katastrofe (innen akseptabel tid og med akseptabelt tap av data)?

Business continuity planning:

  • Har sluttbrukeren et provisorisk alternativ om systemet er nede (excel, epost, telefon, etc.)?

Trusselmodellering:

  • Er det utført en trusselmodellering for systemet?

Utvikle

Versjonskontroll:

  • Er det satt opp rutiner for at produksjonsendringer testes og godkjennes av noen andre enn utvikleren?

Autentisering:

  • Autentiseres brukere gjennom en anerkjent ferdigløsning?

Autorisering:

  • Har brukere bare tilgang til det de skal ha (gjennom en godt definert autoriseringsmodel)?

Er teamet kjent med de meste vanlige agrepsmetodene, slik som manglende validering av data?:

  • Valideres data som sendes inn til systemet?

Tredjepartssystemer:

  • Valideres data som hentes fra andre systemer?

Kryptering:

  • Krypteres nettverkstrafikk mellom alle tjenester (med et anerkjent krypterings bibliotek)?

Secrets:

  • Er secrets fjernet fra versjonskontrollert kildekode?
  • Roteres secrets (innen akseptabelt tidsintervall)?

Bygge

Sikring av CI/CD:

  • Er systemets CI/CD sikret fra å bli påvirket av uønskede aktører?

Statisk kodeanalyse og dynamisk kodeanalyse:

  • Er det satt opp automatisk sjekk for sårbarheter i kildekode?

Software composition analysis og biblioteker:

  • Er det satt opp automatisk sjekk for sårbarheter i tredjepartsbiblioteker?

Teste

Penetrasjonstesting:

  • Er det gjennomført en penetrasjonstest av systemet?
  • Gjennomføres det regelmessige penetrasjonstester av systemet?

Deploye

Sikkerhetsoppdateringer:

  • Oppdateres virtuelle maskiner regelmessig?

Regelmessig oppdatering av containere:

  • Oppdateres container images regelmessig?

Containere:

  • Er det satt opp automatisk sjekk for sårbarheter i container images?

Drifte

Nettverksoversikt:

  • Er det utført en kontroll på hvilke IP-adresser og porter som faktisk eksponeres fra systemet?
  • Er det utført en kontroll på hvilke tjenester som lytter på portene til systemet?

Isolasjon av tjenester:

  • Isolerer brannmurene trafikken (inn og ut) til kun det nødvendige for hver komponent?

Monitorere

Logging:

  • Logges alle adgangsforsøk med tilhørende alarmer*?
    *antall feilet, fra uventede land, mot endepunkter som ikke eksisterer, etc.