Sikkerhetstesting i utviklingsløpet er i dag der test var for mange år siden. Altså lite anerkjent og det gjennomføres ofte i slutten av leveranseløpet. Resultatet kan være at risiko og sårbarheter ikke oppdages før i produksjon. Det er på tide å gjøre noe med det, da sårbarheter er en naturlig bieffekt av programvareutvikling.
Sikkerhetstesting bør derfor få fokus tidlig av hele leveranseteamet. Formålet er å identifisere sårbarheter og deretter bearbeide svakhetene bort fra IT-løsningen. Skal du begynne med sikkerhetstesting i utviklingsløpet bør du fokusere på tiltak som oppmuntrer til både nysgjerrighet og eierskap.
Tips til å komme i gang med sikkerthetstesting tidlig
Denne type tiltak kan oppfattes som tunge og vanskelige. Begynn først med leveranseteamet – presenter hvilken effekt sikkerhetstesting gir utviklerne og de andre medlemmene i teamet. For det andre – hold det enkelt og greit, fordi dette er en reise hvor alle må bli kjent med endringen. Kontinuerlig forbedring og justering vil over tid vil skape motivasjon og eierskap. Her er tipsene du trenger som sørger for en god start.
1. Roller i teamet
Det er ikke lenger én person som har ansvaret for sikkerhetstesting. Hele teamet har ansvar for å vurdere risikoen for løsningen.
Det bør i tillegg utnevnes en Secuirty Champion fra teamet – en person som interesser seg for faget og tar en proaktiv rolle i teamet. Denne personen har «stemmen» for sikkerhet i leveransen.
2. Sprintplanlegging
For å komme i gang med sikkerhetstesting ved sprintplanlegging er vår anbefaling å gjennomføre trusselmodellering, det vil si at sikkerhetsrisiko beskrives som stikkord for taskene til brukerhistorien. Hele teamet tar ansvar for å finne hva, hvordan og hvor disse risikoene kan være i løsningen som planlegges. Utfallet av denne øvelsen er å opprette «abuser story» knyttet til en brukerhistorie som krever sikkerhetstitak. Det kan gjøres på følgende måte:
# |
Sprintfase |
Beskrivelse |
Ansvar |
1 | Sprintplanlegging | Oppretter tasker på brukerhistorie | Teamet |
2 | Sprintplanlegging | Gjennomføre trusselmodellering for taskene til brukerhistorien. Tasken inneholder stikkordbeskrivelse av sikkerhetstesting som skal gjennomføres løpende i sprinten. | Teamet |
3 | Sprint | Oppretter abuser story | Security Champion |
4 | Sprint | Oppretter task til abuser story som hva, hvordan og hvor dette skal sikkerhetstestes. | Security Champion |
Endre holdninger
For mange er sikkerhetstesting noe nytt og spennende. I enkelte tilfeller møter man sterk motstand, noe som oftes skyldes ren uvitenhet eller man blir utfordret på noe man ikke kan. Det er uansett viktig å forstå at sikkerhet er et kollektivt ansvar i en leveranse. Et angrep kan koste organisasjonen omdømmetap, og konsekvensen av alvorlige sikkerhetshull kan koste mer enn investeringen av selve produktet eller tjenesten. Er du villig til å ta den risikoen?