Smart home assistants som for eksempel Amazon Alexa, Google Assistant eller Appels Siri bliver mere og mere udbredte i hjemmene hver eneste dag. Måske er det også almindeligt for din familie at have sådan en i jeres hjem?
Disse devices lytter til stemmekommandoer og reagerer på dem ved at bruge deres internetforbindelse.
Men vi tænker måske ikke over, at det åbner for nogle sikkerhedsproblemer, når en smart home assistant får en kommando, henter data fra nettet, giver besked til brugere om opkald/beskeder, eller bruges til at kontrollere andre IOT-devices i hjemmet.
I er nu kommet på en mission for at gøre jeres hjem mere sikre ved, at begrænse truslerne mod smart home assistants. Med udgangspunkt i to modeller (datafow diagram og STRIDE som præsenteres senere) skal I undersøge, hvordan man identifcerer sårbarheder i systemerne og derved måden, hvorpå de kan hackes. Ved at identifcere sårbarhederne, vil I også være i stand til at komme med forslag til, hvordan sikkerheden i systemerne kan øges.
I skal lave en trusselsmodellering af en smart home assistant. Det kan virke som en stor opgave. Vi har derfor brudt trusselsmodelleringen lidt op, for at gøre det lettere for jer. For at løse jeres mission skal I besvare de følgende 5 trin, som samlet set udgør jeres trusselsmodellering.
I skal udarbejder et STRIDE-framework og et dataflow-diagram til at understøtte jeres besvarelse. De to modeller er beskrevet til sidst i missionen.
Trusselsmodellering handler kort fortalt om at identifcere sårbarheder i et system og dermed også uønskede hændelser, så man eksempelvis som udvikler af et stykke software kan være bedre forberedt. Formålene med en trusselsmodellering er at:
Forstå de sikkerhedsmål, man søger at realisere
Forstå det system, man forsøger at sikre
Forstå de trusselsaktører, man står overfor
Forstå de teknikker, trusselsaktørerne benytter (angrebsvektorer)
Forstå de sårbarheder, angriberne udnytter
Forstå, hvilke modforholdsregler, der er effektive mod disse angreb
Trussel. En trussel er en potentiel uønsket begivenhed eller hændelse, der kan skade eller kompromittere et aktiv eller mål. Den kan være af ondsindet natur.
Angreb (eller udnytelse). Et angreb er en handling, der udnytter en eller fere sårbarheder for at gennemføre en trussel.
Sårbarhed. En sårbarhed er en svaghed, som muliggør et angreb, i en del af et system. Sårbarheder kan fndes i niveauet for netværk, host eller applikation og inkluderer operationelle praksisser.
Modforholdsregler. En modforholdsregel tager fat på en sårbarhed for at reducere muligheden for angreb eller reducere et angrebs påvirkning. En modforholdsregel forholder sig ikke direkte til en trussel. I stedet tager den fat på de faktorer, der definerer truslen. Modforholdsregler spænder fra at forbedre en applikations design eller kode til at forbedre en operationel praksis.
Aktiv. Et aktiv er en ressource, der har værdi. Det varierer efter perspektiv. For en virksomhed kan et aktiv være informationer såsom kundedata. Eller det kan være mere uhåndgribeligt, som fx virksomhedens om dømme. Det kan også være muligheden for at misbruge virksomhedens applikation til at få uautoriseret adgang til data, administrative funktioner eller lignende.
Der er fem trin i en trusselsmodellering, som du kan se uddybet i det følgende.
DEFINER EN SYSTEMMODEL
Identificer jeres smart home assistentens’ system komponenter og interaktioner mellem dem. Hvad kan systemet, hvem bruger det og hvordan?
BESKRIV SIKKERHEDSMÅL
Beskriv de overordnede sikkerhedsmål for systemet som helhed
Beskriv sikkerhedsmålet for de enkelte komponen ter, som systemet består af
TEGN ET DATAFLOW-DIAGRAM (SE MODEL 1)
Dataflow-diagrammet beskriver, hvordan data bevæger sig gennem et netværk.
Tegn et diagram, der beskriver alle datastrømme i jeres smart home assistent.
BENYT STRIDE TIL AT BESKRIVE TRUSLER FOR HVERT ELEMENT (SE MODEL 2)
Trusselsvurderingen bør indeholde en linje for hvert element (dvs. systemkomponent) som I identifcerede i trin 1.
For alle krydser bør der være en beskrivelse af den specifkke trussel
Fx hvorfor er spoofing et problem for bluetooth-parring i en Soundboks? Se en mere detalje ret beskrivelse af STRIDE-modellen nedenfor.
IDENTIFICER KENDTE SÅRBARHEDER FOR ALLE KOMPONENTER, SYSTEMER OG TEKNOLOGIER
Analysér systemet for sårbarheder der kan udnyttes.
Det kan være godt at spørge sig selv, hvad der sker med data, når de kommer til et system. Om de omregnes eller konverteres på en eller anden måde, om de gemmes i en database og, hvordan data sendes videre til et nyt system eller til et andet sted i systemet.
Et dataflow-diagram viser, hvordan data strømmer igennem et system eller igennem en række af forskellige systemer. Det bruges ofte i softwareudvikling til at give et overblik over, hvor data er, hvornår og med hvilket formål.
I kan bruge en enkelt proces til at illustrere dataflow i et system, fx en bruger spørger efter vejret i dag.
Dataflow-diagrammet viser blandt andet, hvor data kommer fra, hvor de går hen, hvor de bliver gemt og hvor de måske transformeres, eksempelvis fra stemme til skrift. Følgende symboler kan bruges i diagrammet:
Man kan starte med et overordnet billede af, hvad der sker med data for at forstå nogle af de eksterne kilder. Derefter kan man dykke et skridt dybere for at forstå, hvad der sker på et detaljeret niveau
STRIDE-modellen er et nyttigt værktøj, som kan hjælpe med at klassifcere trusler. Modellen er oprindeligt udviklet for at hjælpe sikkerhedsingeniører.
STRIDE er et akronym for seks trusselskategorier:
Spoofing: agenter udgiver sig for at være en anden
Tampering: uautoriserede ændringer af systemer eller data
Repudiaton: agenter nægter at have sendt en besked eller udført en handling
Informaton leakage: fortrolighed brydes, fordi information lækkes til udenforstående
Denial of Service (DoS): systemer eller data gøres utilgængelige for autoriserede brugere
Elevaton of Privilege: agenter opnår højere privilegier, f.eks. administratorrettigheder
Her er et eksempel på, hvordan man bruger STRIDE:
STRIDE tager udgangspunkt i de elementer, man har identificeret i dataflow-diagrammet. Vi har indsat følgende element ”#1 Parring mellem telefon og Soundboks” i STRIDE-modellen nedenfor.
S: Spoofing kan tillade at uautoriserede telefoner parres med Soundboks eller at en telefon parres med uautoriseret Soundboks.
D: Spoofing tillader direkte DoS ved at slukke for boksen, skrue ned for lyden, spille noget helt andet eller afbryde parring. - Lav jeres eget STRIDE skema og start med at indsætte de elementer i identificerede i trin 1. Herefter kan I bruge modellen til, at hjælpe med at skabe et overblik over trusler og dermed også eventuelle sårbarheder jeres system måtte have.
Når I har lavet alle punkterne i trusselsmodelleringen har I gennemført missionen.
JERES PRÆSENTATION
I skal forberede en præsentation af jeres analyse, hvor I redegør for missionen, fortæller om jeres proces med at lave jeres trusselsmodellering samt præsentere selve trusselsmodelleringen. I præsentationen skal I:
Redegøre for jeres mission og hvad I har valgt at fokusere på
Fortælle, hvordan I kom frem til jeres endelige trusselsmodellering
Præsentere jeres modellering (gerne med billeder, video, skærmoptagelse m.m.)
Fortælle, hvordan I har anvendt modeller/analyse redskaber (Stride-modellen og dataflow-diagrammen)
Præsentationen skal have karakter af et kort præsentation og må max tage 5 minutter
Brug Screencast-O-Matic eller Power Points optagefunktion til dette.
Deadlines for aflevering af præsentation af cybermission 3: 14.30
I skal aflevere jeres præsentation (screencast). Husk at vise både jeres Stride model og Dataflow diagram i jeres screencast!
I kan optage med ScreenPal eller Power Points optagefunktion.