Medgründer Åsmund Skomedal og daglig leder Erik Rosen i Prosa Security.
Medgründer Åsmund Skomedal og daglig leder Erik Rosen i Prosa Security. (Bilde: Erlend Tangeraas Lygre)
EKSTRA

Prosa Security

Har Visma, Hafslund og BankID på kundelisten: Slik skal de ukjente gründerne gjøre utviklingsløpet ditt langt raskere

Og gjøre det lettere å følge de nye EU-kravene.

Hei, dette er en Ekstra-sak som noen har delt med deg.
Lyst til å lese mer? Få fri tilgang for kun 199,- i måneden.
Bli Ekstra-abonnent »

– I dag kan opp mot 30 prosent av tidsbruken i et prosjekt gå med til testing av programvaren. Det fører til lange avbrudd i utviklingsprosessen. Den tiden kan kuttes dramatisk med vårt verktøy, forklarer medgründer Åsmund Skomedal i Prosa Security.

I ti år har han og fire andre norske forskere ved Norsk Regnesentral jobber med å utvikle det som var en doktogradsavhandling i 2007 til et produkt som skal gjøre det enklere å lage programvare som følger formelle krav til sikkerhet og personvern. 

– Teknologien har blitt brukt til å analysere systemer lenge, men den har ikke hatt et fullverdig brukergrensesnitt før nå. Nå er den tilgjengelig for langt flere. Vi vet ikke om noen andre som gjør det samme, sier han.

Løsningen deres automatiserer en rekke av oppgavene sikkerhetsdesignere gjør manuelt i dag – fra spesifisering til analyse og testing av systemer. De har allerede jobbet med en rekke store aktører som Bankid, Visma, Hafslund og Sparebank 1.

Tegner diagrammer manuelt

For å lage sikker programvare trenger man oversikt over hvilken informasjon som flyter mellom ulike agenter. En agent kan være en bruker, en mobiltelefon, en webapplikasjon eller en ekstern innloggingstjeneste. 

I tillegg må man ha informasjon om hvilke sikkerhetsoperasjoner – som kryptering – som virker på informasjonen som flyter mellom agentene.

I større utviklingsprosjekter er det i dag gjerne en sikkerhetsarkitekt som står for denne kartleggingen. For å visualisere informasjonsstrømmen benyttes gjerne grafiske verktøy og tegninger. Dersom man gjør endringer i sikkerhetsdesignet underveis, må diagrammene tegnes opp på nytt, og man må gjøre nye vurderinger og analyser.

Spesifikasjonsspråk

Med verktøyet de norske forskerne har kommet opp med endres hele designprosessen. I stedet for å lage manuelle tegninger, setter man opp sikkerhetsdesignet ved hjelp av et egenutviklet spesifikasjonsspråk.

Dette er løst basert på andre lignende språk, og benyttes til å legge inn agentene og sikkerhetsoperasjonene.

– Formålet er ikke å eksekvere koden man skriver med dette språket, men å analysere sikkerheten til systemet. Man lager en modell for simulering.

Basert på spesifikasjonen lages ulike grafiske fremstillinger, som det populære meldingssekvensdiagrammet.

– Kryptonøkler, signeringer, passord, PIN-koder. I større systemer har man gjerne tre-fire lag med kryptering. Diagrammene hjelper deg å se hvilken informasjon som beskyttes av hva.

Artikkelen fortsetter under.

Etter at man har skrevet inn spesifikasjonskoden autogenereres meldingssekvensdiagrammet og andre grafiske fremstillinger.
Etter at man har skrevet inn spesifikasjonskoden autogenereres meldingssekvensdiagrammet og andre grafiske fremstillinger. Foto: Prosa Security

Sjekker designet opp mot kravene

Ulike bransjer og bedrifter har en rekke krav til hvordan informasjon skal håndteres og sikres. Dette kan være PSD2 for bankvesenet eller GDPR som stiller krav til behandling av personopplysninger. 

– Man kan for eksempel ha et skriftlig krav om at e-post ikke skal være tilgjengelig i klartekst andre steder enn innenfor visse sikkerhetssoner, forklarer Skomedal.

Skriftlige krav fortolkes ned til tabellpunkter. Disse sjekkes opp mot det faktiske designet.
Skriftlige krav fortolkes ned til tabellpunkter. Disse sjekkes opp mot det faktiske designet. Foto: Prosa Security

Kravene spesifiseres i en tabell. Deretter kjøres en analyse for å se om designet står i stil til kravene man har satt opp i tabellen. 

Med GDPR må man ha et definert formål med dataen som samles inn. De skal også på et hvilket som helst tidspunkt kunne kreve at deres opplysninger fjernes fra en tjeneste.

Selskapet mener programvaren deres vil hjelpe utviklere med å gi dem oversikt over hvilken type informasjon som går mellom hvilke noder – blant annet ved å merke informasjonen man har spesifisert med formålet.

– Man vil også kunne merke informasjon med dens formål, eller om den skal være anonymisert. Deretter kan man vurdere hvordan den skal behandles videre, sier Åsmund Skomedal.

Tester for trusler

I tillegg til spesifikasjons- og kravdelen, har de også funksjonalitet for å simulere angrep. 

– Man kan legge til en eavesdropper (lytter) i den forbindelsen man antar er det svakeste leddet i systemet. Denne vil ha tilgang til all informasjon i dette leddet. 

I programvaren kan man simulere angrep.
I programvaren kan man simulere angrep. Foto: Prosa Security

Skomedal bruker falske basestasjoner som eksempel, men de kan i utgangspunktet modellere en rekke ulike angrep. Målet er å se hvilke konsekvenser dette kan få. 

– Kan man ved å knekke én klient, knekke større deler av systemet? 

Testingen benytter seg av hvitboks-filosofien innen IT-sikkerhet. Med andre ord har den simulerte angriperen all tilgjengelig kunnskap om systemet og sikkerheten som er bygget inn.

Hvitboks står i kontrast til sortboks-testing, hvor man tester en rekke ulike angrepsmetoder på et system fra utsiden. Et eksempel på dette er klassisk penetrasjonstesting.

– Utfordringen med penetrasjonstesting er at det er vanskelig å gjøre det på en systematisk og presis måte. Det er litt «hit and miss». Med verktøyet vårt får du security by design, forklarer han.

Kommentarer (0)

Kommentarer (0)
Til toppen