lørdag 20. juni 2015

Eye in the sky

Jeg er en stor fan av Radiolab, og kan ikke anbefale det nok.

I den siste podcasten forteller de om en overvåkingsteknologi som er brukt både i militære operasjoner og til bekjempelse av kriminalitet. Prinsippene er likevel overførbare til cybersikkerhet, og hvordan teknologien stadig utvider mulighetsrommet. Spørsmålet de stiller seg er: Selv om vi kan gjøre dette, burde vi?

Det var spesielt to ting i podcasten jeg bet meg merke i.

For det første viser de at gjennom å gjøre analyser i et helt nettverk av mennesker, steder og bevegelser, så kunne de avsløre hvordan et helt narkotika-kartell var bygget opp, og hvor deres kommandosentral lå plassert. De flyttet fokuset fra å oppklare enkelthendelser, til å forstå hvordan hele det kriminelle nettverket er bygget opp.

For det andre var de litt betenkt fordi de positive sidene ved overvåking er vanligvis svært konkrete. "Dersom vi samler inn disse dataene, så vil vi kunne avsløre en gitt type kriminalitet". Ulempene derimot, er vage og ubestemmelige. "Vi mister frihet og privatliv". Det er lite konkret, og det taper diskusjonen. Denne diskusjonen er direkte overførbar til overvåking av internettbruk.

Lytt til episoden her:

http://www.radiolab.org/story/eye-sky/

fredag 19. juni 2015

Cyber Situasjonsforståelse

Vi forstår intuitivt at beslutninger må tas på et riktig og rasjonelt grunnlag. Hva er de viktigste truslene mot virksomheten, og hva skal vi gjøre for å forberede oss? Hva er egentlig omfanget av hendelsen som nettopp har blitt oppdaget, og hvilke tiltak er de riktige å gjennomføre? Hvilke ressurser har vi tilgjengelig? Hvilke langsiktige tiltak må til?

Hva er egenlig cyber situasjonsforståelse, og hvordan oppnår vi det?

Situasjonsforståelse kan deles inn i tre nivåer:

1. Å oppfatte at en hendelse har funnet sted i tid og rom.
2. Å forstå hva det betyr at hendelsen har funnet sted
3. Å forutse hva hendelsen vil kunne føre til

La oss se på et eksempel:
1. Sikkerhetsovervåking avslører at store mengder data sendes fra en av virksomhetens datamaskiner til en IP-adresse i et annet land. Analytikeren oppfatter at dette skjer.

2. Analysene avslører at dataene er innholdet i en database som brukes av utviklingsavdelingen, og at de sendes til en nasjon der myndighetene er kjent for å bruke cyber-virkemidler for å støtte opp om sin nasjonale industri. Analytikeren forstår hva det er som har skjedd og iverksetter umiddelbart tiltak som forhindrer videre tap av informasjon.

3. Virksomheten analyserer situasjonen og kommer til at en konkurrent trolig står bak, og at han trolig vil bruke informasjonen til å vinne fremtidige kontraktsforhandlinger. Virksomheten forutser hva hendelsen kan føre til, og kan med bakgrunn i dette gjøre strategiske valg.

Enkelt? Overhodet ikke!

Det finnes mange forslag til hva et cyber situasjonsbilde skal være. Sjefen/styret ønsker et overordnet bilde, gjerne med noen farger som indikerer om alt er ok. Analytikeren setter gjerne opp sine egne triggere i alle mulige systemer for å raskest mulig fange opp hendelser. Mitt fokus er på ledelsen av enheten som skal håndtere hendelsen. Denne står midt mellom analytikeren og virksomhetens ledelse, og må innhente informasjon fra begge leire.

Fallgruver
Jeg har sette flere forsøk på å etablere løsninger for cyber situasjonsforståelse, og noen av dem har feilet ganske kraftig. En fellesnevner er  at man ikke har tatt seg tid til å vurdere hvilken informasjon det er behov for, men brettet opp ermene og laget en eller annen teknisk løsning. For deretter å finne ut at det ikke var noen som trengte det. Noen eksempler:

1. Dyre SIM/SIEM løsninger. Etter at løsningene er implementert oppdager du at de IKKE kan ta i mot noen logg-kilder som faktisk er helt kritiske. Korreleringen mot sårbarhetsundersøkelsene fungerer dårlig i praksis fordi du ikke klarer å måle systemene ofte nok. Løsningene forteller lite om virksomheten, altså hvilken kontekst hendelsene skal vurderes i. Resultatet er at en ikke vet om en gitt hendelse er alvorlig, og risk-score systemet er nærmest ubrukelig.

2. Enkle PowerPoint/SharePoint dashboards. Disse ser flotte ut. Kanskje noen i ledelsen så et slikt dashboard et sted, og nå skal det innføres i din virksomhet også. Energien legges i utformingen av dashboardet, og ikke så mye i arbeidet med å innhente og analysere informasjonen som skal presenteres. Resultatet er at det "dør på rot".

3. Egenutviklede løsninger. Disse er gjerne bedre tilpasset de behovene og systemene som virksomheten har, men med mindre en har en egen utviklingsavdeling er det stor fare for at løsningen ikke blir oppdatert eller holdt ved like.

The good way to do it
I stedet bør man starte med å analysere hvilken informasjon som er nødvendig for å kunne ta gode beslutninger. Hvis en tar seg tid til å løfte blikket og se hvilken informasjon analytikere og ledelse har behov for, ender du kanskje opp med et informasjonsbehov som er annerledes enn det du først trodde.

En slik tilnærming ble presentert på NATO Cooperative Cyber Defence Centre of Excellence i 2014 i et paper(1) av Dressler, Moody, Bowen og Koepke. Jeg liker spesielt godt at de beskriver hvilke dataklasser som inngår i en helhetlig cyber situasjonsforståelse. De enkelte dataklassene må vurderes med tanke på hvilket informasjonsbehov du har, hvordan informasjonen skal samles inn, analyseres og presenteres.

Dataklassene som inngår i cyber situasjonsforståelse

Cyber events
Dette er alle hendelser som er relevante i analysearbeidet. Det inkluderer naturligvis informasjon fra inntrengningssystemene, men også alle andre logg-kilder som må samles inn for å kunne fastslå et hendelsesforløp.

Key Cyber Terrain
For å forstå en hendelse, eller for å forstå hvilke mottiltak som er mest hensiktsmessig, må en forstå cyberlandskapet. Store virksomheter kan ha store og komplekse IT-løsninger, spredt utover mange funksjonsområder og geografiske avstander. I en gitt situasjon er imidlertid ikke alle deler av nettverket like viktig. "Key cyber terrain" kan feks være avgrenset til internett-portalen, ordresystemet eller serverne som kjører en spesifikk versjon av operativsystemet. For å forstå hva som er viktig, må dette avklares sammen med den eller de som driver virksomheten.

Ongoing operations
For store virksomheter, som Forsvaret hvor jeg har min bakgrunn, kan det være flere pågående operasjoner samtidig. Håndteringen av flere samtidige hendelser må koordineres med tanke på tid, rom, ressurser osv. I tillegg må de kunne presenteres samlet for ledelsen.

Cyber readiness
Hvilke cyberkapasiteter har virksomheten? Hva er status for utstyret? Er treningsnivået tilstrekkelig? Er bemanningen god nok? Er de ute på oppdrag, eller er de disponible? Når en leder hendelseshåndtering, må en vite hvilke ressurser som er tilgjengelig. Å legge planer for ressurser du ikke har er en dårlig idé.

Cyber vulnerabilities
Hvilke sårbarheter har du i ditt "Key cyber terrain"? Er det oppdatert? Er det minimert? Har du tilstrekkelig konfigurasjonskontroll og en oppdatert oversikt over hvilke sårbarheter som finnes i de mest kritiske delene av ditt cyberlandskap.

Threat Landscape
Hvilke trusler står virksomheten over for? Hva vet du om truslene? Hvilke intensjoner driver dem til å angripe akkurat din virksomhet? Hvilke teknikker og metoder bruker de? Hvordan kan du oppdage om de har angrepet virksomheten? Hvordan kan du forberede deg på å avskjære angrepene? Har du sårbarheter i ditt key terrain som truslene som er mest relevante for deg kan utnytte? Trusselbildet er dynamisk og i konstant endring.

Først når du har vurdert disse dataklassene nøye og funnet ut hvor informasjonen oppstår, hvordan du skal samle den inn og vurdere den, først da kan du utvikle en løsning for hvordan den skal presenteres. En til tilnærming vil også skape den nødvendige forankringen både oppover og nedover i organisasjonen, og sørge for at alle forstår hvilken rolle de spiller i etableringen av situasjonsforståelsen.

Først da kan du si at det er en felles situasjonsforståelse.



(1) Operational Data Classes for Establishing Situational Awareness in Cyberspace

onsdag 17. juni 2015

Sårbarheter i skalar-frie nettverk

Når jeg snakker om cybersikkerhet pleier jeg å nevne de nye sårbarhetene som oppstår i skalar-frie nettverk.

ARPANET ble konstruert på 60-tallet. Det var et pakke-svitsjet nettverk som blant annet skulle kunne virke etter en krig hvor atomvåpen ble brukt. Pakke-svitsj teknologien kombinert med en topologi basert på maske-nett ga et robust nettverk.

Det som kjennetegner et slikt nettverk er at nodene i nettverket har et antall forbindelser som er normalfordelte. Det betyr at de fleste noder har et gitt antall forbindelser, og at det er usannsynlig at enkelte noder har fryktelig mange eller fryktelig få forbindelser.


Skalar-frie nettverk er derimot bygget opp på et annet prinsipp. I stedet for at antall forbindelser er normalfordelte, følger distribusjonen en power-law. Det betyr at noen få noder har svært mange forbindelser, mens de aller fleste har svært få forbindelser.

Eksempel på et skalarfritt nett
Dersom vi ser på distribusjonen av forbindelser i de to typene nettverk ser vi at de følger helt forskjellige regler. I figuren under ser vi maske-nettet som en tradisjonell bell-kurve, mens det skalar-frie nettet vises som en power-law distribusjon.

Distribusjon av maske-nett og skalarfrie nett
En avgjørende forskjell på de to typene nett er hvor motstandsdyktige de er for ytre påvirkning. ARPANET var konstruert med tanke på krig. Dersom en motstander klarte å slå ut en node (en kommandoplass eller sambandsstasjon) så vil de resterende nodene likevel klare å kommunisere. Det er jo nettopp dette som er bygget inn i pakkesvitsj-teknologien. Nettverksprotokollen finner en rute gjennom nettet, og sørger for at informasjonen blir levert selv om noen noder tas ut av nettet.

Et maskenettverk er laget for å motstå målrettede angrep.

Hva med skalar-frie nett?
Disse har visse andre egenskaper. Som nevnt vil enkelte noder ha svært mange forbindelser. Dette er nettets super-noder, og de er svært viktige av flere grunner. For eksempel er de disse som sørge for at det er kort vei mellom to vilkårlige noder i nettverket.
Problemet er at disse super-nodene gjør hele nettet sårbart. Dersom en slår ut super-nodene, vil nettet kunne kollapse totalt. Dette er en ny type sårbarhet som vil kun vil oppstå i slike nett.

Et skalar-fritt nett er svært sårbart for målrettede angrep, men er svært motstandsdyktig ved tilfeldige angrep.

I filmen under ser vi hvordan et skalar-fritt nett oppfører seg ved tilfeldige angrep. Størrelsen på noden indikerer antallet forbindelser som noden har. En stor node har mange forbindelser, mens en liten node har få. I simuleringen ser vi at noder blir tatt ut av nettverket, og det er tilfeldig hvilke noder som tas ut. Selv om et stort antall noder fjernes, så henger nettet fremdeles sammen og de gjenværende nodene kan fremdeles kommunisere. Det er først når nærmere 4/5 av alle nodene er tatt ut at nettet kollapser.


Hvordan ser et målrettet angrep ut i det samme nettet? I filmen under ser vi det samme nettet, men i denne simuleringen blir den største noden tatt ut først, deretter den nest største, så den tredje største osv. Vi ser raskt hvilken effekt et målrettet angrep har. Allerede før 1/5 av nodene er tatt ut, har nettet kollapset fullstendig, og de gjenværende nodene kan ikke lengre kommunisere.


Hvordan slike nettverk oppstår ser ut til å være en funksjon av at nettverk vokser seg store og komplekse. Internett har utviklet seg til å bli skalar-fritt, og det inneholder også andre skalar-frie nett som f.eks. web og twitter (Google er en super-node for websider. Stephen Fry er en super-node for twitter). Andre eksempler på slike nett er nettverket av flyplasser/flighter, betalingssystemene som bankene har bygget opp og sosiale nett. Naturen ser ut til å favorisere denne typen nett, for vi finner slike nett også i samspillet mellom proteiner, hvilke dyr som spiser hvilke andre dyr osv.
Årsaken kan være at slike nett er robuste mot tilfeldige feil, og at naturen derfor har en tendens til å skape denne type nett.

For cybersikkerhet er dette både interessant og viktig. Det åpenbare er at vi må identifisere og beskytte super-nodene. Det høres kanskje enkelt ut, men i store komplekse nett kan det være vanskelig å identifisere hvilke noder dette faktisk er. For en virksomhet, eller for vår nasjonale kritiske infrastruktur for den del, må vi forstå dyamikken i hvordan nettet brukes. Denne kan endre seg over tid, og nye super-noder kan oppstå.

God situasjonsforståelse er en forutsetning også for dette.

Det som er mindre åpenbart men likevel noe vi blir tvunget til å forholde oss til, er når et skalar-fritt nett påvirker et annet. Jeg brukte Stephen Fry som eksempel på en super-node for twitter. Han har i skrivende stund over 10 millioner følgere. Fra tid til annen nevner han noe han har sett eller lest, og legger ved en link til websiden.


Hva skjer når hans twitter-følgere klikker på linken? Nettsidene han har linket til har ved flere anledninger blitt slått ut når flere millioner mennesker besøker siden innenfor en kort tidsperiode.


De som eier disse nettstedene har naturligvis ikke forberedt seg på at den "skalar-frie effekten" fra twitter skulle ramme dem på denne måten.

Er du forberedt?


Komplekse Adaptive Systemer
Cyber Situasjonsforståelse

søndag 14. juni 2015

Uformelt høringssvar til den nye sikkerhetsloven

Jeg ser til min store overraskelse at jeg ikke har blitt bedt om å gi et høringssvar til den nye sikkerhetsloven :) Så dette må vel anses å være et uinvitert og høyst uformelt svar.

Regjeringen har altså sendt ut på høring endringer til sikkerhetsloven (Lov om forebyggende sikkerhetstjeneste). Høringsfristen er satt til 20. august 2015.

Til min store glede ser jeg at den skal inneholde bestemmelser om sikkerhetsmessig overvåking. Enhver virksomhet som vil beskytte seg mot digitale trusler må ha en eller annen form for overvåking. Det er kun slik at vi kan oppdage om de forebyggende tiltakene virker, og om noen har klart å komme seg forbi sikkerhetstiltakene.



Begreper
Det hele begynner litt dårlig idet de blander sammen "trussel" og "våpen". Dette er ikke så vanskelig. En trussel er den person/gruppe/stat som vil deg vondt. Ondsinnet kode er et "våpen", eller "verktøy" om du vil, som de bruker for å oppnå det de vil. Det er forferdelig mye rot med begrepsbruken innenfor dette, så slike tabber bør man ikke gjøre.

Lovhjemmel
Jeg synes at tanken om å lage en lovhjemmel for sikkerhetsmessig overvåking av IKT-systemer er god, men jeg synes det er en dårlig idé at det skal skje i sikkerhetsloven. Sikkerhetsloven omfatter selvfølgelig ikke alle IKT-systemer i norske virksomheter, så en kan jo havne i en situasjon hvor en (liten) andel av en virksomhet sine systemer har en slik lovhjemmel, mens de andre ikke har det. Det kan fort skape en situasjon som gjør det vanskelig for en virksomhet å gjøre dette riktig, dersom et dataangrep spenner flere ulike systemer. For Forsvaret, som jeg kjenner godt, vil det være en utfordring.

Jeg synes det er interessant å se at de mener at arbeidsgivers kontrolltiltak er en tilstrekkelig lovhjemmel (så lenge det skjer i overenskomst med arbeidsmiljøloven og personopplysningsloven). Andre jurister har nemlig hevdet at arbeidsgivers rett til å kontrollere virksomheten IKKE er en lovhjemmel slik høringsforslaget sier. Det er derimot en sedvanerett. For å skaffe seg nødvendig lovhjemmel har disse andre juristene derfor vurdert at det må inngås en avtale mellom eier av datasystemet og den som bruker det. Med andre ord: Et informert samtykke.
Hvem som har rett vet jeg ikke. Jeg er ikke jurist. Om det er tilstrekkelig med arbeidsgivers rett til å kontrollere sin virksomhet, så blir det i så fall mye enklere for virksomhetene å drive med sikkerhetsmessig overvåking.

Sikkerhetsovervåking og automatiserte prosesser
Men så rakner det litt. Departementet utdyper hva de mener om sikkerhetsmessig overvåking, og skriver

Departementet presiserer at slik overvåking ikke må utføres av personell. Det bør tilstrebes at overvåkingen skjer ved hjelp av automatiserte prosesser.

Stopp litt og tenk gjennom hvordan sikkerhetsmessig overvåking faktisk skjer.
En har store mengder logg-data fra en enheter og systemer, en har systemer som er laget for overvåkingsformål, og en har analytikere med kunnskap og en verktøykasse.
Når en hendelse "overvåkes" så begynner det gjerne med at en analytiker ser noe og tenker "hmmmm". Så henter han data fra en rekke logg-kilder. Der finner han noe som gjør at han starter en pakkedump av en spesiell type nettverkstrafikk. Analysene av datatrafikken gjør at han henter noen filer fra en klient. Malware analyse gjør at han endrer på pakke-dump filteret for trusselen er ute etter noen helt spesielle filer. Han sjekker flere logger. Reverse-engineerer mer ondsinnet kode. Scanner for sårbarheter i nettet sitt, lager en kode-snutt som ser etter en spesiell fil i nettverkstrafikk og på serverne.

Dette er et tenkt, men helt realistisk, eksempel. Det som er felles for enhver analyse av sikkerhetshendelser er å finne ut fakta om hva som har skjedd. Skadene skal begrenses, og en vil jo gjerne unngå at dette skjer igjen. Noen ganger har en ansatt brutt betingelsene for bruken av systemet, og han kan være en del av årsaksbildet. Kanskje det må opplæringstiltak til, eller kanskje en disiplinæroppfølging. Dersom det er en kriminell handling utført av noen utenfor virksomheten, bør saken anmeldes til politiet. Alt dette krever at vi vet hva som faktisk har skjedd, og at vi har et informasjonsgrunnlag som er godt nok til å ta beslutninger på.

Ingen automatiserte prosesser er gode nok!!

Det er en alvorlig svakhet, og en betydelig fare for den enkeltes rettssikkerhet dersom det ikke er mennesker som samler inn og vurderer informasjonen. En automatisert prosess ser som regel kun en liten del av et hendelsesforløp, og jeg kan lett se for meg at en kan trekke feile slutninger på bakgrunn av det. Konsekvensene er at vi ikke egentlig vet hva som har skjedd, eller hvorfor, og at vi ikke klarer å begrense skadene eller forhindre at det skjer igjen. Enda verre er det at de automatiserte prosessene kan komme til å kaste mistanke mot personer som faktisk ikke har gjort noe galt.

For å sikre den best mulige håndtering av sikkerhetshendelsen, og for å ivareta den enkeltes rettssikkerhet best mulig, bør loven faktisk kreve at overvåking skal skje av personell. Det bør videre stilles krav til kompetanse for personellet og til måten de skal utføre overvåkingen. Departementet beskriver noen slike krav, og det er bra. Hvis de endrer §13a første ledd, og kutter ut "fortrinnsvis ved bruk av automatisert systemovervåking", så blir det mye bedre.

Avanserte utholdende trusler?
APT, Advanced Persistant Threats (APT) er et begrep som har vært brukt av sikkerhetsindustrien de senere år. Det har blitt en slags fellesbetegnelse på "kriminelle og nasjoner som har noe å fare med", eller trusler som gjennomfører "målrettede angrep". For en nasjons kritiske infrastruktur (som Sikkerhetsloven primært er til for) så er vel alle relevante trusler både avanserte og utholdende. En annen nasjons etterretningstjeneste eller militære styrker vil jo alltid være slik. Det er et unødvendig og forvirrende begrep fordi det finnes så mange ulike forklaringer på hva "APT" er.

Her er departementets forslag til ny tekst:

§ 13 a. Sikkerhetsmessig overvåking av godkjente informasjonssystemer

Den enkelte virksomhet skal kontinuerlig overvåke godkjente informasjonssystem for sikkerhetstruende hendelser, fortrinnsvis ved bruk av automatisert systemovervåking. Sikkerhetsrelevante hendelser skal registreres. 


Når informasjon utveksles mellom systemer, på tvers av autorisasjonsskiller, eller til bærbare lagringsmedier, skal informasjonen som utveksles registreres og lagres. 

Der flere virksomheter er tilknyttet samme informasjonssystem, kan en virksomhet etter avtale med de andre virksomhetene forestå overvåking og registrering i henhold til første og andre ledd på vegne av den ansvarlige virksomhet. 

Med mindre annet er bestemt, skal informasjon registrert etter første ledd lagres i fem år.
Informasjon som nevnt i første og andre ledd skal kun benyttes til formål om å håndtere sikkerhetstruende hendelser. 

Den enkelte virksomhet skal påse at autoriserte brukere av informasjonssystemer som overvåkes i henhold til denne bestemmelse får informasjon om formålet med behandlingen, om de tiltak som er iverksatt, om informasjonen vil bli utlevert, og eventuelt hvem som er mottaker.
Kongen kan gi nærmere bestemmelser om sikkerhetsmessig overvåking av informasjonssystemer, herunder om hvilke typer data som kan eller skal registreres og lagres, lagringstid for registrerte data, hvem som skal kunne gis tilgang til de lagrede data og hvordan tilgang skal gis.


Les også hva tidligere sjef Cyberforsvaret, Roar Sundseth, skriver om høringsforslaget:
http://www.watchcom.no/index.php?v=21b2