Trusted Computing ur datasäkerhetssynpunkt. Gunnar Söderman <di98gsn@cs.umu.se>



Relevanta dokument
Metoder för datasäkerhet. Vad handlar en sådan kurs om???

Krypteringteknologier. Sidorna ( ) i boken

Din manual NOKIA C111

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det

Föreläsning 3. Datorkunskap 50p Marcus Weiderstål Bromma Gymnasium

Kryptering HEMLIG SKRIFT SUBSTITUTION STEGANOGRAFI KRYPTOGRAFI

Din manual MCAFEE TOTAL PROTECTION

Säkerhet Användarhandbok

Komma igång med Eventor

Internetsäkerhet. banktjänster. September 2007

Gesäll provet Internetprogrammering I. Författare: Henrik Fridström. Personnummer: Skola: DSV

Utredning om införande av digital nämndhantering för socialnämnden

Tillsyn enligt personuppgiftslagen (1998:204) personuppgiftsbehandling i anslutning till Pliktverkets e-tjänst för lämplighetsundersökning

Anmälan till Swedbanks kontoregister via e-legitimation

Enkätundersökning med personal, före arbete med digitalt stöd i hemmet

ASSA RX. Webbaserat passersystem för dig som jobbar med annat. ASSA ABLOY, the global leader in door opening solutions. 1

Antivirus Pro Snabbguide

Tillsyn enligt personuppgiftslagen (1998:204) Behandling av känsliga personuppgifter i mobila enheter

En handledning för studerande på Högskolan Kristianstad

Säkerhet Användarhandbok

Liten introduktion till akademiskt arbete

Säkerhet Användarhandbok

OFFICIELLA REGLER. 4. Gå in på hemsidan och klicka på länken "Delta".

POLISMYNDIGHETEN I IT-POLICY 1 (5) ÖSTERGÖTLANDS LÄN Förvaltningsavdelningen

Net id OEM Användarhandbok för Windows

Dina surfvanor kartläggs och lämnas ut

AVTAL 1 (6) 2 Avtalstid Avtalet gäller från och med utdelning till och med den 1 juni 2016.

Instruktioner för Brf Siljans elektroniska låssystem

Att skriva Hur utformar man en Social berättelse? Lathund för hur en Social berättelse kan skrivas

MOLNET. Säkerhetskrav för personuppgifter

Smart låsning utan nyckel.

Tillsyn enligt kreditupplysningslagen (1973:1173) och personuppgiftslagen (1998:204)

Säkerhet. Säker kommunikation - Nivå. Secure . Alice wants to send secret message, m, to Bob.

Verktyg för Achievers

FÖRKORTA DIN VÄG PÅ BANAN

ALLMÄNNA ANVÄNDARVILLKOR FÖR

Din guide till IP RFID. Intertex Nu ännu starkare säkerhet för SIP. Snom - marknadens säkraste IP-telefon. Ur innehållet TALK TELECOM

IT-verktyg på Igelboda skola & förskola - sep 2013

INTEGRITET I COMMUNITY-TJÄNSTER PÅ DATANÄTET, VAD ÄR DET?

Elektroniskt informationsutbyte mellan arbetsgivare och Försäkringskassan. Information om filöverföring

EIT060 Datasäkerhet - Projekt 2. Jacob Ferm, dt08jf0 Johan Paulsson, dt08jp8 Erik Söderqvist, dt08es8 Magnus Johansson, dt08mj9 26 februari 2011

Datorn ska alltid tas med hem efter skoldagens slut och tas med fulladdad till skolan varje dag.

AMERICAN EXPRESS. Webbplats för affärspartners regler och villkor

Säkerhetsåtgärder vid kameraövervakning

BAKTAL, SKVALLER OCH FÖRTAL

ZA4981. Flash Eurobarometer 250 (Confidence in Information society) Country Specific Questionnaire Sweden

Försöksnomineringssystem 2013

256bit Security AB Offentligt dokument

7 steg från lagom till världsklass - 7 tips som berikar Ditt liv

Användarhandbok för e-curia

Wilhelm Käll. Rapport Användarsupport

Modul 3 Föreläsningsinnehåll

Info till IT - dioevidence Nationell uppföljning inom sociala områden

Planeringsspelets mysterier, del 1

1. Bekräftelsebehov eller självacceptans

TIPSLISTAN om trans på lajv

Administration generellt

Programmering av stegmotorer ett miniprojekt i samarbete med Svensk Maskinprovning

PTS remissvar på betänkandet om E-legitimationsnämnd och e-legitimationer i Sverige

ESET NOD32 ANTIVIRUS 8

Välkommen som Mystery Shopper hos Servicemind A/S

Öga för öga, Tand för tand

Coridendro ett verktyg för att grafiskt åskådliggöra incidensen av malignt melanom inom olika släkter

Instruktion för informationssäkerhetsklassning

Kom igång med din SMART Board. Det praktiska

Kontrakt för lån av personlig dator på Ystad Gymnasium

ANVÄNDARAVTAL PARTER AVTALSTID ANVÄNDARENS ÅTAGANDEN

ANBUDSFÖRFRÅGAN. Människa-Datorinteraktion, översiktskurs

Instruktion för e-post E-postinstruktion Beslutad

Dok. nr: SLLIT-ANS Beskrivning för registrering inom ATj

Manual C3 BMS för Android-telefoner

Att överbrygga den digitala klyftan

E-post för nybörjare

Barns medverkan i den sociala barnavården hur lyssnar vi till och informerar barn. Lyssna på barnen

Att ge feedback. Detta är ett verktyg för dig som:

Case: Kundservice. Vad är det som idag kan kallas service? Madeleine Lindqvist

Användarmanual HOIF.org

SIS Capture Station. IIIIII Användarhandbok

WINDOWS 8.1. Grunder

5 vanliga misstag som chefer gör

Tack för att du använder Vanderbilts webbplats. Vi vill nedan upplysa dig som användare av Vanderbilts webbplats om våra användarvillkor.

IT-policy Scenkonst Västernorrland AB

Föreläsning 3.1: Datastrukturer, en översikt

Lagring i molnet. Dokumenthantering i högskolans Office365 ur ett offentlighetsperspektiv

VIDEODAGBOKEN. Individuellt Mjukvaruutvecklingsprojekt. En dagbok i videoform online. Robert Forsgren (rf222ce) UD

Lathund. Skolverkets behörighetssystem för e-tjänster. Rollen huvudman

E-legitimationer. Jonas Wiman. LKDATA Linköpings Kommun.

Omarbetade funktioner i NyA

The National Institute of Child Health and Human Development (NICHD) Protocol: Intervjuguide

SLALOMINGÅNGAR hur svårt kan det vara?

Så här fungerar registreringen i Malmö stads Odlingsslottskö

Hitta kunder som frilansare

Tunadalskyrkan Den kämpande tron Mark 14:3-9

Chefens sju dödssynder - undvik dem och lyckas som ledare!

Manual Jourläkarschema Närhälsan V7 - Version 1.0

Introduktion till protokoll för nätverkssäkerhet

Grunderna kring helmäskning

Installationsanvisningar

Att bygga VPN. Agenda. Kenneth Löfstrand, IP-Solutions AB. Olika VPN scenarios. IPsec LAN - LAN. IPsec host - host SSH

Får vi vara trygga? Praktiknära forskning inom ämnet idrott och hälsa Rapport nr. 5:2009

Transkript:

Trusted Computing ur datasäkerhetssynpunkt Gunnar Söderman <di98gsn@cs.umu.se> 11 augusti 2005

Referencing To reference this master s thesis the following BIBTEX entry might be helpful. @Mastersthesis{Södeman:ngscb, author = "Gunnar Söderman", title = "Trusted Computing ur datasäkerhetssynpunkt", school = "University of Umeå", year = "2005", month = "aug 11", url = "http://www.cs.umu.se/~di98gsn/thesis/" }

Sammanfattning Trusted Computing (TC) har sedan år 2002 varit ett stort samtalsämne inom datasäkerhetsområdet. Denna rapport försöker bringa klarhet i nyttan för ett företag att använda Microsofts implementation av TC, kallad Next Generation Secure Computing Base (NGSCB). Rapporten ger en översikt av säkerhetsområdet och specifikationen av Trusted Platform Module. Vidare utreds hur NGSCB fungerar och hur det lever upp till den standard som Trusted Computing Group fastslagit. NGSCB utvärderas dels ur en teknisk men även ur en ekonomisk synvinkel. Slutligen diskuteras några av de olika åsikterna runt NGSCB och TC. Abstract Since year 2002 Trusted Computing (TC) has been a topic in computer security. This thesis tries to explore the subject of the usefulness of Microsofts implementation of TC, called Next Generation Secure Computing Base (NGSCB). An overview of the computer security area is given together with an overview of the Trusted Platform Module. The report proceeds with an overview of NGSCB in relation to the standard given by Trusted Computing Group. An analysis of NGSCB from a technical and economical point of view is performed. The report is concluded by a summary of the opinions regarding NGSCB and TC.

Innehåll 1 Inledning 1 1.1 Förkunskaper............................ 3 1.2 Mål................................. 3 1.3 Upplägg............................... 3 2 Säkerhet 5 2.1 Tillgänglighet............................ 12 2.2 Konfidentialitet........................... 12 2.3 Integritet............................... 12 2.4 Tillit................................. 13 2.5 Hotbilder.............................. 14 2.6 Identifiering............................. 15 2.7 Stark identifiering.......................... 16 2.7.1 Smartcards......................... 17 2.7.2 Biometriska system..................... 17 2.8 Kryptering.............................. 20 2.9 Slumptalsgenerering........................ 24 2.10 Hashning.............................. 24 2.11 Public Key Infrastructure...................... 25 2.12 Mjukvarans och hårdvarans roll i ett system............ 26 v

vi INNEHÅLL 2.13 Trusted Hardware och Trusted Computing............. 27 2.14 Trusted Computing Platform Alliance............... 29 3 Next Generation Secure Computing Base 33 3.1 Hårdvarukrav i NGSCB....................... 36 3.2 Kompatibilitet............................ 38 3.3 System-system kommunikation................... 38 3.4 NGSCB och TCPA......................... 39 3.5 NGSCB och öppna standarder................... 40 3.6 Systemets svagheter......................... 40 3.7 Ekonomiska aspekter........................ 42 4 Alternativ till NGSCB 45 4.1 Computer Integrity System..................... 46 4.2 Hårdvarubrandväggar........................ 48 4.3 TCPA tillsammans med GPL-plattformar............. 50 5 Diskussion 51 5.1 Åsikter runt NGSCB och TCPA.................. 53 5.2 Alternativa lösningar till NGSCB.................. 55 6 Sammanfattning 57 Ordlista 59 Referenser 63 A Phishing 67

Figurer 2.1 Man-in-the-middle attack...................... 10 2.2 Olika typer av kryptering...................... 22 2.3 En schematisk bild över TCPA.................... 30 3.1 En schematisk bild över NGSCB.................. 34 3.2 Ett blockdiadram över ett moderkort med en TPM......... 37 4.1 Ett diagram över certifikatdistributionen i CIS............ 47 5.1 En ljudfil från WinXP........................ 54 vii

Tack till Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oumbärligt stöd under arbetets gång. Vidare vill jag tacka Ola Ågren, David Jonsson och Daniel Jonsson för deras ovärderliga råd, insikter och diskussioner. Slutligen vill jag tacka alla på Föreningssparbanken IT, Umeå som hjälpt mig under tiden som arbetet fortlöpt. ix

1 Inledning Datasäkerhet är ett vitt begrepp med många ingående delar: Operativsystem, applikationer, hårdvara samt människorna som hanterar systemen. Fokus i säkerhet ligger enligt Anderson och Bishop kring integritet, konfidentialitet och tillgänglighet [2, 6]. Balansen mellan dessa är ofta unik för varje system, användningsområde och situation. Gemensamt för alla säkerhetsmodeller är dock att de måste komma in så tidigt som möjligt i bilden. För att en säkerhetsmodell ska vara effektiv krävs att den finns med redan i designstadiet av en applikation eller ett system [2]. På program eller systemnivå måste den appliceras så tidigt som möjligt, gärna före uppstart. Det är välkänt att den svagaste länken i kedjan utgör det största hotet mot ett företags informations- och systemintegritet [2, 6, 8]. Ofta beror bristfällig säkerhet på svagheter i de applikationer som körs på ett företag. Säkerhetsbrister i operativsystemet är vanliga, ofta beror de på rena programvarufel men ibland på bristande design. Det finns flera säkerhetslösningar men förhållandevis få system där säkerhet inkluderats redan i designstadiet. Detta examensarbete behandlar Trusted Computing (TC) och Microsofts Next Generation Computing Base (NGSCB), tidigare kallad Palladium. NGSCB är ett initiativ som delvis avser att höja säkerheten hos Microsofts operativsystem. Systemet är menat att bli en del av säkerhetslösningen i Windows Longhorn. Rapporten har till syfte att utröna om NGSCB ger några säkerhetsfördelar gentemot tidigare existerande lösningar eller om det på ett billigare sätt är möjligt att skapa ett likvärdigt skydd utan denna lösning. Under tiden som Microsofts arbete med NGSCB fortskridit har systemet kritiserats hårt från många håll. I vissa fall har detta medfört förändringar i specifikationen av NGSCB, enligt Kuhlmann [18]. Systemets uttalade mål är att förstärka möjligheterna till stark identifiering, skydd av känslig data samt skydd av upphovsrättsskyddat material. Kryptering är den främsta metoden som används för att uppnå dessa mål. NGSCB delar opera- 1

2 KAPITEL 1. INLEDNING tivsystemet i två delar en betrodd och en icke betrodd del. Den betrodda delen fungerar som ett eget operativsystem med en egen exekveringsstack medan den icke betrodda delen lämnas i stort sett oförändrad. De mål man försöker uppnå är stark processisolering, hårddiskryptering, säker körning samt säkra vägar till användaren. Genom att låt vissa processer köra i en egen del av minnet vilken är krypterad, skild och dold från övriga delar av systemet hoppas man skapa en bas för attestering av processer samt möjligheter till krypterad I/O. Hårddiskkrypteringen är främst menad att användas till data som är känslig ur NGSCBs synpunkt. Syftet är alltså inte att kryptera all data på en hårddisk. Krypterade tangentbord och möss används för att systemet ska kunna säkerställa att data från en lokal användare kommer från de lokala I/O-enheterna. NGSCB skyddar inte mot virus eller intrångsförsök, det kommer dock att erbjuda en metod för att se till att installerade program utför vad de är tänkta att göra. I ett företag skulle ett sådant system kunna användas för att hjälpa till att säkra noderna, det vill säga personalens terminaler. Utanför företagets väggar skulle systemet kunna användas för att ytterligare förstärka identifiering av kunden. Om en kund till exempel loggar in på sin banks hemsida kan banken använda systemet för att hjälpa till med stark autenticering av kunden, så länge denne befinner sig vid sin hemdator. Viktigt i sammanhanget är att NGSCB är ett valfritt system som levereras inaktiverat i grundinställningarna (så kallat Opt-in). I nuläget verkar det dock som om program kan kräva att NGSCB är aktiverat för att viss funktionalitet ska vara tillgänglig. En kritik som ofta kommer fram på olika forum är att NGSCB bara är en ny version av Microsofts Digital Rights Management (DRM). Kritiken tillbakavisas av Microsoft. NGSCB kan nästan kallas ett helhetsbegrepp, det innefattar allt från hårdvara till mjukvaran. Idén är att om säkerhet ska vara effektiv måste den finnas på ett så tidigt stadium som möjligt redan vid start av hårdvaran. Microsofts produkter har historiskt sett haft stor genomslagskraft, trots att de ofta varit hårt kritiserade. NGSCB har fått båda saklig och osaklig kritik. Tekniken har kritiserats ur ett tekniskt så väl som ett ekonomiskt perspektiv, men även ur ett socialvetenskapligt och ett jurdiskt perspektiv [3, 5, 7, 11, 38]. Denna rapport kommer att ta upp en del av denna kritik, även om det inte är dess huvudsakliga inriktning. Rapporten vill framför allt utreda NGSCBs betydelse för större företag. I de flesta exempel används en bank som utgångspunkt.

1.1. FÖRKUNSKAPER 3 1.1 Förkunskaper Rapporten riktar sig till programmerare, studenter och systemtekniker som inte är helt insatta i NGSCB eller TC. Rapporten är skriven under antagandet att läsaren har grundläggande kunskap om hur ett datorsystem fungerar och hur dess komponenter samverkar. Läsaren bör även ha en del grundläggande kännedom om brandväggar. För kryptologiavsnittet förutsätts grundläggande kunskaper inom diskret matematik och algebra. 1.2 Mål Rapportens mål är att beskriva Next Generation Secure Computing Base, Trusted Computing samt kringliggande tekniker med utgångspunkt i datasäkerhet. Rapporten vill även utreda NGSCBs betydelse för större företag. 1.3 Upplägg Avsnitt 2 börjar med en allmän översikt om området datasäkerhet samt en introduktion till begreppet tillit (eng. trust) i datasäkerhetssammanhang. Säkerhetsavsnittet tar även upp tre exempel på attacker. Detta för att kunna knyta samman begreppen hotbild och tillit samt för att ge stöd åt slutdiskussionen. Rapporten fortsätter sedan med en teknisk översikt över TCPA. Avsnitt 3 diskuterar NGSCB och är avsett att kunna läsas fristående från övriga delar av rapporten så länge läsaren har förståelse för de delar som tas upp i avsnitt 2. För att befästa förståelsen av NGSCB och för att visa att inte ens detta initiativ är felfritt kommer en del svagheter att tas upp. Dessa svagheter förekommer under utvecklingen av NGSCB och kan när som helst korrigeras, de är dock intressanta ur ett konceptuellt perspektiv. En viktig fråga framförallt för företag är kompatibilitet, både mellan olika system men även med gamla program. Avsnittet avser att klargöra hur NGSCB är tänkt att fungera och det tar även upp en del av systemets möjligheter och begränsningar. Eftersom datasäkerhet ofta är en ekonomisk fråga diskuteras detta i avsnitt 3.7. Avsnitt 4 behandlar en del befintliga säkerhetslösningar. Avsnittet tar framför allt upp en del lösningar som finns idag och hur dessa fungerar. Ett försök görs även att designa ett system vilket löser en del av de funktioner vilka NGSCB säger sig

4 KAPITEL 1. INLEDNING lösa. Sist i rapporten återfinns en ordlista med översättningar av en del engelska uttryck samt förklaringar av samtliga ej standardiserade förkortningar.

2 Säkerhet Säkerhet handlar om att skydda någons intressen utan att begränsa dennes handlingsförmåga på ett sådant sätt att denne inte kan utföra sitt arbete. De tre hörnstenarna är integritet, konfidentialitet och tillgänglighet [6]. För att säkerhet ska fungera i en applikation måste det finnas som ett funktionellt krav redan från början. Det är lika svårt att designa in säkerhet i efterhand som att designa in prestanda i efterhand. Om säkerhet inte är en del av designmålen från början kan det vara lättare att designa om applikationen från början än att försöka lägga på det i efterhand. Enligt Bishop kan en applikation som är dålig ur säkerhetssynpunkt därmed aldrig bli riktigt bra ur detta hänseende [6]. Att tillgänglighet relaterar till säkerhet är inte alltid självklart. Relationen blir dock klar om man betänker att en anställd behöver spendera tid på att gallra bort oönskad e-post (spam), kostnaden för ett företag blir därmed reell. Tomas Ögren, systemadministratör på Umeå Universitet uttrycker det väl med orden [47]: Något som hindrar mig från att göra det jag borde kunna göra kan klassas som ett säkerhetsproblem. För att tydliggöra problematiken redovisas nedan ett antal hot, attacker och problem. De tre vanligaste hoten mot ett system är malware, spam och intrångsförsök. Malware är vad som ibland kallas illasinnade program. Uttrycket innefattar virus, trojanska hästar, maskar och program specifikt framtagna för att kompromettera ett systems integritet, konfidentialitet eller tillgänglighet. Till malware räknas även de program som gör sådant de inte ska göra. Detta innefattar program vilka innehåller funktionalititet som avsiktligt eller oavsiktligt inte redovisas. Vidare kan sägas att malware är program vilka kan försättas i ett sådant tillstånd att de gör något som de inte ska göra. Vanligen rör det sig om programfel till exempel buggar, men det kan också vara att ett program används på ett sätt som konstruktören inte hade i åtanke när programmet blev designat. Med något som ett program inte 5

6 KAPITEL 2. SÄKERHET ska göra menas i det här fallet att programmet gör något som komprometterar ett systems integritet, konfidentialitet eller tillgänglighet. Ett program kan äventyra ett systems integritet genom att det till exempel av misstag skriver över ett systemprograms minnesbuffer. Samma fel kan skapa en situation där systemets integritet äventyras genom att systemet kraschar. Om ett systems konfidentialitet äventyras sker detta oftast genom användarfel men det händer att den programvara som används för att surfa på internet skapar situationer där ett intrång kan ske. [2] Spam har tidigare inte ansetts som en säkerhetsrisk i sig eftersom det funnits i en ganska begränsad utsträckning. När mängden oönskad e-post ökade under 2000- talet började virusföretag som bland andra Norton att inkludera spam-filter i sina produktsviter. Ett par problem med spam är att det kan belasta e-postservrar hårt och att användarna tvingas att ägna tid och irritation åt att ta hand om den. Spam blir därmed även en kostnad för företag. Phishing-attacker via e-post har med tiden blivit allt vanligare. Phishing har ofta syftet att lura en legitim kund på till exempel en bank att uppge persondata och/eller kreditkortsuppgifter (Se appendix A för ett exempel). Attacken kan genomföras på ett flertal sätt men ett är att den illvilliga parten skickar ett e-post till kunden vid banken med ett meddelande om till exempel: Det har uppdagats problem med ditt kontokort, logga in hos banken så hjälper vi dig att rätta till det. Kunden loggar in på vad han/hon tror är banken genom att följa den länk som är bifogad i e-postmeddelandet. Kunden kommer då till en sida som ser ut exakt som bankens hemsida men i själva verket är en sida administrerad av hackern. Här ombeds kunden att lämna en rad uppgifter om konton och personuppgifter. Rätt utförd är denna typ av attacker effektiv. Synen på spam som ett säkerhetsproblem kan därför sägas vara befogad, resonemanget stöds av Anderson och Strebe [2, 41]. Intrångsförsök kan ske på flera sätt och det händer att en kombination av olika tekniker används. Det är vanligt att man använder buggar, malware och legitima program för att knäcka ett system. Buggar i program är vanliga och dessa kan utnyttjas på många sätt till detta ändamål. Legitima program används ofta för att få information om systemet och för att hämta data. Är användaren inloggad som administratör i systemet är risken stor att en hackare kan ta kontrollen över systemet direkt efter intrånget. [2, 41] Ofta handlar datasäkerhet om att skydda en persons eller ett företags integritet. På operativsystem-nivå handlar det delvis om att begränsa en användares rättigheter till att komma åt information, använda program eller att göra vissa systeminställningar. Denna företeelse kallas i regel helt enkelt för en användares rättigheter. Systemets integritet ska skyddas i så hög grad som möjligt samtidigt som dess konfidentialitet inte äventyras. De två delarna konfidentialitet och integritet måste alltså balanseras mot ett systems tillgänglighet. Användarna kan uppleva situa-

7 tionen så att ju fler rättigheter de har, desto högre tillgänglighet har systemet. Ett system där användaren får installera vilka programvaror hon själv vill är mer tillgängligt (användbart, i det här fallet) än ett där hon inte får installera några program alls. Om systemet kraschar på grund av att en användare gjort något fel sjunker systemets tillgänglighet. På grund av detta kan man säga att [2, 41, 47]: En person som har rätt att göra något ska kunna göra det. En person som ej har rätt att göra något ska ej kunna det. En person ska ej kunna skaffa mer rättigheter än denne ska ha. Integritet är inte nödvändigtvis knuten till användaren eller ägaren av systemet utan kan även vara knutet till systemet själv. Datasäkerhet är därför ofta svårt att förstå och svårt att tillämpa. För att ge ett par exempel: En person (David) startar sin dator hemma. Som hemanvändare har han lagt in en del data om sig själv i systemet: sitt namn, sin adress samt en uppsättning användarnamn och lösenord, bland annat till sin bank och till sin e-post. Den data (lösenord, användarnamn samt personuppgifter) som finns i systemet kan ses som känslig. Genom att lura David att ladda ner en trojansk häst lyckas en utomstående människa (Berit) tillförskansa sig kontrollen över Davids system. Berit använder sedan Davids användarnamn och lösenord för att logga in på Davids bank för att länsa hans konto. Även om Davids personnummer inte finns i systemet är detta inte speciellt svårt att ta reda på när man väl känner till namn och adress. Med fullständiga personuppgifter, de lösenord som finns i datorn samt en smula fantasi kan han åsamkas stor ekonomisk och personlig skada. I detta mycket förenklade fall visas på två system vilka är felaktigt designade ur ett säkerhetsperspektiv. Detta förenklade fall visar på en mycket allvarlig attack. Ett av de viktigaste problemen här är verifikation av vem som loggar in. Banken försäkrar sig inte om att det verkligen är David och ingen annan som loggar in på deras system, utan accepterar blint användarnamn och lösenord. Eftersom den dator som David använder blivit komprometterad med hjälp av ett malware är den känslig mot attacker. Då han lagt viktiga persondata på hårddisken

8 KAPITEL 2. SÄKERHET går dessa att komma åt av alla som kan logga in på hans dator förutsatt att den som loggar in har rättigheter att läsa hans filer. När Berit tar kontrollen blir följden att Davids integritet blir kränkt och att hans ekonomi blir skadad. Även om David har ett visst ansvar för sin egen säkerhet ligger det huvudsakliga ansvaret i detta fall på någon annan. Eftersom banken inte kan utgå från att David har den kunskap som krävs för att hans egen integritet ska skyddas ligger ansvaret för säkerheten hos dem. Genom antagandet att användaren har full kontroll och kunskap över säkerheten i det system denne utnyttjar minskar även tillförlitligheten för systemet. En bättre lösning återfinns på sidan 9. Även om exemplet är gravt förenklat ger det en god inkörsport till de frågor man bör ställa sig vid utformandet av en hotbild: 1. Vem vill vi skydda? 2. Varför vill vi skydda denne? 3. Vem litar vi på? 4. Varför litar vi på denne? Datasäkerhet handlar mycket om tillit. En betrodd person är i datasäkerhetssammanhang: Någon som kan skada vår integritet. Vi måste därför vara försiktiga med vem vi litar på och vi måste framför allt veta varför vi litar på denna. Ibland krävs en starkare form av identifiering för att man ska kunna placera tillit hos någon. I Davids fall blir kanske svaren på frågorna ovan: 1. Jag vill skydda mig själv och mina intressen. 2. Jag kan åsamkas ekonomisk skada. 3. Jag litar på min bank inte mitt system. 4. Jag tror att banken har mer att förlora på att skada min integritet än de har att vinna. Banken har kanske dessa tankar: 1. Vi vill skydda oss och våra intressen. Kunderna är vår viktigaste inkomstkälla och därför måste även deras intressen skyddas utan att deras integritet kränks.

9 2. En konkurrent kanske vill stjäla information om oss. Om en kunds integritet skadas kommer denne att tappa sitt förtroende för banken även om banken ersätter denne till fullo. 3. Vi litar på att våra kunder gör sitt bästa för att skydda sig själva och sin egen integritet. Denna tillit förstärks med hjälp av uttryckliga krav på varje kund. 4. Ingen människa vill utsättas för ekonomisk skada därför kommer de krav banken ställer på kundens säkerhetstänkande att efterlevas. Om vi nu utökar exemplet från sida 7 lite, målet denna gång är att stoppa Berit från att tillförskansa sig den information vi vill skydda (lösenorden till banken och e- posten) genom att göra intrång i Davids dator. Genom att göra intrång i datorn ska hon inte få tillgång till den data hon behöver för att direkt stjäla från Davids konto. Notera att all data inte kommer att skyddas; namn, adress och inloggningsdata till Davids e-post finns fortfarande kvar på så sätt att Berit kan stjäla dem För att stoppa användaren från att spara sitt lösenord på sin dator väljer banken att förse användaren med något man väljer att kalla en säkerhetsdosa. Säkerhetsdosan förser användaren med ett nytt lösenord varje gång denne loggar in på bankens system. Vidare används krypterad överföring när kunden loggar in på sitt konto. Ett av målen är att inte göra saker onödigt komplicerade för kunden. Så länge användaren tvingas att logga in med hjälp av säkerhetsdosan kan banken försäkra sig om att det är ägaren av kontot eller någon som ägaren litar på som försöker logga in. Banken ställer dessutom kravet att kunden ska handha och förvara säkerhetsdosan med samma omsorg som andra värdehandlingar. Dessa åtgärder medför att systemet totalt sett blir mer tillförlitligt för både användare och bank. Den uppenbara risken för David privatliv, lösenordet till hans e-post skyddas inte av banken. Å andra sidan riskerar han inte att Berit stjäl pengar genom att göra intrång i hans dator. Anledningen till att systemet kan ses som mer tillförlitligt är att det införts en form av stark identifiering. Detta införande har kombinerats med ett försök att väcka kundens uppmärksamhet om säkerhet. Genom att tala om för kunden att säkerhetsdosan är ett värdeföremål har man försökt få kunden att ta bättre vara på sin identitetshandling. En säkerhetsdosa har även den effekten att tjänsten att nyttja sin bank får ett reellt fysiskt värde, det är någonting mer än en vanlig hemsida. Eftersom banken ställer kravet att säkerhetsdosan ska handhas med samma

10 KAPITEL 2. SÄKERHET omsorg som andra värdehandlingar förstärks känslan ytterligare att dosan har ett reellt värde. Banken har en viktig roll att spela här, det är de som står i position att hjälpa användaren till en säkrare datoranvänding i det här fallet. Det finns dock problem som varken bank eller kund kan skydda sig mot till fullo. Ett av dessa är sådana som beror på svagheter i mellanliggande system, vilka ingen av de två parterna har kontroll över. En typ av attack som går att genomföra i de mellanliggande systemen är man-in-the-middle attacken. (a) Fas 1 Login (b) Fas 2 Kontosignering (c) Fas 3 Överföring Figur 2.1: En man-in-the-middle attack med syfte att överföra pengar till ett för kunden okänt konto. Den första bilden (2.1a) visar attackens början. Angriparen Berit (B i figuren) har skapat en hemsida som liknar den som tillhör Davids (A i figuren) bank (Bank i figuren). När David först kommer till inloggningssidan gör Berit ett försök att logga in på Davids bank banken begär då en kontrollsiffra (2.1a.1). När David försöker logga in på vad han tror är sin bank (figur 2.1a.2) får han som vanligt en förfrågan om koden från säkerhetsdosan. Efter han avgivit den (2.1a.3) kan Berit skicka den vidare till banken (2.1a.4). När Berit loggat in på banken ger hon David en felutskrift och ber om en ny kontrollsiffra (2.1b.3). Med denna kan hon sedan skapa ett överföringskonto till sig själv. Genom att göra om fas 2 genomför hon sedan överföringen av Davids pengar.

11 Exemplet i figur 2.1 på motstående sida baserar sig på Mafia in the middle attack exemplet på sid. 25 i Anderson [2] samt bygger vidare på exemplet från sida 9. Istället för att göra intrång i offrets dator väljer angriparen att anfalla utifrån genom att skapa en hemsida vilken efterliknar offrets bank. Hemsidan används sedan för en så kallad man-in-the-middle attack. Den sista attacken visar att hela systemet från användare till (i det här fallet) bank är sårbart. Även om en man-inthe-middle attackkräver att angriparen har tagit över betrodd server av något slag till exempel en Internet leverantör. Eftersom leverantören av internetanslutningen är betrodd skapar det också en situation där användaren (dvs. David) blir sårbar om denna anslutning blir komprometterad. Exemplen på attacker ovan visar alltså att: Hela systemet är sårbart, inte bara de två som kommunicerar utan även alla routrar, hubbar och servrar som ligger emellan. Konfidentiell data kräver säker och pålitlig lagring. Ett systems tillgänglighet ökar när konnektiviteten ökar. Användare måste ha tillit till system de inte har full kontroll över. Intrång kan ske på flera sätt. I detta avsnitt har två påvisats. Dels ett där angriparen använde sig av en malware för att komma åt offrets data samt gav angriparen möjlighet att stjäla pengar från David. Det andra exemplet visade på en motåtgärd från bankens sida vilken löste problemet tillfälligt utan att minska tillgängligheten för kunden nämnvärt. Det sista exemplet visade på en attack där angriparen komprometterade en dator som stod utanför både bankens eller kundens kontroll. Denna inledning till området datasäkerhet visar att säkerhet är en iterativ process. Följande delar i detta kapitel kommer att ta upp en del grundläggande begrepp och definitioner så väl som en del hotbilder med exempel på medföljande attacker. De två sista avsnitten tar upp Trusted Computing och Trusted Computing Alliance.

12 KAPITEL 2. SÄKERHET 2.1 Tillgänglighet Tillgänglighet innebär förmågan att använda önskad data eller resurs. Tillgänglighet är en viktig aspekt av ett systems tillförlitlighet så väl som av ett systems design. Ett otillgängligt system är ofta samma sak som inget system. Två aspekter av tillgänglighet är hjälpfunktionaliteten i ett program samt möjligheten att nå en internetbank. Genom en så kallad Denial of Serice attack (DoS) är det möjligt att arrangera en situation sådan att resursen är omöjlig att nå. Något som liknar en DoS kan dock vara tidpunkter då belastningen normalt är hög. [6] 2.2 Konfidentialitet Uttrycket konfidentialitet innebär döljandet av information och resurser [6]. Behovet är störst i känsliga användningsområden; till exempel statliga-, industrieller bankapplikationer [2]. Vanligtvis när man vill förstärka konfidentialiteten vid kommunikation eller datalagring använder man kryptografi. Genom att kryptera data hoppas man kunna skydda den från insyn. Meningen är att endast den med rätt nyckel ska kunna läsa den data som lagrats eller skickats. En kryptografisk nyckel kontrollerar tillgången till data i klartext. Att nyckeln kontrollerar möjligheten att läsa data innebär att nyckeln själv behöver skyddas. Konfidentialitet innebär ibland även att existensen av data måste skyddas. För att ett företag ska kunna ha komplett systemsäkerhet vill de ofta skydda information om vilka system de har. Alla mekanismer som kräver konfidentialitet kräver stöd för detta från systemet. Antagandet är att de säkerhetstjänster som finns kan stödja sig på kerneln för korrekt data. Tillit och antaganden ligger till grund för konfidentialitetsmekanismer [6]. 2.3 Integritet Integritet refererar till trovärdigheten hos data och resurser. Vanligen diskuteras ämnet i termer av otillåten, olämplig eller felaktig förändring. Begreppet inkluderar även dataintegritet och källintegritet (identifikation och auktorisering). Centrala begrepp för integritet är trovärdighet och tillförlitlighet enligt Bishop [6].

2.4. TILLIT 13 2.4 Tillit Tillit är i det här sammanhanget ett mångfasetterat begrepp. En användare måste lita på sitt system. Det innebär att användaren måste lita på tillverkaren av hårdvaran, all mjukvara samt även de rutiner företag har där data om användaren eller dennes system finns lagrad. Företagets kedja av tillit följer samma modell: företaget litar på sina anställda, hårdvaran, mjukvaran samt även sina kunder och övriga som kan ha känslig information om företaget eller dess produkter. Vissa delar av företagens kedja av tillit kan ordnas med hjälp av kontrakt, fysiska lås och säkerhetsrutiner. Detsamma gäller den enskilde privatpersonen. Oavsett hur stor kunskap och iniativförmåga det finns kommer man alltid till en punkt där man måste börja ha tillit [6]. Det är inte alltid trivialt att välja vem som ska vara betrodd. Användarnamn och lösenord kan glömmas bort eller blir stulna. Det är inte alltid omöjligt att avlyssna krypterade överföringar. Då signalen måste omvandlas i flera steg på vägen mellan sändare och mottagare kan svagheter introduceras var som helst i kedjan enligt Anderson [2]. Ett företag vill avgöra om en person är den han utger sig för att vara. Företaget har en policy att använda SSL-nycklar utfärdade av VeriSign ett stort företag specialiserat på att utfärda dylika certifikat. Genom att använda detta system måste både företaget och kunden lita på att den dator de använder för att verifiera sina certifikat verkligen är administrerad av VeriSign och inte en illvillig tredje part [2]. Tillit baserar sig ofta på öppenhet, oavsett vilket system man väljer kommer det att ha säkerhetshål. Anderson, Bishop och Schneier har ofta sagt att datorsäkerhet är en iterativ process. Genom att ett system knäcks kan man hitta potentiella säkerhetshål i andra system. Det är bara genom att vara öppen med dessa säkerhetshål som man kan laga de fel som uppstår. Ett säkerhetssystem som är öppet för insyn blir säkrare ju öppnare det är. Det är på den grunden man kan bygga tillit. Ordet tillit i detta sammanhang betyder därmed någon eller något som kan bryta vår säkerhet. Genom att veta vem man litar på kan man skapa sig en bild av vilka hot som finns mot systemets integritet [2, 6].

14 KAPITEL 2. SÄKERHET 2.5 Hotbilder Det finns ett flertal hot mot ett systems integritet. Ett hot är intrång, vilket innebär att en person utan ägarens eller användarens vetskap skaffar sig tillgång till systemet. Intrång i ett system kan ske på ett flertal sätt. En anställd på ett företag kan genom slarv eller illvilja ge bort ett lösenord. Ett exempel på slarv vore att skriva ner ett lösenord på en lapp och förvara denna under tangentbordet. Vid inbrott skulle en sådan lapp snabbt hittas. En svaghet i systemet kan utnyttjas för intrång eller stöld av information. Svagheter kan uppstå genom att en administratör inte stänger av tjänster som inte används. Det finns dock fall då vitala tjänster medför risker, om dessa risker inte uppmärksammas kan de vara hot mot företagets system. Svagheter i andras system kan medföra risker för det egna systemet. Skulle en attack genomföras mot ett externt system som det egna företaget litar på skulle det kunna innebära en mängd risker för den egna säkerheten. En Internet Service Provider (ISP) som blir hackad är ett konkret exempel. Eftersom en ISP är betrodd av systemet för att tillhandahålla tjänster så som en internetuppkoppling kan en man-in-the-middle attack genomföras (se 10). En malware kan bli installerad på användarens dator (se sida 7) och därmed medföra en rad risker. Avlyssning av den data som flödar till och från ett system är en annan hotbild. Data kan avlyssnas på ett flertal sätt i ett datorsystem: Malware kan användas för avlyssning av data. Ett sätt att genomföra detta är användandet av trojanska hästar. Dessa maskerar sig ofta som nyttinga program men utför alltid något som användaren inte tänkt sig. Syftet kan vara att avlyssna alla tangenttryckningar och lyssna efter användarnamn och lösenord. Skydd av lösenord är en av de viktigaste men samtidigt en av de svåraste utmaningarna enligt Anderson [2]. All data som flödar i systemet kan avlyssnas på detta sätt [2, 41]. Data kan även avlyssnas elektroniskt antingen genom att man installerar någon form av avlyssningsmodul på en kabel eller genom beröringsfri mätning. Avlyssningen kan ske var som helst mellan användare, terminal och mottagare. Det är även möjligt att stjäla data som visas på en skärm med hjälp av beröringsfri mätning men det kräver avancerad utrustning för att vara effektivt. Ett vanligt hot mot ett system är dock legitima program som används på ett sätt som det inte var tänkt och därmed förorsakar risker för systemet [2].

2.6. IDENTIFIERING 15 När det finns risk för avlyssning måste man bestämma sig för vad som är hemligt och inte, vilka skyddsåtgärder som är rimliga och vilka attacker som är troliga. Den data som är hemlig måste skyddas, antingen via kryptering eller på annat sätt. Telnet och HTTP, vilka är de två vanligaste protokollen som används över internet, kommunicerar okrypterat Användarnamn, lösenord och allt annat som skickas sänds i klartext. Avlyssning av informationen blir därmed trivial. Varje hotbild mot ett system måste följas av en åtgärdsplan och en bedömning av hur troligt det är att en attack genomförs baserat på hotet. Ytterligare en bedömning av hotet är en ekonomisk bild vad blir den ekonomiska skadan vid en attack? Vid en ekonomisk kalkyl bör ett troligt och ett värsta scenario tas fram. Om kostnaderna för åtgärderna är lägre än den ekonomiska skadan bör de genomföras [2]. Slutligen bör sägas att det största hotet mot säkerheten hos ett system på ett företag alltid är en människa, användaren eller en betrodd anställd. Eftersom användarna är betrodda är det även de som utgör den största risken. En stor del av alla datorintrång och bedrägerier som sker på företag utförs av anställda eller före detta anställda. Dessa attacker går inte alltid att förutsäga eftersom de ofta beror på brister i mjuka värden som till exempel bristande ledarskap, lön, brist på visad uppskattning och allmänt missnöje [6, 41]. 2.6 Identifiering Ett system måste ofta identifiera vem som använder systemet, man vill begränsa tillgången till företagets resurser till de anställda eller till företagets kunder. Den vanligaste formen av identifiering är användarnamn och lösenord. En användare identifieras genom följande kriterier Användaren och Williams [6, 45]: 1. Något du vet. Detta är en delad hemlighet, oftast ett lösenord eller en kod. 2. Något du har. Till exempel en nyckel eller ett smart card. När man kombinerar med den första får man stark tvåfaktoridentifiering. 3. Något du är. Till exempel fingeravtryck eller identifikation av en vakt. När man kombinerar denna med de två ovanstående får man stark trefaktoridentifiering. 4. Var du är. Var man är kan innebära en viss terminal eller en viss position. Viss programvara kanske bara får användas från en viss terminal. En

16 KAPITEL 2. SÄKERHET anställd kanske inte får se viss känslig information på sin laptop om denne befinner sig på annan plats än på kontoret. En metod som ibland tillämpas är att man kombinerar den första med den sista: En viss användare får bara använda en viss resurs från en viss dator, symboliserad av datorns IP-nummer. Svagheten i den här lösningen är att man litar på den dator användaren loggar in från samt att hon inte tappat kontrollen över sitt användarnamn och lösenord. Eftersom IP-nummer går att stjäla genom så kallad spoofing behöver angriparen inte göra något intrång i offrets dator. Resonemanget leder oss in på stark identifiering och hur detta kan lösas i praktiken. 2.7 Stark identifiering I avsnitt 2.6 diskuterades olika former av identifiering och användarverifikation. Stark identifiering uppnås genom en kombination av delarna: något du vet, något du har, något du är samt var du är (se def. i avsnitt 2.6). Tvåfaktoridentifiering uppnås genom att använda två av delarna. Trefaktoridentifiering genom att kombinera tre och fyrfaktoridentifiering uppnås genom att kombinera alla fyra. Exemplet på sida 9 visade på en metod för inloggning som är starkare än ett vanligt användarnamn och lösenord. Det tillvägagångssätt man hade valt med hjälp av säkerhetsdosan var att förstärka den gemensamma kunskapen (något man vet) genom att kombinera med den fysiska delen (något man har). Kombinationen uppstår genom att man visar att man har rätt dosa och kan använda den. Användningen av den personliga säkerhetsdosan måste alltså även den vara skyddad genom till exempel ett lösenord. Trots att man inte blandar in biometrisk information kan en långt bättre säkerhet än den traditionella användare/lösenordlösningen uppnås. Tillförlitlig identifikation är ofta både svårt och opraktiskt, alla metoder har sina svagheter. Den vanligaste formen av identifiering är användarnamn och lösenord en form av identifiering som är väl känd och lätt att förstå. Nackdelen med användarnamn och lösenord är att säkerheten är avhängig hur bra lösenordet är uppbygd. Ett abstrakt lösenord som är svårt att gissa och svårt att generera är ett bra lösenord. Tyvärr är sådana lösenord svåra att komma ihåg så användare tenderar att välja lösenord som är allt för enkla, till exempel namnet på ett husdjur eller familjemedlem eller skriver upp lösenordet på en lapp. För att undkomma dessa enklare fällor används stark identifiering. Det finns ett flertal former, här kommer några att diskuteras.

2.7. STARK IDENTIFIERING 17 2.7.1 Smartcards En väl spridd säkerhetslösning är smartcard-lösningar. Smartcards används för att identifiera personer mot system. Användaren använder ett ID-kort med en inbyggd krets vilken identifierar honom eller henne mot systemet. Det finns många olika lösningar på marknaden idag. Ett exempel är SafeGuard PrivateCrypto från Utimaco. Denna lösning används till bland annat hårddiskryptering. Ett smartcard är per definition en passiv lösning. Det får inte ha förmåga att ta kontrollen över systemet. Ett Smartcard används för stark identifiering av personer. Lösningen kräver dock ett fysiskt kort som användaren måste bära med sig. Till kortet finns det även ett lösenord vilket även det måste skyddas. För denna teknik finns många starka argument. Först och främst är den enklare än användarnamn/lösen vilket är det förhärskande säkerhetsparadigmet idag. Användaren kan helt enkelt se det som att hennes användarnamn ersätts av det kort hon använder. För att identifiera sig mot ett smartcard används lösenord. En stor fördel är att kortet (precis som en vanlig nyckel) går att låsa in i ett kassaskåp. En annan är att kortet går att byta ut eller ersätta om det komprometteras eller tappas bort. Ett problem med smartcard-system är att säkerhetskorten går att tappa bort. Ytterligare ett problem är att ett smartcard identifierar kortet, inte användaren. Eftersom det inte finns något effektivt sätt att hindra detta är det många som istället argumenterar för biometriska system. 2.7.2 Biometriska system Biometriska system blir allt mer populära. De faller under kategorin något du är (se sida 15) och understödjer därför identifiering av människor. Bruce Schneier säger att biometriska system är användbara men de inte är nycklar. En nyckel karaktäriseras enligt Schneier av att [37]: Den är slumpmässig. Den kan hållas hemlig. Den kan uppdateras eller förstöras. Biometrisk data saknar samtliga dessa egenskaper men de är användbara som ersättning för en skriven signatur eller en PIN samt när kopplingen mellan använ-

18 KAPITEL 2. SÄKERHET daren och den som verifierar signaturen är säker [2, 9]. Biometri är även användbart när man bara behöver en signatur vilken är svår att förfalska [2]. Kroppsdelar och biologisk information så som DNA går inte att tappa bort. Informationen är dessutom strikt personligt identifierande. Den vanligaste typen av biometrisk inloggning är fingeravtryckssystem. Anledningen är ofta ekonomisk (fingeravtryksläsare är förhållandevis billiga) men även att det är lättare att acceptera en fingeravtrycksscanner än till exempel en retinascanner [2]. Det finns flera typer av biometriska system, nedan följer ett axplock: Ansiktsigenkänning. En person identifieras genom till exempel mönstermatchning av ansiktet mot en intern databas. Röstigenkänning. Fungerar på samma sätt som ansiktsigenkänning förutom att mönstermatchningen sker på ett röstprov. DNA-analys. Innebär att man genom biomassa från en individ till exempel blod eller hudavskrap kan identifiera denne. Retinakontroll. En person identifieras via det unika mönstret av blodkärl som finns i människans ögonbotten. Handavtryck. En person identifieras av att ett avtryck av hela handen används. Fingeravtryck. En person identifieras genom sitt fingeravtryck. Under normal drift kan två typer av fel uppkomma: Falsk acceptering och falskt avslag. Falsk acceptering innebär att systemet felaktigt tror att en person är någon hon inte är. Felet är ekvivalent med att bli accepetarad med falskt ID-kort. Falskt avslag är när en person med legitim tillgång till systemet blir nekad. Anderson kallar dessa två för bedrägeriratio (Eng. fraud rate) och förolämpningsratio (Eng. insult rate) [2]. Alla metoder för identifiering är felbara men de biometriska metoderna är ofta antingen känsliga för förändringar, osäkra eller lättlurade. Ålder påverkar de flesta typer av biometriska system; alla delar av kroppen i åldras och förändras med tiden. En användare kan dessutom råka ut för en olycka som gör identifikation via en viss biometrisk metod temporärt eller permanent omöjlig. Biometrisk data har en del egenskaper som gör att den är direkt olämplig som nyckel: Biometrisk data är inte hemlig. Om den biometriska signaturen blir stulen är den inte utbytbar. De är inte heller slumpmässiga. Matsumoto et. al. listar ett antal

2.7. STARK IDENTIFIERING 19 attacker mot fingeravtrycksläsare som visar på dessa brister. Den mest drastiska attacken är att ett finger kan skäras av från kroppen [21]. Attacken är ett exempel på att starkare identifiering kan ge upphov till mer drastiska eller våldsamma sätt att bryta sig in i systemen. Ett rejält sår i ett finger från till en kökskniv eller en het platta kan under en tid göra fingeravtryck på ett eller flera fingrar helt obrukbara som identifikationsmedel. Fingeravtrycksläsare är dessutom ofta lätta att lura. Ett fingeravtryck är inte speciellt svårt att få tag på, det som egentligen behövs är lite hjälp från insidan, antingen medveten genom att en person låter någon kopiera ett giltigt fingeravtryck eller genom att man stjäl det till exempel från ett glas som offret använt. Matsumoto och senare även Sandström har demonstrerat metoder för att utföra attacker mot fingeravtrycksläsare [21, 35]. Röstigenkänning är mer otillförlitliga än de övriga eftersom metoden är känslig för till exempel sjukdomar eller alkoholpåverkan. Om en person är alkoholpåverkad, äter starka mediciner eller bara lider av en förkylning kan det alltså hända att systemet nekar personen tillträde enligt Anderson [2]. Ansiktsigenkänningssystem är opraktiska eftersom de ofta misslyckas. Systemet är ungefär lika ineffektivt som en otränad människa. DNA-analys är opraktiskt, det kan ta flera timmar för en exakt analys, dessutom måste den idag ske manuellt. DNA som identifieringsmetod för datorsystem hör därmed framtiden till. Retinakontroll är visserligen oerhört exakt, men vi som människor är ofta misstänksamma mot den utrustning som finns för kontroll idag. Handavtrycksläsare är skrymmande och ger en högre grad av felaktiga identifieringar än fingeravtryck [2]. Vidare upplevs många av de metoderna för biometrisk identifiering som kränkande eller skrämmande. På grund av den höga graden misslyckade identifieringar rekommenderar Microsoft att ytterligare åtgärder, till exempel smartcards skall användas för att garantera stark identifiering [27, 28]. Det finns dock exempel på när kombinationer av biometriska system har använts för identifikation men där resultatet blivit att den totala mängden misslyckade identifieringar ökat [2]. Det händer att biometrisk data används som lösenord men användaren kan inte välja ett svagt fingeravtryck på samma sätt som hon kan välja ett svagt lösenord. Om den biometriska signaturen blir stulen går den inte att byta ut [2].

20 KAPITEL 2. SÄKERHET 2.8 Kryptering Kryptering av meddelanden är en av de äldsta metoderna för att skicka konfidentiell data över en publikt tillgänglig kanal. Olika strategier har förekommit ända sedan antiken. Idag använder privatpersoner kryptering för bland annat e-handel och i vissa fall e-post när konfidentialitet är prioriterat. En person som visat sig viktig för utvecklingen av de kryptografiska metoderna är Auguste Kerckhoffs. Han slog fast några av de mest citerade principerna för kryptografiska system [15]: 1. Systemet måste vara svårt om än inte matematiskt omöjligt att dechiffrera. 2. Säkerheten får inte ligga i systemet, det ska kunna bli stulet av fienden utan att det skapar problem. 3. Nycklar måste vara lätta att byta och minnas utan att de ska behöva skrivas ner och de måste vara lätta att dela och modifiera. 4. Systemet måste vara portabelt och det får inte kräva flera närvarande personer för att användas. 5. Systemet måste gå att applicera för telegrafkommunikation. 6. Beroende på de omständigheter under vilka systemet appliceras måste det vara lätt att använda systemet det ska varken behöva belasta sinnet eller kräva en lång lista med regler. Den allmänna uppfattningen om Kerckhoffs princip är att hemligheten ska ligga i nyckeln inte i algoritmen. Principen, ibland citerad som Kerckhoffs andra lag, citeras därför ofta som stöd för att krypteringsalgoritmer ska vara öppna. Tanken är dock att algoritmen ska kunna ses som öppen utan att säkerheten försvagas, inte att den nödvändigtvis måste vara det. Enkelheten hos systemen är idag intressant ur synvinkeln att systemen ska vara översiktliga och därmed möjliga att testa i sin helhet. Efter att arbetet med kryptering öppnades har säkerheten hos algoritmerna stärkts. Enligt både Anderson och Bishop har de algoritmer för kryptering som visat sig mest motståndskraftiga mot olika attacker har varit de som är offentliga eller baserade på öppen källkod [2, 6]. I enlighet med Kerckhoffs principer är detta ett förväntat resultat. Eftersom algoritmerna kan granskas av alla som kan tänkas vara intresserade blir effekten att de granskas hårdare och eventuella svagheter kan elimineras snabbare [2].

2.8. KRYPTERING 21 Alla kryptosystem är enligt Stinson en femtupel (M, C, K, E, D) där följande egenskaper uppfylls [40]: 1. M är en ändlig mängd läsbar text. 2. C är en ändlig mängd möjlig chiffertext. 3. K är en ändlig mängd nycklar (nyckelrymd) K. 4. För varje K K finns det en krypteringsregel e K E och en motsvarande avkrypteringsregel d K D. Varje e k : M C och d K : C M är funktioner sådana att d (ek (x)) = x för varje läsbar text x M. Egenskap 4 säger att en läsbar text x som krypteras med e K och avkrypteras med d K ger orginaltexten x som resultat [40]. Det finns två huvudsakliga typer av kryptering: Symmetrisk och assymetrisk. I symmetrisk kryptering använder både sändare och mottagare samma nyckel (se figur 2.2a). Utmaningen är att distribuera nycklar mellan kommunicerande parter. En lösning är att distribuera nyckeln med hjälp av assymetrisk kryptering [40]. När en säker kanal för utbyte av nyckel inte finns tillgänglig är symmetrisk kryptering inte alltid möjlig eller praktisk. Assymetrisk kryptering använder en tvådelad nyckel. Teorin bygger på ett svårlöst matematiskt problem med en bakdörr som gör att problemet kan lösas enkelt med hjälp av nyckeln till bakdörren. Det grundläggande villkoret är att givet krypteringsfunktionen e K ska det vara osannolikt att man ska kunna hitta avkrypteringsfunktionen d K [40]. Publik-nyckelkryptering är en lösning som används idag (se bild 2.2b). Nyckeln utgörs av ett nyckelpar K e och K d. Den offentliga nyckeln K e distribueras fritt medan den privata delen (K d ) hålls hemlig. När person A skickar ett meddelande till person B krypterar han meddelandet med Bs offentliga nyckel M 1 = crypt(k eb, M 1 ). Person B kan sedan läsa meddelandet genom att köra M 1 = decrypt(k db, M 1) [6, 40]. Utmaningen i publik-nyckelkryptering är att hålla de privata nycklarna konfidentiella under hela deras livstid samt att distribuera dessa på ett tillförlitligt sätt [6]. Nackdelen med assymetrisk nyckelkryptering är att den är cirka 1000-1500 gånger långsammare än kryptering med symmetriska nycklar [22, 40]. Assymetrisk nyckelkryptering går även att använda till signering av data. Genom att använda metoden till att skapa ett certifikat kan integritet hos data garanteras. I X.509 skapas ett certifikat genom att en hash beräknas av den aktuella identiten, varefter hashsumman krypteras [12]. Ett certifikat används för att knyta en

22 KAPITEL 2. SÄKERHET identitet till en viss data. Vanligtvis används certifikat vid nyckelsignering då man vill certifiera att en viss kryptografisk nyckel kommer från en viss person. Certifieringen används då för att lösa problemet med distributionen av publika nycklar. [40, 6] (a) Symmetrisk kryptering, både sändare och mottagare använder samma nyckel för alla operationer. (b) Assymetrisk kryptering med hjälp av publik-nyckelkryptering. Figur 2.2: kryptering. Kryptering och nyckeldistribution i symmetrisk och assymetrisk Ett exempel på symmetrisk kryptering är Data Encryption Standard (DES), från början en militär hemlighet. DES knäcktes kort efter att den släpptes till allmänheten [6, 8]. Eftersom DES därmed ansågs vara en osäker algoritm utvecklades dess ersättare, 3DES (även denna en symmetrisk krypteringsalgoritm) [6]. Den huvudsakliga kritiken mot DES är dess korta nyckellängd (56 bitar). Advance Encryption Standard (AES) lanserades år 2000 och är ersättaren till dessa två.