Sikkerhetsoperasjoner

Det å passe på sikkerheten til et system etter at det har vært satt i drift, har tradisjonelt vært sett på som en (ja, nettopp) driftsoppgave som “de på IT” tar seg av.

Et vellykket programvaresikkerhetsinitiativ må imidlertid også omfatte sikkerhetsoperasjoner eller nettverkssikkerhet, for å sørge for full tilbakekopling til utviklerne.

En ny aktivitet i BSIMM7

docker

Cigital feirer (inter)nasjonal sikkerhetsmåned med å slippe en ny versjon av BSIMM-studien – versjon 7!

Denne utgaven har med data fra 95 forskjellige virksomheter, og totalt 237 forskjellige målinger. Nytt av året er aktiviteten  [SE3.4] “Use application containers” (som vi kan oversette til “Bruk applikasjonscontainere” – f.eks. Docker). Det er tydelig at BSIMM ønsker å ligge litt i forkant her, ettersom det er ingen av de undersøkte virksomhetene som så langt rapporterer at de gjør denne aktiviteten.

Dypdykk i BSIMM del 12 – Software Environment

LibertyBudget.com-Install-Computer-Software-CD-2400pxI vår serie om innebygd målbar sikkerhet og BSIMM er vi nå kommet til det siste avsnittet, nemlig Software Environment eller “Programvaremiljø” som vi har kalt det på norsk.

I vår modenhetsstudie av programvaresikkerhet i offentlige virksomheter fant vi at de aller fleste hadde god tiltro til egen modenhet på dette feltet. Dette er ikke overraskende, ettersom det stort sett dreier seg om tradisjonelle mekanismer for sikring av datamaskiner og nettverk, noe som i langt større grad er en del av vanlig praksis enn det programvaresikkerhet er.

Dypdykk i BSIMM del 11 – Security Testing

johnny-automatic-hydraulic-press-testingI vår serie om innebygd målbar sikkerhet og BSIMM er vi nå kommet til Security Testing, eller “Sikkerhetstesting”.

Hovedmålet for praksisen Sikkerhetstesting er kvalitetskontroll som gjøres i løpet av utviklingssyklusen. De som utfører sikkerhetstesting må sørge for at sikkerhetsfeil oppdages og korrigeres. Programvaresikkerhetsgruppen (SSG) må sørge for at standarder blir fulgt og at godkjente sikkerhetsmekanismer gjenbrukes.

Dypdykk i BSIMM del 10 – Penetration Testing

penetrationI vår modenhetsstudie av programvaresikkerhet i offentlige virksomheter pekte penetreringstesting seg ut som en aktivitet som generelt sett ikke gjøres som en del av utviklingen – dette er overraskende når man tenker på hvor mange verktøy som er fritt tilgjengelige. Noen kunne hevde at den jevne utvikler ikke har tilstrekkelig kompetanse til å drive penetreringstesting, men vårt svar er at da er det på tide at de lærer seg noen nye triks!

Dypdykk i BSIMM del 9 – Code Review

code-reviewI vår serie om innebygd målbar sikkerhet og BSIMM er vi nå kommet til Code Review, eller kodegjennomgang.

Hovedmålet for praksisen “Kodegjennomgang” er kvalitetskontroll. De som utfører kodegjennomgang må sørge for at sikkerhetsfeil oppdages og korrigeres. SSG må sørge for at standarder blir fulgt og at godkjente sikkerhetsmekanismer gjenbrukes.

Dypdykk i BSIMM del 8 – Architecture Analysis

laurent-comparaison-art-roman-art-gothiqueI vår serie om innebygd målbar sikkerhet og BSIMM er vi nå kommet til  Architecture Analysis, eller Arkitekturanalyse.

Hovedmålet for praksisen Arkitekturanalyse er kvalitetskontroll. De som utfører arkitekturanalyse må sørge for at strukturelle sikkerhetsfeil oppdages og korrigeres. Programvarearkitekter må sørge for at standarder følges, og at godkjente sikkerhetsløsninger gjenbrukes.

Dypdykk i BSIMM del 7 – Standards and Requirements

2A0---A4I vår serie om innebygd målbar sikkerhet og BSIMM er vi nå kommet til Standards and Requirements, eller Standarder og krav.

Hovedmålet for praksisen “Standarder og krav” er å lage retningslinjer for alle interes­senter. Ledere og programvaresikkerhetsgruppen (SSG) må dokumentere programvaresikkerhetsvalg, og formidle dette materialet til alle som er invol­vert i livssyklusen for sikker programvareutvikling (SSDL), inkludert eksterne aktører.

Dypdykk i BSIMM del 6 – Security Features & Design

Security Features of the US Twenty Dollar BillI vår serie om innebygd målbar sikkerhet og BSIMM er vi nå kommet til Security Features & Design, eller sikkerhetsfunksjonalitet og design. En “feature” er kanskje egentlig heller en egenskap, men i de fleste tilfeller dreier det seg om funksjonalitet, så vi kjører videre med det.

Hovedmålet for denne praksisen er etablering av tilpasset kunnskap om sikkerhetsegenskaper, rammeverk og mønster. Den tilpassede kunnskapen må drive arkitektur- og komponent-beslutninger.

Dypdykk i BSIMM del 4 – Training

joggerHvordan kan du vite at du håndterer en oppgave hvis du aldri har gjort den før? Opplæring er svaret, og Øvelse gjør mester – og den som tror at han er ferdig utlært, er ikke utlært, men ferdig. Programvaresikkerhetsgruppen (SSG) spiller en viktig rolle her!

I vår serie om innebygd målbar sikkerhet og BSIMM, skal vi denne gangen skal vi se nærmere på Training, eller opplæring og øvelser. Hovedmålene for denne praksisen er å utdanne en kunnskapsrik arbeidsstokk og rette opp feil i prosesser. Arbeidsstokken må ha rolle-basert kunnskap som spesifikt inkluderer ferdighetene som kreves for å utføre deres SSDL-aktiviteter på en hensiktsmessig måte. Opplæringen må omfatte spesifikk informasjon om rotårsaker til feil som oppdages i prosessaktiviteter og resultater.

Dypdykk i BSIMM del 3 – Compliance & Policy

checklist“Security Policy” er et av mange ord som ikke har en fullgod norsk oversettelse, noe som medfører at mange bruker bastard-begrepet “sikkerhets-policy”. Muligens kan man oversette det med “sikkerhetsinstrukser og strategi”, men jeg er usikker på om det treffer helt (noen foreslo nettopp “sikkerhetsretningslinjer” – det er kanskje bedre).

I vår serie om innebygd målbar sikkerhet og BSIMM, skal vi denne gangen skal vi se nærmere på “Compliance and Policy”, som vi forsøksvis kunne oversette med “Etterlevelse av regler og retningslinjer”.

Du trenger en programvaresikkerhetsgruppe!

nuclear-forensicsI enhver organisasjon som utvikler programvare må det finnes noen som har ansvaret for programvaresikkerheten. I BSIMM-studien fant de at ALLE virksomhetene som ble undersøkt hadde en programvaresikkerhetsgruppe (software security group – SSG) – den kan være så liten som en person, men den må være der.

Dypdykk i BSIMM del 2 – Attack Models

attack-catfrokostmøtet om måling av sikkerhet fikk jeg et godt spørsmål som jeg ikke kunne svare på: “Hvilket nivå skal man legge seg på?”  Mitt ikke-svar var at “da må du gjøre en risikobasert vurdering”, som egentlig bare er en annen måte å si “det kommer an på”. I utgangspunktet hadde jeg sagt at “alle” burde kunne starte med aktivitetene på nivå 1 i hver praksis, men her skilte aktivitet AM1.1 seg ut i tallmaterialet – bare 21 av de 67 undersøkte bedriftene vedlikeholder en liste av de topp N mulige angrepene mot seg selv. Dette virker som en ganske grei aktivitet å gjøre et par ganger i året, og jeg finner ingen god forklaring på hvorfor det ikke gjøres.

Dypdykk i BSIMM del 1 – Configuration and vulnerability management

privacy-policy-445156_1280Etter utallige oppfordringer kommer endelig neste episode i vårt dypdykk i BSIMM – akkurat tidsnok til fredagens frokostmøte! Vi starter bakerst, med konfigurasjons- og sårbarhetshåndtering.

En av tesene i BSIMM er at hvis du driver programvareutvikling trenger du en programvaresikkerhetsgruppe (SSG). Kanskje består gruppen kun av en person, men den må være der. BSIMM tar utgangspunkt i SSG og utviklerne rundt den.

Innebygd sikkerhet i programvare – Dypdykk i BSIMM (del 0)

indexPå utallige oppfordringer skal vi fremover bruke litt tid på å beskrive detaljene i Building Security In Maturity Model. BSIMM er et rammeverk med mål og aktiviteter som brukes i for å integrere sikkerhet i programvare mens den bygges, basert på praksiser som faktisk er i bruk. I Charles Dickens’ ånd gjør vi det som en føljetong, men ettersom verden har gått litt framover siden Pickwick-klubben, hadde vi tenkt å la dere lesere få være med å bestemme rekkefølgen på det som presenteres.