77
Trusted Computing ur datasäkerhetssynpunkt Gunnar Söderman <[email protected]> 11 augusti 2005

Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

Trusted Computing ur

datasäkerhetssynpunkt

Gunnar Söderman<[email protected] >

11 augusti 2005

Page 2: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

ReferencingTo 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/"

}

Page 3: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

Sammanfattning

Trusted Computing (TC) har sedan år 2002 varit ett stort samtalsämneinom datasäkerhetsområdet. Denna rapport försöker bringa klarhet inyttan för ett företag att använda Microsofts implementation av TC,kallad Next Generation Secure Computing Base (NGSCB). Rapportenger en översikt av säkerhetsområdet och specifikationen av TrustedPlatform Module. Vidare utreds hur NGSCB fungerar och hur detlever upp till den standard som Trusted Computing Group fastslagit.NGSCB utvärderas dels ur en teknisk men även ur en ekonomisk syn-vinkel. Slutligen diskuteras några av de olika åsikterna runt NGSCBoch TC.

Abstract

Since year 2002 Trusted Computing (TC) has been a topic in com-puter security. This thesis tries to explore the subject of the useful-ness of Microsofts implementation of TC, called Next Generation Se-cure Computing Base (NGSCB). An overview of the computer secu-rity area is given together with an overview of the Trusted PlatformModule. The report proceeds with an overview of NGSCB in rela-tion to the standard given by Trusted Computing Group. An analysisof NGSCB from a technical and economical point of view is per-formed. The report is concluded by a summary of the opinions re-garding NGSCB and TC.

Page 4: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång
Page 5: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

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

Page 6: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

vi I NNEHÅ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

Page 7: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

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

Page 8: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång
Page 9: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

Tack till

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

ix

Page 10: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång
Page 11: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

1Inledning

Datasäkerhet är ett vitt begrepp med många ingående delar: Operativsystem, ap-plikationer, hårdvara samt människorna som hanterar systemen. Fokus i säkerhetligger enligt Anderson och Bishop kring integritet, konfidentialitet och tillgäng-lighet [2, 6]. Balansen mellan dessa är ofta unik för varje system, användning-sområde och situation. Gemensamt för alla säkerhetsmodeller är dock att de måstekomma in så tidigt som möjligt i bilden. För att en säkerhetsmodell ska vara effek-tiv 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ärnaföre uppstart.

Det är välkänt att den svagaste länken i kedjan utgör det största hotet mot ettföretags informations- och systemintegritet [2, 6, 8]. Ofta beror bristfällig säk-erhet på svagheter i de applikationer som körs på ett företag. Säkerhetsbrister ioperativsystemet är vanliga, ofta beror de på rena programvarufel men ibland påbristande design. Det finns flera säkerhetslösningar men förhållandevis få systemdär säkerhet inkluderats redan i designstadiet.

Detta examensarbete behandlar Trusted Computing (TC) och Microsofts NextGeneration Computing Base (NGSCB), tidigare kallad Palladium. NGSCB är ettinitiativ som delvis avser att höja säkerheten hos Microsofts operativsystem. Sys-temet är menat att bli en del av säkerhetslösningen i Windows Longhorn. Rap-porten har till syfte att utröna om NGSCB ger några säkerhetsfördelar gentemottidigare existerande lösningar eller om det på ett billigare sätt är möjligt att skapaett likvärdigt skydd utan denna lösning. Under tiden som Microsofts arbete medNGSCB fortskridit har systemet kritiserats hårt från många håll. I vissa fall hardetta 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, sky-dd av känslig data samt skydd av upphovsrättsskyddat material. Kryptering ärden främsta metoden som används för att uppnå dessa mål. NGSCB delar opera-

1

Page 12: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2 KAPITEL 1. INLEDNING

tivsystemet i två delar – en betrodd och en icke betrodd del. Den betrodda delenfungerar som ett eget operativsystem med en egen exekveringsstack medan denicke 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 tillanvä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 attes-tering av processer samt möjligheter till krypterad I/O. Hårddiskkrypteringen ärfrä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äl-la att data från en lokal användare kommer från de lokala I/O-enheterna. NGSCBskyddar inte mot virus eller intrångsförsök, det kommer dock att erbjuda en metodför att se till att installerade program utför vad de är tänkta att göra. I ett företagskulle ett sådant system kunna användas för att hjälpa till att säkra noderna, detvill säga personalens terminaler. Utanför företagets väggar skulle systemet kunnaanvändas för att ytterligare förstärka identifiering av kunden. Om en kund till ex-empel loggar in på sin banks hemsida kan banken använda systemet för att hjälpatill med stark autenticering av kunden, så länge denne befinner sig vid sin hemda-tor.

Viktigt i sammanhanget är att NGSCB är ett valfritt system som levereras inak-tiverat i grundinställningarna (så kallat Opt-in). I nuläget verkar det dock somom program kan kräva att NGSCB är aktiverat för att viss funktionalitet ska varatillgänglig.

En kritik som ofta kommer fram på olika forum är att NGSCB bara är en nyversion av Microsofts Digital Rights Management (DRM). Kritiken tillbakavisasav Microsoft. NGSCB kan nästan kallas ett helhetsbegrepp, det innefattar allt frånhårdvara till mjukvaran. Idén är att om säkerhet ska vara effektiv måste den finnaspå ett så tidigt stadium som möjligt – redan vid start av hårdvaran.

Microsofts produkter har historiskt sett haft stor genomslagskraft, trots att de oftavarit hårt kritiserade. NGSCB har fått båda saklig och osaklig kritik. Teknikenhar kritiserats ur ett tekniskt så väl som ett ekonomiskt perspektiv, men även urett socialvetenskapligt och ett jurdiskt perspektiv [3, 5, 7, 11, 38]. Denna rapportkommer att ta upp en del av denna kritik, även om det inte är dess huvudsakligainriktning. 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.

Page 13: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

1.1. FÖRKUNSKAPER 3

1.1 Förkunskaper

Rapporten riktar sig till programmerare, studenter och systemtekniker som inte ärhelt insatta i NGSCB eller TC. Rapporten är skriven under antagandet att läsarenhar grundläggande kunskap om hur ett datorsystem fungerar och hur dess kompo-nenter samverkar. Läsaren bör även ha en del grundläggande kännedom om brand-väggar. För kryptologiavsnittet förutsätts grundläggande kunskaper inom diskretmatematik och algebra.

1.2 Mål

Rapportens mål är att beskriva Next Generation Secure Computing Base, TrustedComputing samt kringliggande tekniker med utgångspunkt i datasäkerhet. Rap-porten 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 intro-duktion till begreppet “tillit” (eng. trust) i datasäkerhetssammanhang. Säkerhets-avsnittet tar även upp tre exempel på attacker. Detta för att kunna knyta sammanbegreppen hotbild och tillit samt för att ge stöd åt slutdiskussionen. Rapportenfortsätter sedan med en teknisk översikt över TCPA.

Avsnitt 3 diskuterar NGSCB och är avsett att kunna läsas fristående från övrigadelar av rapporten så länge läsaren har förståelse för de delar som tas upp i avsnitt2. 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 underutvecklingen av NGSCB och kan när som helst korrigeras, de är dock intressantaur ett konceptuellt perspektiv. En viktig fråga framförallt för företag är kompati-bilitet, både mellan olika system men även med gamla program. Avsnittet avser attklargöra hur NGSCB är tänkt att fungera och det tar även upp en del av systemetsmöjligheter och begränsningar. Eftersom datasäkerhet ofta är en ekonomisk frågadiskuteras detta i avsnitt3.7.

Avsnitt 4 behandlar en del befintliga säkerhetslösningar. Avsnittet tar framför alltupp en del lösningar som finns idag och hur dessa fungerar. Ett försök görs ävenatt designa ett system vilket löser en del av de funktioner vilka NGSCB säger sig

Page 14: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

4 KAPITEL 1. INLEDNING

lösa.

Sist i rapporten återfinns en ordlista med översättningar av en del engelska uttrycksamt förklaringar av samtliga ej standardiserade förkortningar.

Page 15: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2Säkerhet

Säkerhet handlar om att skydda någons intressen utan att begränsa dennes han-dlingsförmåga på ett sådant sätt att denne inte kan utföra sitt arbete. De tre hörn-stenarna är integritet, konfidentialitet och tillgänglighet [6]. För att säkerhet skafungera i en applikation måste det finnas som ett funktionellt krav redan från bör-jan. Det är lika svårt att designa in säkerhet i efterhand som att designa in prestan-da i efterhand. Om säkerhet inte är en del av designmålen från början kan det varalättare att designa om applikationen från början än att försöka lägga på det i efter-hand. Enligt Bishop kan en applikation som är dålig ur säkerhetssynpunkt därmedaldrig 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älldbehöver spendera tid på att gallra bort oönskad e-post (spam), kostnaden för ettföretag blir därmed reell. Tomas Ögren, systemadministratör på Umeå Universitetuttrycker det väl med orden [47]:

“Något som hindrar mig från att göra det jag borde kunnagöra kan klassas som ett säkerhetsproblem.”

För att tydliggöra problematiken redovisas nedan ett antal hot, attacker och prob-lem. 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 komprometteraett systems integritet, konfidentialitet eller tillgänglighet. Till malware räknas ävende program som gör sådant de inte ska göra. Detta innefattar program vilka in-nehåller funktionalititet som avsiktligt eller oavsiktligt inte redovisas. Vidare kansä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 intehade i åtanke när programmet blev designat. Med “något som ett program inte

5

Page 16: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

6 KAPITEL 2. SÄKERHET

ska göra” menas i det här fallet att programmet gör något som komprometterarett systems integritet, konfidentialitet eller tillgänglighet. Ett program kan även-tyra ett systems integritet genom att det till exempel av misstag skriver över ettsystemprograms minnesbuffer. Samma fel kan skapa en situation där systemetsintegritet äventyras genom att systemet kraschar. Om ett systems konfidentialitetäventyras sker detta oftast genom användarfel men det händer att den programvarasom 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 enganska 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 sinaproduktsviter. Ett par problem med spam är att det kan belasta e-postservrar hårtoch att användarna tvingas att ägna tid och irritation åt att ta hand om den. Spamblir därmed även en kostnad för företag. Phishing-attacker via e-post har medtiden blivit allt vanligare. Phishing har ofta syftet att lura en legitim kund på tillexempel en bank att uppge persondata och/eller kreditkortsuppgifter (Se appendixA för ett exempel). Attacken kan genomföras på ett flertal sätt men ett är att denillvilliga parten skickar ett e-post till kunden vid banken med ett meddelande omtill exempel: “Det har uppdagats problem med ditt kontokort, logga in hos bankenså hjälper vi dig att rätta till det.” Kunden loggar in på vad han/hon tror är bankengenom att följa den länk som är bifogad i e-postmeddelandet. Kunden kommerdå till en sida som ser ut exakt som bankens hemsida men i själva verket är ensida administrerad av hackern. Här ombeds kunden att lämna en rad uppgifter omkonton och personuppgifter. Rätt utförd är denna typ av attacker effektiv. Synenpå spam som ett säkerhetsproblem kan därför sägas vara befogad, resonemangetstö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 olikatekniker används. Det är vanligt att man använder buggar, malware och legitimaprogram för att knäcka ett system. Buggar i program är vanliga och dessa kan ut-nyttjas 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 ad-ministratör i systemet är risken stor att en hackare kan ta kontrollen över systemetdirekt 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ättighetertill att komma åt information, använda program eller att göra vissa systeminställ-ningar. 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 desskonfidentialitet inte äventyras. De två delarna konfidentialitet och integritet måstealltså balanseras mot ett systems tillgänglighet. Användarna kan uppleva situa-

Page 17: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

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 mertillgängligt (användbart, i det här fallet) än ett där hon inte får installera någraprogram alls. Om systemet kraschar på grund av att en användare gjort något felsjunker 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 systemetutan kan även vara knutet till systemet själv. Datasäkerhet är därför ofta svårt attförstå och svårt att tillämpa. För att ge ett par exempel:

En person (David) startar sin dator hemma. Som hemanvändare harhan lagt in en del data om sig själv i systemet: sitt namn, sin adresssamt en uppsättning användarnamn och lösenord, bland annat tillsin bank och till sin e-post. Den data (lösenord, användarnamn samtpersonuppgifter) som finns i systemet kan ses som känslig.

Genom att lura David att ladda ner en trojansk häst lyckas en utom-stående människa (Berit) tillförskansa sig kontrollen över Davids sys-tem. Berit använder sedan Davids användarnamn och lösenord för attlogga in på Davids bank för att länsa hans konto.

Även om Davids personnummer inte finns i systemet är detta inte speciellt svårtatt ta reda på när man väl känner till namn och adress. Med fullständiga person-uppgifter, de lösenord som finns i datorn samt en smula fantasi kan han åsamkasstor ekonomisk och personlig skada.

I detta mycket förenklade fall visas på två system vilka är felaktigt designade urett 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. Bankenfö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 ettmalware är den känslig mot attacker. Då han lagt viktiga persondata på hårddisken

Page 18: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

8 KAPITEL 2. SÄKERHET

går dessa att komma åt av alla som kan logga in på hans dator – förutsatt att densom loggar in har rättigheter att läsa hans filer. När Berit tar kontrollen blir följ-den att Davids integritet blir kränkt och att hans ekonomi blir skadad. Även omDavid har ett visst ansvar för sin egen säkerhet ligger det huvudsakliga ansvaret idetta fall på någon annan. Eftersom banken inte kan utgå från att David har denkunskap som krävs för att hans egen integritet ska skyddas ligger ansvaret försäkerheten hos dem. Genom antagandet att användaren har full kontroll och kun-skap över säkerheten i det system denne utnyttjar minskar även tillförlitlighetenför systemet. En bättre lösning återfinns på sidan9.

Även om exemplet är gravt förenklat ger det en god inkörsport till de frågor manbö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äkerhetssam-manhang: “Någon som kan skada vår integritet.” Vi måste därför vara försiktigamed vem vi litar på och vi måste framför allt veta varför vi litar på denna. Iblandkrävs en starkare form av identifiering för att man ska kunna placera tillit hosnå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 haratt vinna.

Banken har kanske dessa tankar:

1. Vi vill skydda oss och våra intressen. Kunderna är vår viktigaste inkomst-källa och därför måste även deras intressen skyddas utan att deras integritetkränks.

Page 19: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

9

2. En konkurrent kanske vill stjäla information om oss. Om en kunds integritetskadas kommer denne att tappa sitt förtroende för banken – även om bankenersä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 egenintegritet. 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 kravbanken ställer på kundens säkerhetstänkande att efterlevas.

Om vi nu utökar exemplet från sida7 lite, målet denna gång är att stoppa Berit frånatt 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 skahon 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 tillDavids 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äl-jer banken att förse användaren med något man väljer att kalla en “säk-erhetsdosa”. Säkerhetsdosan förser användaren med ett nytt lösenordvarje gång denne loggar in på bankens system. Vidare används kryp-terad överföring när kunden loggar in på sitt konto. Ett av målen är attinte göra saker onödigt komplicerade för kunden. Så länge användarentvingas att logga in med hjälp av säkerhetsdosan kan banken försäkrasig om att det är ägaren av kontot eller någon som ägaren litar på somförsöker logga in. Banken ställer dessutom kravet att kunden ska hand-ha och förvara säkerhetsdosan med samma omsorg som andra värde-handlingar.

Dessa åtgärder medför att systemet totalt sett blir mer tillförlitligt för både an-vändare och bank. Den uppenbara risken för David privatliv, lösenordet till hanse-post skyddas inte av banken. Å andra sidan riskerar han inte att Berit stjäl pengargenom att göra intrång i hans dator.

Anledningen till att systemet kan ses som mer tillförlitligt är att det införts enform av stark identifiering. Detta införande har kombinerats med ett försök attväcka kundens uppmärksamhet om säkerhet. Genom att tala om för kunden attsäkerhetsdosan är ett värdeföremål har man försökt få kunden att ta bättre varapå sin identitetshandling. En säkerhetsdosa har även den effekten att tjänsten attnyttja sin bank får ett reellt fysiskt värde, det är någonting mer än en vanlig hem-sida. Eftersom banken ställer kravet att säkerhetsdosan ska handhas med samma

Page 20: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

10 KAPITEL 2. SÄKERHET

omsorg som andra värdehandlingar förstärks känslan ytterligare att dosan har ettreellt värde. Banken har en viktig roll att spela här, det är de som står i positionatt hjälpa användaren till en säkrare datoranvänding i det här fallet. Det finns dockproblem 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 mellanlig-gande 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örkunden okänt konto.

Den första bilden (2.1a) visar attackens början. Angriparen Berit (B ifiguren) har skapat en hemsida som liknar den som tillhör Davids (A ifiguren) bank (Bank i figuren). När David först kommer till inloggningssi-dan gör Berit ett försök att logga in på Davids bank banken begär då enkontrollsiffra (2.1a.1). När David försöker logga in på vad han tror är sinbank (figur2.1a.2) får han som vanligt en förfrågan om koden från säk-erhetsdosan. Efter han avgivit den (2.1a.3) kan Berit skicka den vidare tillbanken (2.1a.4). När Berit loggat in på banken ger hon David en felutskriftoch ber om en ny kontrollsiffra (2.1b.3). Med denna kan hon sedan skapaett överföringskonto till sig själv. Genom att göra om fas 2 genomför honsedan överföringen av Davids pengar.

Page 21: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

11

Exemplet i figur2.1på 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 sida9. Istället för att göra intrång i offrets dator väljer angriparen att anfalla utifrångenom att skapa en hemsida vilken efterliknar offrets bank. Hemsidan användssedan för en så kallad man-in-the-middle attack. Den sista attacken visar att helasystemet från användare till (i det här fallet) bank är sårbart. Även om en man-in-the-middle attackkräver att angriparen har tagit över betrodd server av något slagtill 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årbarom denna anslutning blir komprometterad. Exemplen på attacker ovan visar alltsåatt:

• Hela systemet är sårbart, inte bara de två som kommunicerar utan även allaroutrar, 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 angriparenanvände sig av en malware för att komma åt offrets data samt gav angriparen möj-lighet att stjäla pengar från David. Det andra exemplet visade på en motåtgärd frånbankens sida vilken löste problemet tillfälligt utan att minska tillgängligheten förkunden nämnvärt. Det sista exemplet visade på en attack där angriparen kompro-metterade en dator som stod utanför både bankens eller kundens kontroll. Dennainledning till området datasäkerhet visar att säkerhet är en iterativ process. Föl-jande delar i detta kapitel kommer att ta upp en del grundläggande begrepp ochdefinitioner så väl som en del hotbilder med exempel på medföljande attacker. Detvå sista avsnitten tar upp Trusted Computing och Trusted Computing Alliance.

Page 22: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

12 KAPITEL 2. SÄKERHET

2.1 Tillgänglighet

Tillgänglighet innebär förmågan att använda önskad data eller resurs. Tillgäng-lighet är en viktig aspekt av ett systems tillförlitlighet så väl som av ett systemsdesign. Ett otillgängligt system är ofta samma sak som inget system. Två aspekterav tillgänglighet är hjälpfunktionaliteten i ett program samt möjligheten att nå eninternetbank. Genom en så kallad “Denial of Serice attack” (DoS) är det möjligtatt arrangera en situation sådan att resursen är omöjlig att nå. Något som liknar enDoS 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]. Be-hovet är störst i känsliga användningsområden; till exempel statliga-, industri-eller bankapplikationer [2]. Vanligtvis när man vill förstärka konfidentialiteten vidkommunikation eller datalagring använder man kryptografi. Genom att krypteradata hoppas man kunna skydda den från insyn. Meningen är att endast den med rättnyckel ska kunna läsa den data som lagrats eller skickats. En kryptografisk nyck-el kontrollerar tillgången till data i klartext. Att nyckeln kontrollerar möjlighetenatt läsa data innebär att nyckeln själv behöver skyddas. Konfidentialitet innebäribland även att existensen av data måste skyddas. För att ett företag ska kunna hakomplett 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 kor-rekt 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 inkluder-ar även dataintegritet och källintegritet (identifikation och auktorisering). Centralabegrepp för integritet är trovärdighet och tillförlitlighet enligt Bishop [6].

Page 23: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.4. TILLIT 13

2.4 Tillit

Tillit är i det här sammanhanget ett mångfasetterat begrepp. En användare måstelita på sitt system. Det innebär att användaren måste lita på tillverkaren av hård-varan, all mjukvara samt även de rutiner företag har där data om användaren ellerdennes system finns lagrad. Företagets kedja av tillit följer samma modell: före-taget litar på sina anställda, hårdvaran, mjukvaran samt även sina kunder och övri-ga som kan ha känslig information om företaget eller dess produkter. Vissa delarav företagens kedja av tillit kan ordnas med hjälp av kontrakt, fysiska lås ochsäkerhetsrutiner. Detsamma gäller den enskilde privatpersonen. Oavsett hur storkunskap och iniativförmåga det finns kommer man alltid till en punkt där manmåste börja ha tillit [6]. Det är inte alltid trivialt att välja vem som ska vara bet-rodd. Användarnamn och lösenord kan glömmas bort eller blir stulna. Det är intealltid omöjligt att avlyssna krypterade överföringar. Då signalen måste omvandlasi flera steg på vägen mellan sändare och mottagare kan svagheter introduceras varsom 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 dendator de använder för att verifiera sina certifikat verkligen är administrerad avVeriSign 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 pro-cess. Genom att ett system knäcks kan man hitta potentiella säkerhetshål i andrasystem. Det är bara genom att vara öppen med dessa säkerhetshål som man kanlaga de fel som uppstår. Ett säkerhetssystem som är öppet för insyn blir säkrareju öppnare det är. Det är på den grunden man kan bygga tillit. Ordet “tillit” i det-ta 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 finnsmot systemets integritet [2, 6].

Page 24: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

14 KAPITEL 2. SÄKERHET

2.5 Hotbilder

Det finns ett flertal hot mot ett systems integritet. Ett hot är intrång, vilket in-nebär att en person utan ägarens eller användarens vetskap skaffar sig tillgång tillsystemet. 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. Ettexempel på slarv vore att skriva ner ett lösenord på en lapp och förvara dennaunder 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. Svagheterkan 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ärk-sammas kan de vara hot mot företagets system.

Svagheter i andras system kan medföra risker för det egna systemet. Skulle enattack genomföras mot ett externt system som det egna företaget litar på skulledet kunna innebära en mängd risker för den egna säkerheten. En Internet ServiceProvider (ISP) som blir hackad är ett konkret exempel. Eftersom en ISP är bet-rodd av systemet för att tillhandahålla tjänster så som en internetuppkoppling kanen man-in-the-middle attack genomföras (se10).

En malware kan bli installerad på användarens dator (se sida7) och därmed med-fö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ändasför avlyssning av data. Ett sätt att genomföra detta är användandet av trojanskahästar. Dessa maskerar sig ofta som nyttinga program men utför alltid något somanvändaren inte tänkt sig. Syftet kan vara att avlyssna alla tangenttryckningar ochlyssna efter användarnamn och lösenord. Skydd av lösenord är en av de viktigastemen samtidigt en av de svåraste utmaningarna enligt Anderson [2]. All data somflödar i systemet kan avlyssnas på detta sätt [2, 41].

Data kan även avlyssnas elektroniskt antingen genom att man installerar någonform av avlyssningsmodul på en kabel eller genom beröringsfri mätning. Avlys-sningen 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öringsfrimä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ättsom det inte var tänkt och därmed förorsakar risker för systemet [2].

Page 25: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.6. IDENTIFIERING 15

När det finns risk för avlyssning måste man bestämma sig för vad som är hemligtoch 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å annatsätt. Telnet och HTTP, vilka är de två vanligaste protokollen som används överinternet, kommunicerar okrypterat Användarnamn, lösenord och allt annat somskickas 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 avhur troligt det är att en attack genomförs baserat på hotet. Ytterligare en bedömn-ing 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. Omkostnaderna 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öretagalltid ä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 dator-intrång och bedrägerier som sker på företag utförs av anställda eller före dettaanstä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å visaduppskattning och allmänt missnöje [6, 41].

2.6 Identifiering

Ett system måste ofta identifiera vem som använder systemet, man vill begränsatillgå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än-dare 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 kom-binerar med den första får man stark tvåfaktoridentifiering.

3. Något du är. Till exempel fingeravtryck eller identifikation av en vakt. Närman kombinerar denna med de två ovanstående får man stark trefaktoriden-tifiering.

4. Var du är. Var man är kan innebära en viss terminal eller en viss posi-tion. Viss programvara kanske bara får användas från en viss terminal. En

Page 26: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

16 KAPITEL 2. SÄKERHET

anställd kanske inte får se viss känslig information på sin laptop om dennebefinner 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, symboliseradav datorns IP-nummer. Svagheten i den här lösningen är att man litar på den datoranvändaren loggar in från samt att hon inte tappat kontrollen över sitt användar-namn 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 ossin 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ågotdu har, något du är samt var du är (se def. i avsnitt2.6). Tvåfaktoridentifiering upp-nås genom att använda två av delarna. Trefaktoridentifiering genom att kombineratre och fyrfaktoridentifiering uppnås genom att kombinera alla fyra. Exemplet påsida9 visade på en metod för inloggning som är starkare än ett vanligt använ-darnamn och lösenord. Det tillvägagångssätt man hade valt med hjälp av säker-hetsdosan var att förstärka den gemensamma kunskapen (något man vet) genomatt kombinera med den fysiska delen (något man har). Kombinationen uppstårgenom att man visar att man har rätt dosa och kan använda den. Användningenav den personliga säkerhetsdosan måste alltså även den vara skyddad genom tillexempel ett lösenord. Trots att man inte blandar in biometrisk information kanen 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 sinasvagheter. 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 medanvändarnamn och lösenord är att säkerheten är avhängig hur bra lösenordet äruppbygd. Ett abstrakt lösenord som är svårt att gissa och svårt att generera är ettbra lösenord. Tyvärr är sådana lösenord svåra att komma ihåg så användare ten-derar att välja lösenord som är allt för enkla, till exempel namnet på ett husdjureller familjemedlem eller skriver upp lösenordet på en lapp. För att undkommadessa enklare fällor används stark identifiering. Det finns ett flertal former, härkommer några att diskuteras.

Page 27: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

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 attidentifiera personer mot system. Användaren använder ett ID-kort med en inbyggdkrets vilken identifierar honom eller henne mot systemet. Det finns många olikalösningar på marknaden idag. Ett exempel är “SafeGuard PrivateCrypto” från Uti-maco. Denna lösning används till bland annat hårddiskryptering. Ett smartcard ärper definition en passiv lösning. Det får inte ha förmåga att ta kontrollen översystemet.

Ett Smartcard används för stark identifiering av personer. Lösningen kräver dockett fysiskt kort som användaren måste bära med sig. Till kortet finns det ävenett lösenord vilket även det måste skyddas. För denna teknik finns många starkaargument. Först och främst är den enklare än användarnamn/lösen vilket är detförhärskande säkerhetsparadigmet idag. Användaren kan helt enkelt se det somatt hennes användarnamn ersätts av det kort hon använder. För att identifiera sigmot ett smartcard används lösenord. En stor fördel är att kortet (precis som envanlig nyckel) går att låsa in i ett kassaskåp. En annan är att kortet går att byta uteller ersätta om det komprometteras eller tappas bort.

Ett problem med smartcard-system är att säkerhetskorten går att tappa bort. Yt-terligare ett problem är att ett smartcard identifierar kortet, inte användaren. Efter-som det inte finns något effektivt sätt att hindra detta är det många som iställetargumenterar 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 sida15) och understödjer därför identifiering av människor. Bruce Schneiersäger att biometriska system är användbara men de inte är nycklar. En nyckelkaraktä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 er-sättning för en skriven signatur eller en PIN samt när kopplingen mellan använ-

Page 28: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

18 KAPITEL 2. SÄKERHET

daren och den som verifierar signaturen är säker [2, 9]. Biometri är även använd-bart 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. In-formationen är dessutom strikt personligt identifierande. Den vanligaste typen avbiometrisk inloggning är fingeravtryckssystem. Anledningen är ofta ekonomisk(fingeravtryksläsare är förhållandevis billiga) men även att det är lättare att ac-ceptera 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önstermatch-ning av ansiktet mot en intern databas.

Röstigenkänning. Fungerar på samma sätt som ansiktsigenkänning förutom attmönstermatchningen sker på ett röstprov.

DNA-analys. Innebär att man genom biomassa från en individ till exempel blodeller hudavskrap kan identifiera denne.

Retinakontroll. En person identifieras via det unika mönstret av blodkärl somfinns 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 falsktavslag. Falsk acceptering innebär att systemet felaktigt tror att en person är någonhon inte är. Felet är ekvivalent med att bli accepetarad med falskt ID-kort. Falsktavslag är när en person med legitim tillgång till systemet blir nekad. Andersonkallar 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 oftaantingen 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 åldrasoch förändras med tiden. En användare kan dessutom råka ut för en olycka somgö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 ny-ckel: Biometrisk data är inte hemlig. Om den biometriska signaturen blir stulen ärden inte utbytbar. De är inte heller slumpmässiga. Matsumoto et. al. listar ett antal

Page 29: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.7. STARK IDENTIFIERING 19

attacker mot fingeravtrycksläsare som visar på dessa brister. Den mest drastiskaattacken är att ett finger kan skäras av från kroppen [21]. Attacken är ett exempelpå att starkare identifiering kan ge upphov till mer drastiska eller våldsamma sättatt 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 tidgöra fingeravtryck på ett eller flera fingrar helt obrukbara som identifikations-medel. Fingeravtrycksläsare är dessutom ofta lätta att lura. Ett fingeravtryck ärinte speciellt svårt att få tag på, det som egentligen behövs är lite hjälp från “insi-dan”, antingen medveten genom att en person låter någon kopiera ett giltigt finger-avtryck 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öraattacker mot fingeravtrycksläsare [21, 35].

Röstigenkänning är mer otillförlitliga än de övriga eftersom metoden är känsligfö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 sys-temet nekar personen tillträde enligt Anderson [2]. Ansiktsigenkänningssystem äropraktiska eftersom de ofta misslyckas. Systemet är ungefär lika ineffektivt somen otränad människa. DNA-analys är opraktiskt, det kan ta flera timmar för en ex-akt analys, dessutom måste den idag ske manuellt. DNA som identifieringsmetodför datorsystem hör därmed framtiden till. Retinakontroll är visserligen oerhörtexakt, men vi som människor är ofta misstänksamma mot den utrustning somfinns för kontroll idag. Handavtrycksläsare är skrymmande och ger en högre gradav felaktiga identifieringar än fingeravtryck [2].

Vidare upplevs många av de metoderna för biometrisk identifiering som kränkandeeller skrämmande. På grund av den höga graden misslyckade identifieringar rek-ommenderar Microsoft att ytterligare åtgärder, till exempel smartcards skall an-vä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ärresultatet blivit att den totala mängden misslyckade identifieringar ökat [2]. Dethänder att biometrisk data används som lösenord men användaren kan inte väljaett svagt fingeravtryck på samma sätt som hon kan välja ett svagt lösenord. Omden biometriska signaturen blir stulen går den inte att byta ut [2].

Page 30: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

20 KAPITEL 2. SÄKERHET

2.8 Kryptering

Kryptering av meddelanden är en av de äldsta metoderna för att skicka konfiden-tiell data över en publikt tillgänglig kanal. Olika strategier har förekommit ändasedan antiken. Idag använder privatpersoner kryptering för bland annat e-handeloch 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örkryptografiska 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 utanatt det skapar problem.

3. Nycklar måste vara lätta att byta och minnas utan att de ska behöva skrivasner 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 per-soner 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 detvara lätt att använda systemet – det ska varken behöva belasta sinnet ellerkräva en lång lista med regler.

Den allmänna uppfattningen om Kerckhoffs princip är att hemligheten ska liggai 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 kunnasessom öppen utan att säkerheten försvagas, inteatt den nödvändigtvis måste vara det. Enkelheten hos systemen är idag intressantur synvinkeln att systemen ska vara översiktliga och därmed möjliga att testa i sinhelhet.

Efter att arbetet med kryptering öppnades har säkerheten hos algoritmerna stärk-ts. Enligt både Anderson och Bishop har de algoritmer för kryptering som visatsig mest motståndskraftiga mot olika attacker har varit de som är offentliga ellerbaserade på öppen källkod [2, 6]. I enlighet med Kerckhoffs principer är dettaett förväntat resultat. Eftersom algoritmerna kan granskas av alla som kan tänkasvara intresserade blir effekten att de granskas hårdare och eventuella svagheterkan elimineras snabbare [2].

Page 31: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.8. KRYPTERING 21

Alla kryptosystem är enligt Stinson en femtupel(M, C, K, E , D) där följandeegenskaper 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 varjeK ∈ K finns det en krypteringsregeleK ∈ E och en motsvarandeavkrypteringsregeldK ∈ D. Varje ek : M → C och dK : C → M ärfunktioner sådana attd(eK(x)) = x för varje läsbar textx ∈M.

Egenskap 4 säger att en läsbar textx som krypteras medeK och avkrypteras meddK ger orginaltextenx som resultat [40].

Det finns två huvudsakliga typer av kryptering: Symmetrisk och assymetrisk. Isymmetrisk kryptering använder både sändare och mottagare samma nyckel (sefigur 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 krypter-ing inte alltid möjlig eller praktisk. Assymetrisk kryptering använder en tvåde-lad nyckel. Teorin bygger på ett svårlöst matematiskt problem med en bakdörrsom gör att problemet kan lösas enkelt med hjälp av nyckeln till bakdörren. Detgrundläggande villkoret är att givet krypteringsfunktioneneK ska det vara osan-nolikt att man ska kunna hitta avkrypteringsfunktionendK [40].

Publik-nyckelkryptering är en lösning som används idag (se bild2.2b). Nyck-eln utgörs av ett nyckelparKe och Kd. Den offentliga nyckelnKe distribuerasfritt medan den privata delen (Kd) hålls hemlig. När person A skickar ett med-delande till person B krypterar han meddelandet med Bs offentliga nyckelM ′

1 =crypt(KeB

, M1). Person B kan sedan läsa meddelandet genom att köraM1 =decrypt(KdB

, M ′1) [6, 40]. Utmaningen i publik-nyckelkryptering är att hålla de

privata nycklarna konfidentiella under hela deras livstid samt att distribuera dessapå 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. Genomatt 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 iden-titen, varefter hashsumman krypteras [12]. Ett certifikat används för att knyta en

Page 32: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

22 KAPITEL 2. SÄKERHET

identitet till en viss data. Vanligtvis används certifikat vid nyckelsignering då manvill certifiera att en viss kryptografisk nyckel kommer från en viss person. Certi-fieringen 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 och nyckeldistribution i symmetrisk och assymetriskkryptering.

Ett exempel på symmetrisk kryptering är Data Encryption Standard (DES), frånbörjan en militär hemlighet. DES knäcktes kort efter att den släpptes till allmän-heten [6, 8]. Eftersom DES därmed ansågs vara en osäker algoritm utveckladesdess ersättare, 3DES (även denna en symmetrisk krypteringsalgoritm) [6]. Denhuvudsakliga kritiken mot DES är dess korta nyckellängd (56 bitar). AdvanceEncryption Standard (AES) lanserades år 2000 och är ersättaren till dessa två.

Page 33: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.8. KRYPTERING 23

Utvecklingen av AES var öppen till skillnad från DES. AES är ett blockchiffersom klarar upp till 256 bitars nycklar. DES, 3DES och AES publicerades av Na-tional Institute for Standards and Technology (NIST) [32, 20].

Ett exempel på assymetrisk-nyckelkryptering är RSA. Säkerheten i RSA ligger iantagandet att krypteringsfunktionen är enkelriktad på så sätt att det är komputa-tionellt osannolikt för en angripare att avkryptera chiffret. En definition på RSAtagen ur Stinson [40] återfinns nedan.

Låt n = pq, därp ochq är primtal. LåtM = C = Zn

K ={

(n, p, q, a, b) : n = pq, ab ≡ 1(mod φ(n))}

för K = (n, p, q, a, b), definiera

eK(x) = xb mod n

samt

dk(y) = ya mod n

(x, y ∈ Zn)

Värdenan ochb är publika ochp, q, a är privata.

En attack mot RSA är att faktoriseran. Säkerheten är därför avhängig attn = pq ärså stor att en faktorisering blir komputationellt opraktisk. En annan attack vore attatt beräknaφ(n). Denna attack vore dock inte lättare att utföra än en faktoriseringavn [40].

Det intressanta med kryptering är att öppenhet om algoritmerna har givit upphovtill säkrare system, tvärt emot vad vissa trodde. Genom att fler kunnat titta på käll-koden har fler kunnat hitta säkerhetsluckor och det har i sin tur gett en utvecklingav området i sin helhet enligt Anderson och Bishop[1, 6].

Page 34: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

24 KAPITEL 2. SÄKERHET

2.9 Slumptalsgenerering

Säkerheten hos många kryptosystem är beroende av sättet på vilket man genererarkrypteringsnycklar. Till detta används ofta slumptal. När slumptal genereras ärdet viktigt att det utförs på ett sådant sätt att en utomstående betraktare inte kangissa vilket tal som kommer här näst. Den inbyggda funktionen i till exempel Celler Java är inte nog exakt (om man inte använder secureRandom) för de flestakryptografiska ändamål, framför allt om man använder systemets inbyggda klockasom bas för att generera talet. En säkrare metod för att skapa ett initieringsfrö äratt ta det från något med en naturlig entropi. En lösning som används i Pretty GoodPrivacy (PGP) är att låta användaren röra på musen och trycka på tangentbordetlite slumpartat. En annan källa till naturlig entropi är ljudportar och olika formerav bruskällor [2, 6, 9, 22, 40].

2.10 Hashning

Hash-nummer används för märkning av data. De vanligaste hash-metoderna ärMD5 och SHA-1, båda bygger på MD4. En hashmetod tar en mängd data ochberäknar ett unikt kontrollnummer för denna.

Definition från Stinson [40]: En hashfunktionh är enkel-riktad om och endast om, givet ett sammandraget medde-lande z, det är komputationellt osannolikt att man skallfinna ett meddelandex sådant atth(x) = z

Med “komputationellt osannolikt” menas att det är osannolikt att lyckas inomrimlig tid. Wang et. al. skapade 2004 en algoritm för att hitta krockar i MD4 ochMD5 på relativt kort tid [43]. Under 2005 visade Klima dessutom att det är möjligtatt hitta krockar i MD5-nycklar på en enkel laptop under rimlig tid [16].

SHA-1 genererar ett 160 bitars tal av en obegränsad mängd data. Det skulle ta280

operationer att hitta två meddelanden som ger samma kontrollsiffra. Om det intefinns någon algoritm sådan att det går att finna två lika nycklar på mindre än280

operationer skulle SHA-1 vara krockfri [2, 20, 40].

Under februari 2004 lyckades det kinesiska forskarteamet från Shandonguniver-sitetet (Wang et. al.) visa att det finns en algoritm för att hitta krockar i SHA-1 på269 operationer – cirka 2000 gånger snabbare än tidigare [44]. Även om skillnadenär stor är det fortfarande bara på gränsen till möjligt att hitta två identiska nycklar.

Page 35: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.11. PUBLIC KEY INFRASTRUCTURE 25

Då det nu finns en attack mot SHA-1 innebär att det är dags att byta till nyalösningar. Beviset berör inte andra metoder än SHA-1 och till exempel SHA-256anses fortfarande vara säker.

2.11 Public Key Infrastructure

Public Key Infrastructure (PKI) är en kombination mellan mjukvara, kryptering-steknologi och tjänster som möjliggör en högre säkerhet för kommunikation ochaffärstransaktioner över Internet [12, 9]. PKI är en integration av digitala certi-fikat, publik-nyckel kryptering och certifikats verifikation som tillsammans skaparen total säkerhetsarkitektur. PKI skyddar informationen på flera olika sätt:

Verifierad identifikation. Certifikat tillåter användare och organisationer att ver-ifiera båda parter i en internettransaktion.

Verifiera integriteten. Certifikat försäkrar integriteten av data och förhindrar attdata har ändrats eller blivit felaktigt under transaktionen.

Skyddar data. Certifikat bevarar konfidentialitet hos data genom att den krypterasinnan transaktionen.

Auktoriserad tillgång. PKI lösningar kan ersätta användaridentiteter och lösenordför att förenkla inloggningsförfarande över intranät.

Stödjer inte förnekande. Certifikat validerar användarna vilket senare försvårarförnekelser.

För att en organisation skall kunna implementera PKI och fungera som en Cer-tificate Authority (CA) finns det två olika möjligheter: Stängd eller öppen PKI.I det första fallet skapar företaget sin egen nyckel och tillhandahåller denna tillberörda parter. Den andra versionen är att man litar på ett externt företag. Detexterna företaget tillhandahåller certifikatet och bestyrker dess äkthet. Några ex-empel på företag som tillhandahåller signerade certifikat är VeriSign, Thawte ochPosten. Bilden på sida22 visar hur en publik-nyckel-server metod kan användasvid assymetrisk kryptering.

Page 36: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

26 KAPITEL 2. SÄKERHET

2.12 Mjukvarans och hårdvarans roll i ett system

Hårdvaran har framför allt två huvudfunktioner att uppfylla i ett system: Delsska den vara den miljö i vilken mjukvaran körs och dels har den till uppgift atttillhandahålla tjänster vilka mjukvaran utnyttjar.

Normalt är hårdvaran dedikerad till en enda sak: Ett grafikkort har till uppgift attvisa grafik och utföra en del beräkningar för denna, en hårddisk lagrar data ochen processor utför addition, subtraktion och förflyttningar av data. Hårdvara äralltså statisk i normalfallet. Dess inflexibilitet är både en för- och en nackdel urett säkerhetsperspektiv. Fördelen är att det blir svårare att attackera olika delar såsom processor, närtverkskort och grafikkort. Nackdelen är att det inte alltid går attuppdatera hårdvara på ett enkelt sätt. Om en attack utförs mot en processor somanvänder HyperThreading skulle en uppdatering innebära ett byte av processor.Grunwald et. al. beskrev 2002 en attack mot denna arkitektur vilken fungeradesom en DoS attack [10]. Vidare har Colin Percival nyligen publicerat en artikel omhur det genom en timingattack är möjligt att stjäla SSL och RSA nycklar direktur processorns cache [34]. När problem med hårdvara upptäcks går det i bästa fallatt lösa via operativsystemet i annat fall får man stänga av den funktionalitet somäventyrar säkerheten om det är möjligt.

När hårdvaran hotas att permanent förstöras eller komprometteras uppkommerde största riskerna, både för data- och systemintegritet. Ponera om en illvillig pro-grammerare lade in en bit kod i moderkortet som gjorde så att all data som flödadegenom minnet exponerades genom nätverkskortet och ut på nätverket. Attackenskulle inte kunna upptäckas annat än från utsidan av systemet. En annan risk voreatt ett virus förstörde hårdvara, till exempel en hårddisk genom att radera dessMOS-krets.

Virus som förstör data eller hårdvara har funnits länge. CIH (även kallat Cher-nobyl) är ett exempel på ett sådant. Viruset skapades av Chen Ing-hau 1998. En avdess versioner skadar CMOS på moderkortet. Även om det här viruset inte är nå-got större hot idag visar det på att hårdvara kan skadas och till och med förstörasav malware, även utan direkt inverkan av användaren [46]. Vid designen av ettsystem görs en avvägning mellan tillgänglighet och säkerhet. Det kan ibland varanödvändigt att sätta in begränsningar i tillgängligheten för att förstärka säkerhet-saspekterna och skydda data och system. Ett alternativ som är vanligt idag är attförändringar i BIOS måste ske före uppstart av operativsystemet. För att begränsaBIOS uppdateringar sätter man ibland en bygling på moderkortet. Vid normaldriftsitter bygeln i ett läge men måste kopplas om när det är dags för uppdatering.Meningen är att en användare inte av misstag ska kunna göra förändringar i vitala

Page 37: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.13. TRUSTEDHARDWARE OCH TRUSTEDCOMPUTING 27

funktioner i hårdvaran samt att om en förändring i BIOS måste ske innan opera-tivsystemets uppstart blir det svårare för virus att attackera denna funktionalitet.Om BIOS som standard går att uppdatera via mjukvara måste operativsystemet tahand om och skydda mot otillåten förändring.

Konfidentialitet, integritet och tillgänglighet påverkar och påverkas av hårdvaransflexibilitet. Ett för flexibelt system kan äventyra systemets integritet genom attöppna det för fjärrattacker. Ett system som saknar flexibilitet kan sänka tillgäng-ligheten om hårdvaran behöver uppdateras eller bytas ut. Flexibiliteten i sig kanalltså vara en grund till att det är svårt att ha tillit till dagens informationsteknologi[18]. En av operativsystemets roller är därför att skydda hårdvaran från den härtypen av attacker. Problemet ur operativsystemets synvinkel är att hårdvara startasföre mjukvara (dvs operativsystem, drivrutiner osv). Operativsystemet kan därförinte på egen hand ge ett fullgott skydd mot rena hårdvaruattacker.

2.13 Trusted Hardware och Trusted Computing

Trusted Hardware och Trusted Computing bygger på antagandet att bristande tro-värdighet ärvs mellan olika versioner av program och att detta även gäller förolika program– och hårdvarulager. Om en drivrutin inte är tillförlitlig kan intede program som använder denna vara det heller enligt Bishop och TCG [6, 42].Enligt principen bakom Trusted Computing (TC) gäller regeln även åt andra hål-let: En tillförlitlig mjukvara kan inte byggas på en otillförlitlig hårdvara [42]. TCeftersträvar därför målet att skapa säker hårdvara vilken kan vara tillförlitlig ur ensäkerhetsaspekt. Man hoppas på så sätt skapa en kedjereaktion därhelasystemetkan bli betrott. Under rapportens tidigare delar har det påpekats att:

• Konfidentialitet, integritet och tillgänglighet är basen för dator- och datasäk-erhet.

• Tillit och trovärdighet är fundamentala begrepp, användare, administratöreroch utvecklare måste ibland lita på att en programvara eller ett system tarhänsyn till de tre begreppen konfidentialitet, integritet och tillgänglighet pårätt sätt.

• En betrodd part är någon som kan bryta vår säkerhet.

• Hot är allt som riskerar att bryta mot något av de tre begreppen.

• Stark identifiering, kryptering och dokumentsignering är hjälpmedel för attuppnå en bas för tillit.

Page 38: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

28 KAPITEL 2. SÄKERHET

• Attacker finns, sker och går inte alltid att skydda sig mot genom systemetsdesign – trots stark identifiering och kryptering.

Genom att befästa en Trusted Computing Base (TCB) vilken inkluderar alla skyd-dsmekanismer i ett system (hårdvara, mjukvara och firmware) vill man i TC skapaen bas för tillit enligt Bishop [6].

För att en säkerhetsmekanism som till exempel en brandvägg ska vara effektivmåste den vara aktiverad redan innan nätverkskortets drivrutiner laddas in. Dettagäller så gott som alla säkerhetsrutiner. TC innebär att all mjuk- och hårdvaramåste certifieras ur säkerhetssynpunkt. Certifieringen säger i detta fall att en hård-eller mjukvara fungerar på det sätt som den ska, utan att äventyra exekveringen avandra program [23, 42]. Även elektronikbranchen har pratat en tid om TC som ettalternativ till dagens paradigm med mjukvarubaserade säkerhetslösningar enligtKocher [17]. En del av problematiken i TC är att befästa struktur i hårdvara somborgar för säkerhet. En viktig del är att skapa ett system som är litet nog för attdet i sin helhet ska kunna vara föremål för analys och test. Tanken är att det skavara möjligt att försäkra sig om systemets funktion. Genom att skapa ett enklaresystem ökar möjligheterna till test och verifikation, därmed kan en högre nivåav tillit uppnås. En avvägning kan dock komma att uppstå mellan enkelhet ochfunktionalitet [6].

Ett område där tillit är ett centralt begrepp är e-handel. För att det ska kunnafungera behöves till exempel följande former av tillit:

• Båda parter i ett e-handelsavtal måste veta att en överenskommelse har skettmed rätt person.

• Båda parter måste kunna lita på att den information som lagras i respektivesystem lagras på ett säkert sätt.

• Båda parter måste kunna lita på båda systemens integritet.

• I många fall krävs att man kan lita på att överföringen av data är privat ochatt mottagaren har tagit emot de meddelanden som skickas.

Den springande punkten i e-handel är att båda parter måste lita på varandras sys-tem. Det är där TC blir aktuellt. Genom att båda parter vet att den andra använderett system baserat på en TCB kan båda känna sig tryggare i transaktionen.

Page 39: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.14. TRUSTEDCOMPUTING PLATFORM ALLIANCE 29

2.14 Trusted Computing Platform Alliance

Trusted Computing Platform Alliance (TCPA) är företaget som skapade standar-den för en hårdvarubaserad säkerhetsmodul. Företaget bytte sedermera namn tillTrusted Computing Group (TCG). Trusted Platform Module (TPM) kallas denmikrokontroller som ska fungera som huvudsakligt stöd till datorns övriga hård-vara. TPM Software Stack (TSS) är specifikationen över drivrutinsstacken för attkommunicera med en TPM. För att en TPM ska fungera med en PC krävs ävenen klientspecifikation för denna plattform. Även om TPM och TSS definierar destandarder som krävs brukar hela teknologin benämnas TCPA. När benämningenTCPA används är det alltså oftast TCGs koncept för TC och TCB som menas. Änså länge täcker specifikationen bara PC-datorer men det är meningen att den såsmåningom även ska täcka PDAer, mobiltelefoner och inbyggda system. Speci-fikationen säger vad en TPM ska innehålla samt hur gränssnittet ska se ut.

Kuhlman anser att en TPM kan liknas vid ett smartcard i det att den är passiv; densvarar på kommandon från CPUn och den försöker aldrig ta över kontrollen [18].Den innehåller dock funktionalitet för att stänga av sig själv och gå ner i testläge.Om så sker stoppas alla TPM-beroende processer. Förutom att den kan verifierasin egen funktionalitet innehåller en TPM dedikerad hårdvara för kryptering ochsignering av data [42]. För kryptering ska en TPM innehålla [42]:

• En slumptalsgenerator

• Funktionalitet för att generera asymmetriska nycklar.

• En processor för beräkning av asymmetrisk kryptering (RSA).

För signering av data används SHA-1 (se avsnitt2.10). Det finns även funktion-alitet för att ge skydd från fysisk manipulation av hårdvara samt beräkningsbaser-at skydd av intern och extern mjukvara. För att en TPM ska kunna användaskrävs ett väl definierat gränssnitt mot operativsystemet. Eftersom TCPA är avsettatt fungera oberoende av vilket operativsystem som ska köras på datorn måsteuppgiften att göra en sådan specifikation ligga hos TCPA. Om specifikationenskulle göras av en operativsystemstillverkare skulle allt för stor del bli specialan-passat för deras system. Specifikationen för en TPM (TCPA v. 1.2b) innehålleringen information om vad en processor ska innehålla annat än ett antal kontrollsig-naler så som reset och clear – funktionalitet vilken normalt ingår i en processor[42].

Page 40: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

30 KAPITEL 2. SÄKERHET

En del av TPM-kretsens permanenta minne används för att lagra två 2048 bitarsnyckelpar, dvs fyra nycklar. Det första nyckelparet skapas av tillverkaren. Nyck-elparet är även en unik verifierare för chipet. Det andra genereras av användaren,när detta sker skapas även en hemlighet som krävs för att användaren ska kunnaanvända sin nyckel. Den första nyckeln kan användas för att verifiera systemetoch den andra för att verifiera användaren. Ingen av nycklarna är dock portabla.De är alltså knutna till det system i vilket de skapades [42]. Ingen av de privatanycklarna lämnar någonsin TPM-kretsen och de blir inte synliga av någon annananvändare eller program [18, 42].

Under drift har en TPM även förmåga att skapa ett flertal extra privata och publikanycklar. Kretsen kan bland annat skapa nycklar för förflyttning av hemlig datasamt för vissa applikationsspecifika transaktioner. Både nycklar som inte går attkomma åt utanför kretsen samt nycklar för vanlig kryptering kan skapas [18, 42].

Figur 2.3: Specifikationen avser de två delarna CRTM och TPM samt TSS(drivrutin). Bilden är anpassad från TCPA v.1.1b [42]

Page 41: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

2.14. TRUSTEDCOMPUTING PLATFORM ALLIANCE 31

Mjukvarudelen består av två typer: Trusted platform Support Service vilken im-plementerar komplexa funktioner som kräver multipla anrop till TPM-kretsenoch symmetrisk krypteringsfunktionalitet. Den andra delen kallas “Core Root ofTrusted Measurement” (CRTM). CRTM lagras normalt i systemets firmware, tillexempel BIOS. Syftet är att den ska starta i ett tidigt stadium av bootsekvensenoch beräkna hashvärden av all kod som ska köras i systemet. Denna lagras sedan iTPM-kretsens minnen och stack. Idén är att man vill skapa en induktiv kedja frånhårdvara upp till operativsystemet vidare upp i applikationerna [18, 42]. TrustedBuilding Block i figur 2.3 på föregående sida är kombinationen av CRTM, TPMoch kopplingen av dessa mot moderkortet [42]. För att TCPA ska vara så sys-temneutral som möjligt tas det ingen hänsyn till operativsystemssystemspecifikabootloaders [18, 42]. Kretsen och mjukvaran syftar alltså till att skapa en miljödär användarens hemligheter ska hållas konfidentiella där nycklar och signaturerlagras i chippet och systemets integritet inte ska kunna komprometteras [18, 42].

Page 42: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång
Page 43: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

3Next Generation Secure ComputingBase

Under 1998 diskuterades idén att göra Microsoft Windows till ett säkert opera-tivsystem för första gången på allvar. Det dröjde dock till 2002 innan ett förstaförslag hade utarbetats. Förslaget fick kodnamnet Palladium och ingick i ett ini-tiativ som Microsoft valde att kalla Trusted Computing (TC). Både förslaget ochinitiativet bytte sedermera namn. Palladium blev Next Generation Secure Com-puting Base (NGSCB) och Trusted Computing bytte namn till Trustworthy Com-puting. Eftersom NGSCB är ett produktnamn används det som benämning förteknologin i denna rapport. Förkortningen “TC” är däremot ett vedertaget uttryckinom forskning i sin betydelse Trusted Computing och används därför på dettasätt i rapporten. NGSCB är ett tillägg till Microsofts operativsystem. Lösningenär omfattande och involverar både hård- och mjukvara.

Systemets är menat att förstärka möjligheterna till stark identifiering, skydd avkänslig data samt skydd av upphovsrättsskyddat material [28, 24]. Dessa mål skauppnås genom fyra huvuddelar [25]:

• Stark processisolering – Vissa program får endast exekvera i en specifik delav minnet, fysiskt åtskilt och dolt från övrigt minne. Syftet är att program-mets minnesbuffer inte ska kunna modifieras från övriga delar av systemet.

• Förseglad lagring – Känslig data, till exempel speciell NGSCB-data, lagraskrypterat.

• Attestering (säker körning) – Attestering sker när en bit kod digitalt signeraroch intygar att data kommer från en kryptografiskt identifierbar stack.

• Säkra vägar till användaren – Till exempel krypterad kommunikation fråntangentbord och mus.

33

Page 44: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

34 KAPITEL 3. NEXT GENERATION SECURECOMPUTING BASE

Ur ett säkerhetsperspektiv hade det varit bäst om Windows och dess exekver-ingsstack designades om från grunden [23, 25]. Tyvärr skulle en sådan åtgärdinnebära att alla program som vill dra nytta av NGSCB behöver skrivas om. Vi-dare skulle en sådan design medföra att bakåtkompatibiliteten helt eller delvis fårstryka på foten. Enligt en tidig specifikation av NGSCB krävdes också att allaprogram specialskrevs för att kunna dra nytta av den funktionalitet NGSCB haratt erbjuda. På grund av ett svalt mottagande från industrin ändrades detta ochMicrosoft valde istället att göra NGSCB till en form av ett säkerhetstillägg (sebild 3.1).

Figur 3.1: Enligt Microsofts specifikation [28, 23] måste ett Nexus kunna kom-municera direkt med alla delar i ett system utom de processer som körs i userspace.

Page 45: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

35

En så kallad betrodd zon har blivit tillagd i det nya operativsystemet. Denna bestårav tre delar: betrodda agenter, en kärna kallad “Nexus”, samt hårdvarukryptering(se figur3.1på föregående sida). En betrodd agent kallad Nexus Computing Agent(NCA) är ett program, en del av ett program eller en tjänst som är verifierad av enbetrodd källa. Den betrodda agenten fungerar som ett certifikat för att avgöra omett program är vad det utger sig för att vara [25]. En huvudfunktion i ett Nexusär att det måste kunna attestera en NCA mot hårdvara samt lagra dess krypter-ingsnycklar. Ett Nexus måste kunna fråga operativsystemet om standardtjänstertill exempel att öppna filer och skicka data över nätverket samt ta emot data frånanvändaren (I/O). Nyckelförflyttning mellan olika NCA- och Nexusversioner ären standardtjänst för nyckelhanteringen och måste därför även den administrerasoch hanteras av ett Nexus. Eftersom operativsystem är multitrådade miljöer kom-mer det att vara nödvändigt att ett Nexus ska kunna dela sin tid mellan olika NCA.För att förstärka kopplingen mellan Nexus och NCA måste ett Nexus innehållakod som går att duplicera mellan olika NCA. Koden i ett Nexus måste dessutomvara så enkel att den går att analysera och testa i sin helhet (se designprincipernaför TC på sida27). En tanke är att det ska ska vara så enkelt att vem som helstskulle kunna skriva ett eget. Användare och utvecklare ska dessutom kunna startavilket Nexus de vill [25]. På så sätt ökar systemets flexibilitet och användarnasvalmöjligheter.

Microsoft har redan från början diskuterat hur stark identifiering av användarenkan ske. Två av deras artiklar diskuterar främst smartcards men även olika formerav biometriska system för stark identifiering. På grund av de problem som finnsmed biometriska system rekommenderas att det alltid ska finnas backupsystemnär dessa används för identifikation. [27, 28]

För att lösningen ska fungera krävs stora förändringar i hårdvara. Enligt den infor-mation som Microsoft släppt ska huvuddelen av krypteringen ske i hårdvara tillskillnad från nuläget då all kryptering sker i mjukvara. I dagens läge måste hård-diskryptering i realtid lösas genom en separat hård/mjukvarulösning. Den hård-vara som kommer att krävas för att NGSCB ska fungera är enligt Microsoft [23]:

• Speciell processor för NGSCB.

• Chipset (moderkort) specialanpassat för NGSCB.

• En dedikerad SSC (Security Support Component) baserad på specifikatio-nen för TPM version 1.2.

• Krypterade interaktionsverktyg (t.ex. Tangentbord och mus).

• Krypterad videohårdvara inklusive grafikprocessor.

Page 46: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

36 KAPITEL 3. NEXT GENERATION SECURECOMPUTING BASE

I de flesta fall måste tangentbord, mus, moderkort, processor och grafikkort by-tas. Man har valt att till vissa delar följa standarden för Trusted Platform Module(TPM) och dess mjukvara från Trusted Computing Group (TCG) (se sid.29 fören resumé av TCPA).

Designen som den ser ut nu fokuserar till största delen på konfidentialitet ochintegritet. Tillgänglighetsaspekten kommer i andra hand. Det ska vara möjligt attvia ett grafiskt användargränssnitt sätta upp regler för hur de olika certifikaten ochprogrammen ska kunna köras [25].

Ett möjligt användningsområde för NGSCB är Digital Rights Management (DRM).DRM skapades för att skydda upphovsrättinnehavaren från illegal kopiering avdennes verk. Ett vanligt sätt att skydda digitala verk till exempel program ärgenom olika former av licensystem. Användes NGSCB skulle det vara möjligtatt kryptera ett program så att det endast går att köra på den dator för vilken detär certifierat. Enligt Microsoft är DRM bara ett av de områden där NGSCB kananvändas. Systemets huvudfunktion är dock att förstärka möjligheterna till starkidentifiering och skydd av känslig data [28, 24].

3.1 Hårdvarukrav i NGSCB

NGSCB kräver specialiserad hårdvara, bland andra en TPM baserad på specifika-tionen från TCG. En TPM är en krets monterad på moderkortet (se avsnitt2.14).

Enligt TCPA-specifikationen är det menat att TPM-kretsen ska sitta på ett sådantsätt att den har nära kontakt med sydbryggan (se bilden nedan). Genom att låtaTPM-kretsen vara sammankopplad med sydbryggan istället för till exempel direktmot CPUn får man större modularitet och man blir inte blir bunden mot en vissprocessortillverkare. Tangentbord och mus kan kommunicera direkt med USB-porten om TPM-kretsen är avslagen, annars är de tvingade att kommunicera viaden TPM-kontrollerade porten [29]. Nedan beskrivs de delar vilka behövs för attNGSCB ska kunna användas.

Trusted Platform Module

En Trusted Platform Module (TPM), eller Security Support Component (SSC)som Microsoft kallar det, är en mikrokontroller som sköter kryptering, nyckel-generering och signaturgenerering.

Page 47: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

3.1. HÅRDVARUKRAV I NGSCB 37

Figur 3.2: En ideskiss över hur ett blockdiagram över ett moderkort kan tänkas seut för moderkort baserade på AMDs processorer [29]. Bilden anpassad från [29]

Infineon SLD 9630 TT 1.x [13, 14] eller Atmel AT97SC3201 [4] kan till exempelanvändas som Security Support Component (SSC). SLD 9630 är liksom Atmelslösning, en mikrokontroller med inbyggd slumptals- och krypteringsnyckelgen-erator (asymmetriska nycklar). Mikrokontrollern följer TCPA version 1.1b. Deninnehåller även en hårdvarustödd hashgenerator (SHA-1, MD-5) samt en hård-varustödd RSA-accelerator. Båda säger sig ha en “True Random Number Gener-ator”. Specifikationen tillåter dock semi-slumptal så länge de kan få nya initier-ingsfrön baserade på äkta slumptal.

Chipset

Ett chipset på ett moderkort har till uppgift att sköta kopplingen mellan moder-kortets olika delar. För att stödja krypterad kommunikation mellan moderkortetsolika komponenter krävs ett chipset med inbyggt stöd för en TPM och krypteradprocessorkärna [24].

Page 48: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

38 KAPITEL 3. NEXT GENERATION SECURECOMPUTING BASE

Processor

Ett krypterat instruktionsset krävs för att förhindra att hemligheter avslöjas viaövervakning av minnesbuffer och processorcache [24, 23]. Eftersom endast vissadelar av minnet krypteras är det fördelaktigt med ett krypterat instruktionsset tillprocessorn [24, 23].

Videohårdvara

Dataströmmen mellan moderkort och grafikkort krypteras. Målet är att data inteska gå att läsa direkt från grafikkortets minnesbuffer [24, 23].

I/O

Kommunikation till och från mus och tangentbord ska krypteras [24, 23].

3.2 Kompatibilitet

Kompatibilitet mellan olika system samt mellan system och hårdvara är ofta enviktig fråga, både för företag och för privatkunder. Huruvida NGSCB kommer attge problem mellan olika system är en väl befogad fråga, speciellt då man från Mi-crosofts sida ofta frångått standarder eller försökt skapa sina egna utan stöd frånövriga industrin. Microsofts implementation av Java är ett exempel. Microsoftblev 1997 stämda av Sun och förlorade rätten att kalla sin produkt “Java”. Förde-len är i det här fallet att teknologin delvis är skapad i samarbete med Microsoft,att de inte har direkt kontroll över hur utformningen av en TPM ska se ut, samt attutvecklingen av TCPA specifikationen till stora delar har varit en öppen process.

3.3 System-system kommunikation

Kommunikation mellan två system kommer att ske krypterat i den mån det ärmöjligt. Microsoft har än så länge inte kommenterat kommunikation mellan Win-dows och Linux. Hårdvarudelen är dock standardiserad, det kommer därför attvara möjligt att skapa öppna system som klarar att använda en SSC. Tyvärr är in-formationen om hårdvarustandarder inte helt offentlig ännu. Det enda som finns

Page 49: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

3.4. NGSCBOCH TCPA 39

är TCPA-standarden [42]. Hur standarden kommer att följas finns det ingen in-formation om. Möjligheterna är dock intressanta ur ett företags synvinkel. En ap-plikation skulle kunna designas på så sätt att ett dokument endast skulle kunnaöppnas av en given person. Ett PDF-dokument skulle till exempel kunna knytasmot en given person eller ett givet antal personer. På så vis skulle till exempel enkund på en bank kunna försäkra sig om att dennes filer endast lästes av denneshandläggare.

3.4 NGSCB och TCPA

Enligt specifikationen av NGSCB vill Microsoft att deras SSC ska följa TCPAversion 1.2 [23, 24, 28, 29]. TCPA 1.2 specificerar en krets kallad Trusted PlatformModule samt dess drivrutiner. En SSC är därmed en TPM plus åtmindstonde vissadelar av den mjukvara som ingår i TCPA. Kretsen innehåller funktionalitet för attlagra och skapa kryptografiska nycklar. Den erbjuder även möjligheten att lagraen del övrig data på ett effektivt och säkert sätt [42].

Kuhlmann liknar en SSC vid ett smartcard. Likheten ligger i att en SSC det attden är passiv; den svarar på kommandon från CPUn och den försöker aldrig taöver kontrollen [18]. En del av SSC-kretsens permanenta minne används för attlagra fyra 2048 bitars nycklar, dvs två nyckelpar. Det första nyckelparet skapasav tillverkaren. Detta nyckelpar är unikt för chipet. Det andra genereras av an-vändaren, när detta sker skapas även en hemlighet som krävs för att användarenska kunna använda sin nyckel. Dessa nycklar kan användas för att identifiera bådemaskinen och ägaren.

Ingen av de privata nycklarna lämnar någonsin SSC-kretsen och de blir inte syn-liga av någon annan användare eller program [18, 42]. Kretsen kan bland annatskapa nycklar för förflyttning av hemlig data samt skapa nya nycklar av olika slag.Både nycklar som inte går att komma åt utanför kretsen samt nycklar för vanligkryptering kan skapas. Idén är att man vill skapa en induktiv kedja av trovärdighetfrån hårdvara till operativsystemet vidare upp i applikationerna. Kretsen och dessmjukvara syftar till att skapa ett stöd för en miljö där användarens hemligheter skakunna hållas konfidentiella och där systemets integritet inte ska kompromettera.

Page 50: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

40 KAPITEL 3. NEXT GENERATION SECURECOMPUTING BASE

3.5 NGSCB och öppna standarder

Den hårdvara som används till NGSCB ska innehålla standardiserade anrop. Där-för kommer det att vara möjligt med en version av “Trusted Linux”. Microsoft ärdock väldigt fåordiga om hur de kommer att stödja kommunikation mot andra op-erativsystem. Enligt kritikerna verkar det dessutom som om det i specifikationenöver TCPA finns problem som innebär en risk att Gnu Public License (GPL) blirobrukbart. Anderson anser att NGSCB öppnar för stöld av öppen källkod genomatt ett företag kan ladda hem koden, kompilera den som en krypterad NCA ellerNexus. Koden kan sedan distribueras och lagras krypterad. Eftersom hela förlop-pet är skyddat av stark kryptering försvårar det för upphovsmannen att övervakasina intressen. [3]

GPL bygger på att den som gör förändringar i öppen källkod publicerar sina förän-dringar under GPL. Genom att förändra en bit kod från ett GPL-projekt kan enprogrammerare kompilera sitt program och sedan avhålla sig från att publicerasitt arbete under GPL. Det som skett i detta fall är en stöld av offentlig egendom.Eftersom koden blir kompilerad med en TCPA-maskin är den starkt krypterad ochingen insyn i huruvida stulen kod använts är möjlig.

De legala problemen med TCPA är därmed uppenbara. Standarden kan om denmissbrukas innebära en risk för rättssäkerheten hos den enskilda människan. Vemsom helst kan bli bestulen på upphovsrättsskyddat material i form av källkod. Förett företag skulle den direkta konsekvensen bli att om stöld av en företagshem-lighet (källkod) sker eller om otillåten mjukvara används i produktion av innehållkommer det inte att kunna upptäckas [5, 6].

3.6 Systemets svagheter

TCPA och därmed NGSCB är väldigt hårt knutet till kryptering. Om svagheteri någon av krypteringsalgoritmernas olika delar skulle upptäckas vore systemetsintegritet hotat. Det ställer stora krav på en öppen utveckling av systemet. Allabuggar och svagheter måste snabbt kunna hittas, offentliggöras och lösas [2, 6, 8,15].

Stor vikt läggs vid att stoppa avlyssning av tangentbordet [23, 24, 26, 27, 28].Tangentbordsavlyssning nämndes som en hotbild med resulterande attack i avsnitt2.5. En svaghet som Microsoft tog upp under WinHec 2004 innebär trots allt enmöjlighet till genomförandet av en sådan attack genom USB-porten. Attacken

Page 51: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

3.6. SYSTEMETS SVAGHETER 41

bygger på att USB inte ännu har fullt stöd för NGSCB eller TCPA.

1. Ett virus tar sig in i datorn och programmerar om en av hårdvarorna kop-plade till en USB port på så sätt att den kan köra som ett tangentbord.

2. Angriparen kopplar ur det riktiga tangentbordet och låter den omprogram-merade hårdvaran agera tangentbord.

3. Den omprogrammerade programvaran kan nu utföra attacken.

Problemet är lösbart enligt Microsoft och man vill lösa det genom att göra förän-dringar i moderkortets USB-kontroller. Fördelen är att att användaren inte behöverskaffa nya USB-produkter [29].

Systemets största långsiktiga svaghet ligger i det här fallet inte hos Microsoft ellerTCG – utan hos tillverkarna av TPM-kretsar. Varken Atmel eller Infineon svararpå frågor om hur de i sina mikrokontrollers genererar slumptal. Båda påstår dockatt de kan generera äkta slumptal [14, 13, 4]. Enligt Schneier måste en äkta slump-talsgenerator uppfylla tre kriterier för att den ska duga till en kryptografisk an-vändning [37]:

1. En serie tal ser slumpmässig ut. Detta innebär att den klarar alla kända statis-tiska tester som kan användas för att avgöra detta, texχ2-test.

2. Ett tal genererat med algoritmen är oförutsägbart: Givet total kännedom omden algoritm och den hårdvara som används måste det vara komputationelltotroligt att förutsäga vad nästa slumptal kommer att vara.

3. En sekvens ska inte vara reproducerbar på ett tillförlitligt sätt. Slumptals-generatorn ska ge olika resultat vid två olika körningar trots att man läggerin exakt samma startvärden.

Om de två första egenskaperna uppfylls har man ett pseudoslumptal. Alla tremåste alltså uppfyllas för att man ska ha ett äkta slumptal [37]. Specifikationenöver TCPA säger att det är önskvärt med äkta slumptal. Specifikationen sägerdock att det är det acceptabelt att generera pseudoslumptal så länge kretsen närsom helst kan få ett nytt initieringsfrö baserat på ett äkta slumptal [42]. Det är inteomöjligt att skapa äkta slumptal i elektronik. Ett sätt att göra det på är genom attmäta brusnivåerna hos en okopplad MOSFET transistor. Beroende på typ produc-erar MOSFET transistorer vitt eller rosa brus (även kallat “flicker noise”), enligtSarpeshkar [36]. Fördelen med denna metod är att den går att använda som enintegrerad del i en IC-krets. Enligt Kerckhoffs princip ska hemligheten ligga i

Page 52: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

42 KAPITEL 3. NEXT GENERATION SECURECOMPUTING BASE

nyckeln, inte i algoritmen. Om algoritmen blir stulen har därmed inte systemettappat sin integritet [15, 40]. Därför kan det sägas att det är en svaghet att inteoffentliggöra allt som rör systemets viktigaste delar.

En något mindre långsiktig svaghet ligger i valet av hash-algoritm i TPM-kretsen.Enligt defininitionen för hashalgoritmer är de krockfria om och endast om man en-bart kan hitta en krock med hjälp av brute force (se även sida24) [6, 40, 37, 22].Wang et. al. [44] fann i Februari en svaghet i den mest använda hashalgoritmen,SHA-1. Det deras resultat tyder på var att det går att hitta krockar i hashsummor-na på endast269 operationer. Innan deras resultat kom var det bara brute-forceattacker som fungerade. Dessa gav en hastighet av280. Även om uppsnabbningenär enorm tar det ändå väldigt lång tid att beräkna så många nycklar. Om resultatetstämmer måste man ändra TCPA-standarden till något bättre. Lyckligtvis finns detalternativ, bland andra SHA-256, vilken fortfarande anses säker.

Slutligen ska påpekas att NGSCB inte begränsar körandet av redan certifieradmjukvara. Om en script-miljö som Visual Basic eller Java tillåts kan det innebäraen risk när programmen används på ett legitimt sätt för att skapa säkerhetsprob-lem. Hotet nämns under avsnitt2.5.

3.7 Ekonomiska aspekter

Dagens kostnader för Windows-licenser är en betydande utgift för de flesta före-tag. Ross Anderson [3] tror att NGSCB är ett försök av Microsoft att ytterligarestänga in sina kunder och förhindra dem från att välja andra system än Windows.Påståendet att hårdvaran kommer att öka i pris stöds till viss del av Microsoftsegna uttalanden [24]:

“When NGSCB computers become available, companies, governments,and individual users will be able to see that the new machines are signif-icantly better at protecting secrets and preserving privacy. That shoulddrive upgrades and enable hardware makers to charge a premium fortheir new products.”

Hårdvaran kommer alltså mest troligt att bli dyrare på grund av ökad efterfråganmen hur mycket dyrare är svårt att förutsäga eftersom konkurrensen på hårdvaru-marknaden är ganska stor [3, 24].

Eftersom det kommer att bli svårare och dyrare för kunderna att byta från Microsoft-miljö till en alternativ miljö skulle priserna på Microsofts programlicenser kunna

Page 53: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

3.7. EKONOMISKA ASPEKTER 43

öka till det dubbla, enligt Anderson [3].

Eftersom stora delar av hårdvaran måste bytas ut för att man ska kunna dra nyttaav NGSCB skulle det med stor sannolikhet innebära att det vore mer ekonomisktatt byta en hel dator än endast de komponenter som behövs för ett företag.

Ett Windows som stödjer TCPA skulle sannolikt öka ett företags omkostnaderjämfört med både Linux och ett Windows utan TCPA. Säker mjukvara är alltiddyrare att producera och underhålla (för tillverkaren) än osäker mjukvara. Sta-bilitetsproblem är vanliga i samband med nya produkter – något som markantkan öka omkostnader under en tid. De ökade omkostnaderna för programvarorskulle kunna sparas in till viss del på grund av lägre mängd intrång, bättre rutinerför dokumenthantering samt färre lyckade virusattacker – tills hackare anpassatsig. Precis som datasäkerhet, blir attackerna bättre, smartare och mer komplexa[2, 6, 37].

Page 54: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång
Page 55: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

4Alternativ till NGSCB

En av nackdelarna med NGSCB är dess väldigt specifika kompatibilitetskrav. Föratt man ska kunna dra nytta av teknologin måste större delen av hårdvaran bytasut. Därför kan det vara både ekonomiskt och praktiskt fördelaktigt att titta närmarepå alternativa lösningar. Fördelen med de alternativ som denna rapport behandlarär att de är tillgängliga nu, man behöver alltså inte vänta till 2006 för att kunnaköra en klient och 2007 för en server. Inom ett lokalt närverk är det möjligt attskapa ett fullödigt skydd liknande det som NGSCB vill erbjuda.

Eftersom NGSCB syftar till att skydda varje nod genom säker åtkomst från nätet,säker åtkomst från I/O enheter, samt genom säker exekvering av program krävs enlösning som tar hänsyn även till dessa aspekter. För att hindra att illvillig kod körspå en dator krävs en strikt övervakning av vilka processer som får köra och vad degör. NGSCB löser endast övervakningen av vissa certifierade applikationer vilkakräver en NCA och ett Nexus för sin exekvering. Våra tre huvudmål blir därmedatt:

• Skydda känslig data på disk.

• Förhindra exekvering av otillåtna program.

• Begränsa åtkomsten mot nätverket effektivt.

Det finns ett flertal sätt att skydda data som lagras på disk. Ett sätt är att användaen smartcardlösning se avsnitt2.7.1på sidan17, en annan vore att använda ettkrypterat filsystem som till exempel Encrypted File System (EFS) till Windows2000.

Problemet med otillåtna program som exekveras kan lösas med hjälp av ComputerIntegrity System (se nedan).

45

Page 56: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

46 KAPITEL 4. ALTERNATIV TILL NGSCB

För att begränsa åtkomsten mot nätverket kan hårdvarubrandväggar användas påvarje nod. Det skulle dock kunna bli dyrt att förse varje nod med en extern hård-varubrandvägg. Genom att varje dator har en egen hårdvarubrandvägg kan åtkom-sten till nätverket effektivt begränsas till en viss server.

4.1 Computer Integrity System

Computer Integrity System (CIS) från SE46 AB är ett system som används frånatt hindra icke certifierade processer från att starta. Systemet laddas så tidigt sommöjligt under bootsekvensen, innan drivrutiner och program. CIS använder enmodifierad SHA-1 för att skapa hash-summor av de program som tillåts exekvera.På så sätt skapas ett unikt certifikat för varje program. Dessa lagras antingen in-ternt i en lista eller externt på en server. För att skapa certifikaten används X.509som är en defacto-standard för PKI [39]. X.509 används även för SSL i web-läsaresom till exempel Firefox och Internet Explorer [12].

Eftersom SHA-1 länge ansetts som problematisk ur säkerhetssynpunkt har SE46valt att lägga filens storlek till kontrollsumman. Genom denna åtgärd reducerasandelen möjliga nyckelkrockar eftersom sannolikheten att det ska finnas en krockbland olika data av samma storlek är betydligt mindre än sannolikheten att det skaske utan reglerad filstorlek [39].

Varje gång en process startas beräknas en hash-summa på den exekverande filen.Filens storlek läggs till resultatet och detta jämförs sedan mot den interna listanav certifikat. Finns processen registrerad kan den startas obehindrat.

Systemet stoppar inte processer som genom programvarufel öppnar säkerhetshål.Det fungerar dock utmärkt för att hindra illvilliga program från att köras. Om ettprogram på något sätt blivit modifierat i efterhand genom till exempel en otillåtenuppdatering eller virusinfektion hindras dess exekvering [39].

Listan med certifikat som används under certifieringsprocessen hämtas från endistributionsserver antingen manuellt eller automatiskt. Detta medför att systemetkan arbeta helt frikopplat från servern [39].

Fördelen med CIS jämfört med till exempel en virusskanner är främst att den listasom krävs för att hålla reda på vilka applikationer som får köra är mycket mindreoch lättare att kontrollera än en lista med vad som inte får köra. CIS kräver därmedmindre prestanda än en traditionell virusskanner. Dessutom kontrollerar CIS ak-tivt de filer som används i ett system. Eftersom kontrollen sker varje gång en filstartas blir CIS lösning kraftfullare än en virusskanner som endast kontrollerar

Page 57: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

4.1. COMPUTER INTEGRITY SYSTEM 47

filer passivt. För att CIS ska fungera tillsammans med smartcard-lösningar krävsdock att systemet specialanpassas för enskilda smartcard-lösningar [39].

Figur 4.1: Ett diagram över certifikatdistributionen i CIS, bilden kommer från[39].

Figur4.1visar en schematisk bild av hur applikationscertifikaten hanteras i CIS.

1. Ett modellsystem inventeras och hashsummorna skickas till en certifkathan-terande applikation.

2. Certifikathanteraren skapar applikationscertifikat och distribuerar dessa tilldistributionsservern.

3. Skyddsobjekten hämtar sina certifikat från servern.

4. Skyddsobjekten skickar kontinuerligt loggdata till loggservern.

Genom att alla program som startas verifieras mot den inbyggda databasen medhjälp av en modifierad SHA-1 får systemet flera fördelar:

Page 58: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

48 KAPITEL 4. ALTERNATIV TILL NGSCB

• Det blir svårt att genomföra vissa attacker för att hacka enskilda klienterutan att först knäcka distributionsservern.

• Klienterna blir resistenta mot illvillig kod, till exempel maskar och virus.

• Fördelen med att använda PKI är att systemet blir skalbart.

• En effekt av ett sådant här system är till exempel att en användare inte kanstarta otillåtna program som laddats ner via e-post eller på annat sätt.

Fördelarna är ganska många och väl definierade, men det finns nackdelar också:

• Distributionsservern har ganska stort ansvar, blir den hackad kan det uppståproblem.

• Lösningen lämpar sig bäst i en skyddad miljö och där säkerheten baseras påcentraliserade servrar.

• Om systemet helautomatiseras kan man riskera att det räckte att knäcka endistributionsserver för att få tillgång till alla bakomliggande datorer.

Systemet skulle inom ett större företag framför allt lämpa sig för intern kontroll avvilka processer som körs. Framför allt skulle ett sådant här system hjälpa till medskydd från de problem som uppstår genom användandet av otillförlitliga epost-program. Det är ett problem är att en enda server är en så viktig del i säkerheten, åandra sidan är det lättare att säkra en server än tusen klienter med servermöjlighet.CIS fungerar bäst i en någorlunda homogen miljö. Om flera datorer av samma typmed samma operativsystem och samma program ska användas är det en utmärktlösning.

4.2 Hårdvarubrandväggar

Den 20 oktober 2004 släppte NVIDIA sitt nForce4 chipset [33]. Detta chip inklud-erar en inbyggd hårdvarubrandvägg. Genom att lägga en brandvägg i en dediceradkrets hoppas man kunna minska belastningen på processorn samtidigt som manökar säkerheten genom att en brandvägg är startad redan innan nätverkskretsenens startat. Lösningen som kallas ActiveArmor är en fullständig brandvägg medstöd för Microsofts brandväggs-API. Den kan administreras genom fjärrstyrn-ing samt med hjälp av fördefinierade säkerhetsdefinitioner. Enligt tillverkaren ska

Page 59: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

4.2. HÅRDVARUBRANDVÄGGAR 49

ActiveArmor vara motståndkraftigt mot manipulation: Ett försök att stänga aveller manipulera brandväggsinställningarna resulterar i att nätverksuppkopplingenstängs av. ActiveArmor är kompatibelt med Microsofts brandvägg, uppgifter omkompatibilitet mot andra brandväggar saknas dock för närvarande. ActiveArmorär en intressant lösning eftersom det är den första hårdvarubaserade brandväggensom ligger på vanliga moderbord riktade mot hemanvändare. Det finns framförallt två fördelar med denna lösning [33]:

1. Eftersom lösningen är så nära integrerad med nätverkskortet kommer brand-väggen att vara aktiverad innan operativsystemet startat. Detta innebär attdet inte finns någon möjlighet att starta drivrutinen för nätverkskortet förebrandväggen.

2. Om brandväggen stängs av kommer nätverket att sluta fungera. Om ettskadligt program körs och det försöker stänga av brandväggen kommer an-vändaren omedelbart att upptäcka intrångsförsöket.

En personlig brandvägg belastar inte en dator speciellt mycket ur ett prestanda-hänséende i jämförelse med den säkerhetsfördel den medför. Även om det är enmjukvarubrandvägg skulle det alltså kunna medföra vissa fördelar ur ett säker-hetsperspektiv att ha en sådan installerad, utan att betydande prestandanackdelaruppstår. Det intressanta med en hårdvarubrandvägg är att dess säkerhetsfördelarfinns tillgängliga i ett tidigare stadium än en mjukvarubrandvägg.

ActiveArmor stödjer Microsofts brandväggs-API (installeras automatiskt med Win-dowsXP) [33]. Genom detta kan ett program fritt ändra inställningar samt slå av/påden inbyggda brandväggen utan användarens vetskap så länge användaren är in-loggad med administratörsrättigheter [30].

Att en administratör har fulla rättigheter att förändra inställningarna i en datorär bra, men det är inte bra när vilket program som helst kan göra förändringar ivitala inställningar utan användarens vetskap eller godkännande. Det är mycketvanligt att Windows används i administratörsläge, även om det inte är helt nöd-vändigt. Fördelen med ActiveArmor är att den stänger av nätverkskortet om deninaktiveras. Det räcker dock att en illvillig process öppnar samtliga portar ellerlägger sig själv i listan av betrodda program som får komma åt nätverket fritt.Detta kan ske helt utan att användaren är medveten om det. Istället för att illvilligaprocesser stänger av brandväggen får man alltså illvilliga processer som öppnaralla portar på datorn och på så vis kommunicerar fritt med nätet. Genom ett dyliktförfarande slipper en hackare att nätverket stängs av samtidigt som han öppnarsystemet för intrång.

Page 60: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

50 KAPITEL 4. ALTERNATIV TILL NGSCB

Ett alternativ till ActiveArmor vore att installera en hårdvarubrandvägg utanförsystemet. Optimalt vore om brandväggarna vore osynliga utifrån, det skulle sky-dda nätverket från att brandväggen själv blev komprometterad. Lösningen skulleha fördelen att den inte kulle behövas installeras om annat än vid uppdatering avnätet.

4.3 TCPA tillsammans med GPL-plattformar

Eftersom en TPM med medföljande mjukvaruspecifikation är systemoberoendeär det fullt möjligt att köra ett system baserat på öppen källkod som är betrott.Både Linux och UNIX skulle kunna designas för TCPA [18, 42]. Motståndet inomopen-source rörelsen är dock fortfarande förhållandevis starkt; därför skulle detvara intressant med ett system som kunde utnyttja en TPMs tillitsmodell ävenutan stöd från operativsystemet.

Lie et. al. [19] visade att tillit kan ärvas till en process trots att operativsystemetinte är betrott. Operativsystemet skulle alltså kunna administrera resurser – bådebetrodda och icke betrodda till processerna. Lie et. al. skapade en situation där deexekverande applikationerna varken litade på operativsystemet eller på det externaminnet. Applikationerna satte istället tillit till processorn för att skydda kod ochdata [19].

Att en sådan här applikation är möjlig antyder att tillit inte är operativsystems-beroende [19]. Möjligheten kan alltså finnas att principerna är överförbara tillTCPA.

Page 61: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

5Diskussion

Säkerhet har tidigare inte varit en prioriterad fråga för Microsofts produkter, det ärinte förrän på senare tid som förändringar har gjorts inom detta område. WindowsXP och 2000 är två exempel på produkter med en rad inbyggda säkerhetslösningarmen NGSCB är det första riktigt stora steget mot ett säkrare operativsystem. NärMicrosoft nu har börjat prioritera säkerhetsområdet på allvar krävs att många ap-plikationer skrivs om från grunden för att de ska fungera tillfredsställande i dennya miljön. Kostnaden för denna ökade säkerhet kommer kunderna sannolikt attfå betala i form av högre licens- och produktavgifter [3]. En etablering av NGSCBskulle därför onekligen påverka datorindustrin starkt.

Satsningen kan inte desto mindre ge goda resultat. Det skulle ge användare grundatt lita på att konfidentiell data hålls så hemlig som möjligt. Potentiellt minskarockså spridningen av upphovsrättskyddat material så länge innehavaren av up-phovsrätten har resurser att knyta det mot NGSCB. Om Digital Rights Manage-ment (DRM) blir NGSCBs fokus kommer dock användaren att hamna i kläm efter-som många vill kopiera sina skivor till datorn av praktiska skäl. Om ett Nexusanförtros med tillit och om det samtidigt har full möjlighet att använda tjänsterså som I/O är de en potentiell säkerhetsrisk. Eftersom vem som helst ska kunnaskriva ett Nexus och verifiera NCA-moduler kan det innebära att en illvillig (al-ternativt slarvig) programmerare kan förorsaka stora skador och säkerhetsrisker.

Det är för tillfället överflödigt att införa NGSCB i sin helhet på ett företags samtli-ga maskiner. Såtillvida det inte finns behov av det Microsoftspecifika innehållettill exempel förstärkt DRM. NGSCB skulle framför allt kunna vara av intresse ipublika terminaler (t.ex. uttagsautomater och kundterminaler på kontor). Fördelenmed att använda NGSCB i uttagsautomater är sannolikt att det ytterligare skulleförsvåra extern manipulation av terminalernas hård- och mjukvara.

NGSCB skulle i sin nuvarande form inte ge någon större möjlighet för ökad säk-erhet mot privatkund som är inloggad mot till exempel Internetbanken i sig. De

51

Page 62: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

52 KAPITEL 5. DISKUSSION

enda fördelarna NGSCB skulle medföra mot kund och inom bank är att effektivis-era den starka krypteringen i dataöverföring mellan olika system samt att på etteffektivare sätt kunna hålla kryptonycklar hemliga.

Priset för NGSCB är högt. Eftersom det kräver både stöd i hård- och mjukvarakrävs en nyinvestering i hela miljön. För en dator skulle det krävas helt ny hård-vara samt att all mjukvara som ska köras under NGSCB måste bytas ut. Priset förde komponenter som ingår kommer dessutom att vara betydligt högre, både en-ligt Microsoft och Anderson [3, 24]. NGSCB kommer att kunna användas för attförhindra kunder från att byta operativsystem. Valet av NGSCB-system kommerdärför att vara avgörande för framtida kostnader i mycket högre grad än valet avdatormiljö är idag.

Habet et. al. konstaterar att Trusted Computing Platform Alliance (TCPA) är etttvéeggat vapen då tekniken går att använda både för användarens bästa men äventill att begränsa och kontrollera henne [11]. Hur användarna kommer att upplevaoch vad det kommer att användas till är enligt Habet upp till användarna och deföretag som gått med i TCPA-samarbetet [11].

Det kommer hela tiden nya attacker. SHA-1 blev nyligen knäckt av ett kinesisktforskarteam [44]. Även om det inte innebär en omedelbar fara för säkerheten underden närmaste framtiden måste algoritmen tas bort från specifikationen av TCPA– helst innan en lösning baserad på metoden når marknaden. För NGSCB bevisardet framför allt vikten av öppenhet. När en algoritm blivit knäckt kan man lära signågot av det och skapa ett säkrare system.

Även om NGSCB kan hjälpa till vid stark identifiering av användaren genomatt tillhandahålla säkra interaktionsvägar till denna identifierar det fortfarandebara sig själv mot en extern part. Eftersom inget egentligen garanterar vem sombefinner sig bakom terminalen är kopplingen system-system fortfarande lika o-säker ur identifieringssynpunkt. Det finns viss funktionalitet som försvårar man-in-the-middle attacker (säker lagring av nycklar) men det kommer att medföra enstörre koncentration på attacker mot systemen som sådana. Ett exempel på en så-dan attack är den osäkra kopplingen till USB som Microsoft själva påpekade underWinHec 2004 [29]. Försvårandet av man-in-the-middle attacker och avlyssningförändrar dock inte att de certifikat och signaturer som skapas identifierar plat-tformen och inte människan.

Page 63: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

5.1. ÅSIKTER RUNT NGSCBOCH TCPA 53

5.1 Åsikter runt NGSCB och TCPA

Den vanligaste missuppfattningen runt TCPA och NGSCB är att de är samma sak.Så är inte fallet. NGSCB är ett operativsystemstillägg som använder en TCPA-specificerad krets, en så kallad Trusted Platform Module (TPM). Det är dock santatt Microsoft har haft inflytande över utformningen av TCPA-specifikationerna.

Mycket av den kritik och de åsikter som ventileras runt TCPA är negativ. Medtanke på att världens största mjukvaruföretag är en av initiativtagarna till dennavåg av betrodd datoranvänding är det inte konstigt att vissa användare blir mis-stänksamma. En del av systemet i TMP-kretsarna är dessutom hemligstämplad,även om det bara rör sig om en funktion (slumptalsgenerering) gör det inte kritik-erna mindre kritiska. En av systemets största svagheter ligger i just detta. Ingenav producenterna av TPM-chip som har blivit tillfrågade vill till exempel besvarafrågan om vilken algoritm som används för slumptalsgenerering.

En av de vanligaste åsikterna är att TCPA kan användas för att försvaga upphovs-rättsmännens rätt till sin egen intellektuella egendom [3, 5, 11]. Ofta ser manDigital Rights Management (DRM) nämnas och då i samband med en extremåsikt åt ena eller andra hållet. Bechtold uppmanar oss att minnas att oavsett vilkenteknologi man väljer att granska bör granskaren akta sig för att anta ett allt förfundamentalistisk förhållningssätt. Gör man det riskerar man att missa den klarhetoch insikt som medelvägen kan ge [5]. Anderson, Schneier och Ellison å sin sidaväljer att förhålla sig kritiska, både till TCPA [3] och till PKI [9]. Kritikerna tarupp två poänger som jag finner speciellt intressanta:

1. Stöld av källkod kan inte förhindras/kontrolleras på ett tillförlitligt sätt.

2. Produktion av material med hjälp av stulen programvara skulle inte kunnaupptäckas/förhindras.

Dessa två fall blir oundvikliga i fallet NGSCB då det ger användaren möjlighetatt ladda ner öppen källkod publicerad under Gnu Public Licence (GPL). GPLsäger att om någon gör tillägg eller förändringar i det som är producerat underdensamma måste den som förändrade koden också skicka tillbaka en kopia på sinaändringar till upphovsmannen. Att underlåta att göra detta är stöld av intellektuellegendom. Eftersom NGSCB tillåter kryptering av körbara filer och annat materialkommer en kontroll av detta omöjliggöras (det är dock redan mycket svårt).

Fall två innebär till exempel att ett företag laddar ner en knäckt programvara föratt använda till produktion av annat material. Till exempel skulle ett företag kunna

Page 64: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

54 KAPITEL 5. DISKUSSION

ladda ner en stulen programvara för att producera musik utan att bli ertappade (sebild 5.1) [31]. Här står tydligt att ett program (Sound Forge), vilket är knäckt av

Figur 5.1: Bilden visar innehållet i en av de ljudfiler som följer med i Microsoftsoperativsystem WindowsXP [31].

gruppen Deepz0ne, har använts för att producera filen. Samtliga ljudfiler under[31] är producerade med samma program. Det som antyds i filen är att den blivitproducerad med hjälp av en knäckt (Microsoft använder ofta ordet “stulen”) pro-gramvara. Det är högst osannolikt att ett sådant här mönster skulle uppstå av enslump.

Om Anderson och Kuhlmann har rätt i att NGSCB kan vara ett verktyg för attstärka DRM verkar det som om även motsatsen råder: På grund av den starkakrypteringen i NGSCB går de att utforma programvaran så att endast de delarsom inte är stulna kör i den okrypterade delen av minnet. De delar som är stulnakan mycket väl gömmas i en NCA eftersom denna tekniskt sett kan innehålla vadsom helst (förutom attesteringsfunktionalitet).

Enligt specifikationen för NGSCB ska “i princip vem som helst” kunna skriva ettNexus. En NCA är ett program eller en del av ett program eller en tjänst som ärverifierad av en “betrodd” källa. Det framgår dock inte vem som är denna betroddakälla. Enligt Ross Anderson har det kommit fram indikationer på att viss oenighethar funnits inom TCG i denna fråga [11]. Eftersom man inte vet vem som skaverifiera ett Nexus vet man inte heller vem som får skriva ett dylikt. Om denbetrodda källan är Microsoft eller något annat företag bör man fråga sig om/vaddet kommer att kosta att verifiera ett Nexus. Eftersom det betrodda minnet ärskyddat och dolt från övriga delar av systemet finns risken att det uppkommeren ny typ av betrodda virus och trojanska hästar som ingen virusskanner kan hittaeller rå på enligt Anderson [11].

Så långt verkar det som om NGSCB huvudsakligen är ett verktyg avsett för att

Page 65: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

5.2. ALTERNATIVA LÖSNINGAR TILL NGSCB 55

genom DRM skydda vissa stora företags intressen. I andra branscher, till exempelbilindustrin, finns det en kultur där en defekt vara dras in från marknaden omden kan äventyra kundernas säkerhet. När samma sak sker i programvaruindustrinantar företagen ett förhållningssätt som innebär att kunden i många fall måstebetala för stöd och underhåll. När DRM blir en central del i en produkt på det härsättet kan detta förfarande bli vanligare och spridas i ännu högre grad. Risken för“betrodda” virus och trojanska hästar gör bilden av NGSCB ännu mer oroande.

Det finns dock fördelar med NGSCB, inte minst för banker och andra större före-tag med en nära koppling till sina kunder. En bank skulle med hjälp av NGSCBkunna säkerställa kommunikationen mot en av sina viktigare kunder genom attdela ut en specialinstallerad dator vilken bara får användas för bankärenden. Efter-som ett mer homogent system skulle kunna skapas (ur ett krypteringsperspektiv)skulle banken på ett bättre sätt ha möjlighet att få tillit till den information somskickas från denna kund. Nettoeffekten skulle bli att bankens tillgänglighet ökarutan att säkerhet eller integritet minskar. Förutsättningen för att denna lösningskulle fungera är att det system som står hos kunden också måste underhållas avbanken. Om banken hade fullständig kontroll över vilka program som exekveradespå datorn kan risken att betrodda virus och trojanska hästar kunna minimeras. Lös-ningen är inte lämplig får mindre kunder såsom privatpersoner och småföretagareeftersom ett företag bara kan ha total kontroll över ett begränsat antal system påett kostnadseffektivt sätt. Genom att låsa kunden vid ett specifikt operativsystem(Microsoft Windows Longhorn) skulle företaget i slutänden riskera att tappa kun-der. Ett sådant här system kan dessutom medföra en risk att användaren lägger förstor tilltro till systemet och glömmer grundläggande säkerhetstänkande. Riskenför olika bedrägerier till exempel phishing skulle därmed kunna öka. Resultatetskulle vara en minskad integritet och säkerhet hos den mindre kunden.

5.2 Alternativa lösningar till NGSCB

NGSCB kan användas till att stärka säkerheten internt i ett företag. Virusdödareär ett alternativt sätt att göra detta men det finns effektivare metoder. ComputerIntegrity Systemet (CIS) har tidigare angivits som ett alternativ. Fördelen gente-mot NGSCB är främst att denna lösning är helt plattformsoberoende. Dess störs-ta nackdel är att den är ganska statisk. Ett system som CIS skulle därför lönasig att använda i system där få förändringar av vilka program som körs sker. Enstor banks kontorsmiljöer skulle därför vara väl lämpade för en lösning som tillexempel CIS. Systemet skulle dessutom ge en högre säkerhetsnivå i fråga omvirusskydd och trojanska hästar än både NGSCB och något av de nu existerande

Page 66: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

56 KAPITEL 5. DISKUSSION

virusprogrammen.

Problemet med nätverkssäkerhet i de enskilda arbetsstationerna kan i dag lösasmed hjälp av nVidia nForce4-chippet. Detta kommer monterat på en del nForce4-moderkort. En fördel med att ha en brandvägg i hårdvara är att man kan göra detfysiskt omöjligt att ändra dess inställningar. Enligt nVidia ska ett försök att stänganer brandväggen endast resultera i att tillgången till nätverket stängs av.

Page 67: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

6Sammanfattning

Next Generation Secure Computing Base (NGSCB) är det säkerhetssystem somMicrosoft kommer att bygga in i Longhorn. Det är bestämt att NGSCB kommer attvara ett opt-in system. Det är avslaget vid installation och måste aktiveras av an-vändaren. För att aktivera NGSCB krävs att användaren startar stödet för den säk-erhetshanterande kretsen på moderkortet genom till exempel en BIOS-inställning.Användaren måste sedan aktivera NGSCB i operativsystemets inställningar.

NGSCB bygger på konceptet Trusted Computing. Det innebär att för att använ-da NGSCB krävs en bas för tillit (Root of Trust) befäst i hårdvara. Standard-en för denna hårdvara är fastslagen av Trusted Computing Group och innehålleren hårdvarukomponent kallad Trusted Platform Module (TPM) samt tillhörandemjukvara. Än så länge täcker specifikationen bara PC-datorer men meningen äratt den även ska gälla för inbyggda system, mobiltelefoner och annan elektronik.

Atmel och övriga tillverkare av TPM-moduler (kallad SSC av Microsoft) hållerför närvarande metoden för generering av slumptal hemlig. De använder gärnauttrycket “True Random Number Generator”. Genereringen av verkligt slump-mässiga nummer är möjlig men inte helt trivial, att de sedan inte offentliggörsina respektive metoder strider mot den princip av offentlighet som genomsyratutvecklingen av TCPA.

NGSCB kommer aldrig att kunna skydda ett företag mot sociala intrång ochbedrägerier – en människa kommer alltid att kunna hota ett systems integritetinifrån. Säkerhet fungerar bara när den är väl befäst hos dem den är menad attskydda.

Vidare vet man ganska lite om hur NGSCB skall komma att se ut, designen är baradelvis offentlig. Microsoft har i ett flertal artiklar sagt att NGSCB är ett långsiktigtarbete. Designen som den ser ut nu fokuserar till största delen på konfidentialitetoch integritet. Tillgänglighetsaspekten kommer i andra hand. Det ska vara möjligt

57

Page 68: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

58 KAPITEL 6. SAMMANFATTNING

att sätta upp regler för hur de olika certifikaten och programmen ska kunna köras.Risken är dock att NGSCB måste slås på för att användaren ska kunna köra ettprogram från Microsoft, som till exempel ordbehandlaren Microsoft Word.

Fortfarande går det att bygga bra och tillförlitliga säkerhetslösningar utan NGSCB.För företag finns till exempel Computer Integrity System (CIS). CIS verifierar allmjukvara som startas i ett system. Varje gång ett program startas beräknas en kon-trollsumma av dess digitala signatur. Kontrollsumman jämförs mot en lista medapplikationscertifikat som finns lagrad i lokalt i datorn. Den infrastruktur som an-vänds är Public Key Infrastructure (PKI), en öppen standard för distribuering avkryptonycklar. Fördelen med CIS jämfört mot NGSCB är att den är plattform-soberoende. Alla delar kan köras i alla operativsystem. CIS kan till exempel ävenköras i UNIX eller Linux. NGSCB är något som bara kommer att fungera i Win-dows (Longhorn). Ytterligare en fördel är att detta system inte låser användaren påett sådant sätt att NGSCB blir omöjligt. Systemet har dock potential att förstärkasäkerheten hos NGSCB.

NGSCB kommer på intet sätt att förhindra en virusattack av det oskyddade min-net enligt Microsoft [25, 26, 28, 24]. Den delen får tredje parts programvaror lösa.Historiskt sett har nya virus kommit relativt omgående till nya versioner av Win-dows. Än så länge finns inget som talar emot att ett virus är på väg till Longhorn(som i skrivandes stund är under beta-test). Fördelen med detta system är att detkan upptäcka om det blivit komprometterat och att grunden för tillit är extremtsvår att kompromettera [25].

Kritikerna (Anderson, Bechtold och Caelli bland andra) är fast övertygade omatt NGSCB är till för att befästa Microsofts position på marknaden och trängaut Linux på samma gång [3, 5, 7]. Även om Trusted Computing i form av NextGeneration Secure Computing Base ger användaren en rad möjligheter till säkerlagring av privata nycklar, hårddiskkryptering och verifikation av programvaralöser det inte genom sin struktur de största problemen Windowsvärlden dras mednu – virus och spam. Det finns inget som direkt talar för att TCPA i hög gradska minska risken för dessa hot: NGSCB, vilken är den enda implementation somutnyttjar TCPA, gör det inte [24].

Även om NGSCB tar en hel del steg för att skapa ett säkert operativsystem kom-mer det att vara ett tvéeggat instrument för säkerhet. Man ska inte glömma att enav de största förespråkarna bakom DRM ligger bakom systemet. Microsofts motivkan alltså ifrågasättas – risken finns att TCPA blir ett instrument för övervakningoch censur. Å andra sidan kan TCPA användas till att skydda användare och data.Vem som blir vinnare i slutänden kan nog bara framtiden utvisa.

Page 69: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

Ordlista

Autenticering Se identifiering.Betrodd Används i samma mening som engelskans “trust-

ed”. Detta är viktigt att påpeka eftersom betrodd intenödvändigtvis är det samma som tillförlitlig ellerpålitlig.

Betrodd agent “Trusted party” ett program som är betrott av sys-temet. Att vara betrodd är inte nödvändigtvis detsamma som att vara tillförlitlig.

Bootsekvens När datorn startar kallas det för boot. Boot-sekvensen blir därmed det som händer när datornstartar och operativsystemet laddas.

Bugg När ett program inte gör vad det är tänkt att görautan att vara infekterat av virus eller på annat sättändrat efter kompilering. Buggar kan vara både kon-ceptuella (designfel) och rent tekniska (kraschar un-der normal drift).

Data Den information som överförs eller lagras i digitalaeller analoga system.

DoS Denial of Sevice, en attack avsedd att skapa en situ-ation sådan att en server under en längre tid inte kanförse legitima användare med den service som denär avsedd för.

Hårdvara Elektroniken i datorn, till exempel moderkort ochhårddisk.

Identifiering Att identifiera en användare eller en resurs, ävenkallat autenticering. En identifiering vore värdelösutan en verifiering, därför antas att verifiering alltidsker vid identifiering.

Illvillig process En process skrivet av en illvillig programmerare.

59

Page 70: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

60 KAPITEL 6. SAMMANFATTNING

Illvillig programmerare En programmerare som genom illvilja eller slarvförorsakar problem, t.ex. skadar operativsystemeteller säkerhetsrisker.

Malware Samlingsnamn på virus, trojanska hästar, maskaroch deras varianter.

Mask Ett program som replikerar och sprider sig själv, detkan ibland skada den dator som det infekterar.

Mjukvara Körbara program, hit räknas även drivrutiner ochoperativsystem.

Monolitisk design Med monolitisk design menas en typ av designdär större delen av funktionaliteten är beroende aven enda enhet. Motsatsen är ett system uppbyggt imoduler (modulärt) med redundans. Denna design-typ är vanlig men anses som mycket problematisk.

NCA Nexus Computing Agent.Nexus Den del i NGSCB som tillsammans med SSC veri-

fierar programvara som vill köra i betrott läge.NGSCB Tidigare kallad Palladium. NGSCB står för Next

Generation Secure Computing Base, det är etttillägg till Microsoft Windows.

OEM Original Equipment ManufacturerOpt-in Något som avslaget och medvetet kan väljas in av

användaren (t.ex. spolarvätska till en bil).Opt-out Något som är förvalt och startat av systemet men

kan väljas bort (t.ex. direktreklam hem i brevlådan).OS Operativsystem.Palladium Se NGSCB. Microsoft ändrade namnet till NGSCB

under 2003.Phishing Phishing är när en hacker vill lura användaren att

ge ifrån sig information (t.ex. personlig eller före-tagshemligheter) i illvilligt syfte.

SSC Security Support Component, ett chip som måstefinnas på moderkortet som säkerhetsstöd förNGSCB. Kallas TPM i TCGs specifikation.

TC Används i denna rapport som Trusted Comput-ing, Microsoft vill dock kalla detta för Trustwor-thy Computing. Trusted Computing innebär säker-hetslösningar där man kan ha tillit i systemet.

Page 71: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

61

TCG Trusted Computing Group, skapade TCPA. TCGgrundades av bland andra Microsoft.

TCP Trusted Computing Platform. Är i de flesta fall hård-varustödda säkerhetslösningar för system.

TCPA Trusted Computing Platform Alliance, en standardför att göra datorer säkrare. TCPA uppfanns avTCG.

Tillförlitlig Används i samma mening som engelskans “trust-worthy”. Detta är viktigt att påpeka eftersom be-trodd inte nödvändigtvis är det samma som tillförl-itlig.

TOR Trusted Operating Root var det gamla namnet påNexus.

TPM Trusted Platform Module, en mikrokontroller somnormalt sitter på datorns moderkort. Denna kan la-gra nycklar och lösenord samt generera nya nycklar.

Trojan Se trojansk häst.Trojansk häst En trojansk häst installeras antingen av användaren

själv eller av en hackare. En trojansk häst kanmaskera sig på två sätt, antingen som ett legitimtoch användbart program eller så gömmer det sigpå något sätt. Trojanska hästar gör alltid något somanvändaren inte har kontroll över. De kan till ex-empel: Öppna bakdörrar, installera andra program(tex virus), söka efter användarnamn och passwords(både från hårddisk och tangentbord), osv. Om pro-grammet söker information kan denna lagras ellerskickas vidare.

Virus Ett program som infekterar ett annat och saknar för-måga att själv sprida sig över nätverk. Ett virus kantill exempel vara konstruerat så att det infekterar al-la Word-dokument-filer på en dator, när användarensedan kopierar filerna och öppnar dem på andra sys-tem kan viruset sprida sig.

Page 72: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång
Page 73: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

Referenser

[1] ANDERSON, R. Why cryptosystems fail.1st. Conf. Computer & Comm.Security 1(1993), 215–227.

[2] ANDERSON, R. Security Engineering – a Guide to Building DependableDistributed Systems, second ed. John Wiley & Sons, Inc., 2001.

[3] ANDERSON, R. Cryptography and competition policy: Issues with ’trustedcomputing’.Annual ACM Symposium on Principles of Distributed Comput-ing 22(2003), 3–10.

[4] ATMEL CORPORATION. Atmel corporation homepage.http://www.atmel.com, 2004. Besökt: 2005-04-03.

[5] BECHTOLD, S. The present and future of digital rights management – mus-ings on emerging legal problems.Lecture Notes in Computer Science 2770(2003), 597–654.

[6] BISHOP, M. Computer Security: Art and Science. Addison Wesley, 2003.

[7] CAELLI , W. J. Tcpa, palladium and friends: Trends in computer security.In Australasian Information Security Workshop(2003), vol. 21, p. 1.

[8] COULOURIS, G., DOLLIMORE, J., AND K INDBERG, T. Distributed Sys-tems: Concepts and Design, 3 ed. Addison-Wesley, 2001.

[9] ELLISON, C., AND SHNEIER, B. Ten risks of pki: What you’re not beingtold about public key.Computer Security Journal 16, 1 (2000).

[10] GRUNWALD , D., AND GHIASI , S. Microarchitectural denial of service: in-suring microarcitectural fair ness.ACM Transactions on Computer Systems(TOCS) 21, 3 (Aug. 2002).

[11] HABET, A., AND MANOS, D. Trusted Computing – information security orBig Brothers latest tool?Master’s, Örebro University, 2003. www.

63

Page 74: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

64 REFERENSER

[12] HOUSLEY, R., AND HARTMAN , S. X.509 standarden. Besökt 2005-05-18,2005. http://www.ietf.org/html.charters/pkix-charter.html.

[13] INFINEON TECHNOLOGIES AG. Infineon’s trusted plat-form module. Besökt: 2005-01-02, 2002. http://www.silicon-trust.com/trends/comp_tpm.asp.

[14] INFINEON TECHNOLOGIES AG. Platform security – trust-ed platform module (tpm). Besökt 2005-01-02, 2004.http://www.infineon.com/cgi/ecrm.dll/ecrm/scripts/prod_ov.jsp?oid=29049&cat_oid=-9313.

[15] KERCKHOFFS, A. La cryptographie militaire.Journal des sciences mili-taires IX (1883), 5–38. http://www.petitcolas.net/fabien/kerckhoffs/.

[16] KLIMA , V. Finding md5 collisions on a notebook pc using multi-message modifications. Cryptology ePrint Archive, Report 2005/102, 2005.http://eprint.iacr.org/.

[17] KOCHER, P., LEE, R., MCGRAW, G., RAGHUNATHAN , A., AND RAVI , S.Security as a new dimension in embedded system design. InProceedings ofthe 41st annual conference on Design automation(2004), vol. 0, pp. 753–760.

[18] KUHLMANN , D. On tcpa.Lecture Notes in Computer Science 2742(2003),255–269.

[19] L IE, D., THEKKATH , C. A., AND HOROWITZ, M. Implementing an un-trusted operating system on trusted hardware. InSOSP ’03: Proceedings ofthe nineteenth ACM symposium on Operating systems principles(New York,NY, USA, 2003), ACM Press, pp. 178–192.

[20] MAO, W. Modern Cryptography, Theory and Practice. Prentice Hall, 2004.

[21] MATSUMOTO, T., MATSUMOTO, H., YAMADA , K., AND HOSHINO, S.Impact of artificial gummyfingers on fingerprint systems. InSPIE (2002),R. L. v. Renesse, Ed., vol. 4677, pp. 275–289.

[22] MENEZES, A. J., OORSCHOT, P. C.V., AND VANSTONE, S. A. Handbookof Applied Cryptography. CRC Press, 1997.

[23] M ICROSOFTCORPORATION. Hardware platform for the next-generation se-cure computing base. Microsoft Word Dokument, Besökt 2004-10-05, 2003.http://www.microsoft.com/resources/ngscb/documents/NGSCBhardware.doc.

Page 75: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

REFERENSER 65

[24] M ICROSOFTCORPORATION. Microsoft next-generation secure computingbase - technical faq. Microsoft Word Dokument, Besökt 2004-10-05, 2003.http://www.microsoft.com/technet/archive/security/news/ngscb.mspx.

[25] M ICROSOFTCORPORATION. NGSCB: Trusted computing base and soft-ware authentication. Microsoft Word Dokument, Besökt 2004-10-05, 2003.http://www.microsoft.com/resources/ngscb/documents/ngscb_tcb.doc.

[26] M ICROSOFT CORPORATION. Privacy-enabling enhance-ments in the next-generation secure computing base. Mi-crosoft Word Dokument, Besökt 2004-10-05, 2003.http://www.microsoft.com/downloads/ThankYou.aspx?familyId=f30adb72-f9c7-4193-9a5b-621c2dc33adf&displayLang=en.

[27] M ICROSOFT CORPORATION. Secure user authentica-tion for the next-generation secure computing base. Mi-crosoft Word Dokument, Besökt 2004-10-05, 2003.www.microsoft.com/resources/ngscb/documents/ngscb_authentication.doc.

[28] M ICROSOFT CORPORATION. Security model for the next-generation se-cure computing base. Microsoft Word Dokument, Besökt 2004-10-05, 2003.http://www.microsoft.com/resources/ngscb/documents/NGSCB_Security_Model.doc.

[29] M ICROSOFT CORPORATION. Winhec 2004 conference papers. Besökt2004-10-05, 2004. http://www.microsoft.com/whdc/winhec/pres04-tech.mspx.

[30] M ICROSOFT CORPORATION. Microsoft firewall api. Besökt 2004-10-05, 2005. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ics/ics/windows_firewall_start_page.asp.

[31] M ICROSOFT CORPORATION. windows ljudfiler, mpaud*.wav. öpp-na filerna med en texteditor och läs längst ner i filen, 2005.C:\WINDOWS\Help\Tours\WindowsMediaPlayer\Audio\Wav

[32] NIST. Advanced encryption standard (aes), data encryp-tion standard (des), triple-des, and skipjack algorithms.http://csrc.ncsl.nist.gov/cryptval/des.htm, April 12, 2002 2002. Besökt2005-05-08.

[33] NVIDIA CORPORATION. nforce4 whitepapers.http://www.nvidia.com/object/feature_activearmor.html, 2005. Besökt2005-05-08.

Page 76: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

66 REFERENSER

[34] PERCIVAL , C. http://www.daemonology.net/papers/. proceedings of BSD-Can 2005, 2005. http://www.daemonology.net/papers/htt.pdf.

[35] SANDSTRÖM, M. Liveness Detection in Fingerprint Recognition Systems.Exam thesis, Linköpings tekniska högskola, 2004.

[36] SARPESHKAR, R., DELBRÜCK, T., AND MEAD, C. A. White noise in mostransistors and resistors.IEEE Circuits and Devices 9, 6 (1993), 23–29.

[37] SCHNEIER, B. Applied Cryptography, Second Edition: Protocols, Algo-rthms, and Source Code in C (cloth), 2 ed. John Wiley & Sons, Inc., 1996.

[38] SCHULTZ, E. Pandora’s box: spyware, adware, autoexecution, and NGSCB.Computers & Security(2003).

[39] SE46. Se46 ab hemsida. http://se46.com/, 2005. Besökt 2005-05-10, bilderfrån sidan publicerade med tillstånd från SE46.

[40] STINSON, D. R. Cryptography: theory and practice, 1 ed. CRC Press, 1995.

[41] STREBE, M., AND PERKINS, C. Brandväggar 24sju. Pagina Förlags AB,2000.

[42] TCG. Trusted computing platform alliance (tcpa) main specification version1.1b och 1.2. http://www.trustedcomputinggroup.org/, 2003. Besökt 2004-09-05.

[43] WANG, X., FENG, D., LAI , X., AND YU, H. Collisions for hash func-tions md4, md5, haval-128 and ripemd. Cryptology ePrint Archive, Report2004/199, 2004. http://eprint.iacr.org/.

[44] WANG, X., Y IN , Y. L., AND YU, H. Collision search at-tacks on sha1. Tech. rep., Shandong University, february 13 2005.http://theory.csail.mit.edu/ yiqun/shanote.pdf.

[45] WILLIAMS , J. M. Biometrics or. . . biohazards? InProceedings of the 2002workshop on New security paradigms(2002), pp. 97–107.

[46] YAMAMURA , M. W95.cih. Symantecs hemsida om viruset CIH, March 30,2004 1998. http://www.symantec.com/avcenter/venc/data/cih.html.

[47] ÖGREN, T. Föreläsning om datasäkerhet. Föreläsning om datasäkerhet,20050314. http://www.cs.umu.se/∼stric/security.pdf.

Page 77: Trusted Computing ur datasäkerhetssynpunkt - cs.umu.se · Jag vill rikta ett stort tack till min handledare Jonny Petterson som varit ett oum-bärligt stöd under arbetets gång

APhishing

Följande epostmeddelande skickades ut till kunder hos ett stort telebolag i Tysk-land. Meddelandet förklarar att kundens räkning är 256,59 Euro. Det finns även enlänk till hemsidan där kunden kan betala sin räkning. Kunden kommer att loggain på vad han tror är den riktiga hemsidan för att betala sin räkning. Sidan är dockadministrerad av en hacker och pengarna sätts in på dennes konto istället.

From [email protected] Tue May 17 19:58:45 2005Date: Tue, 17 May 2005 11:00:30 -0700From: [email protected]: ****@****.***.seSubject: Telekom

Sehr geehrte Kundin, sehr geehrter Kunde,

die Gesamtsumme für Ihre Rechnung im Monat Mai 2005 beträgt: 256,59 Euro.Aus Sicherheitsgründen haben wir ihre Rechnung mit einem Passwort versehen.

Ihr persönliches Passwort lautet: Augen

Mit dieser E-Mail erhalten Sie Ihre aktuelle Telekom-Rechnung und -soweit vonIhnen beauftragt- die Einzelverbindungsübersicht.

Nutzen Sie auch unter www.t-com.de/rechnung-online die vielfältigenMöglichkeiten von Rechnung Online, wie z.B. Sortierungs- undAuswertungsfunktionen. Hier finden Sie auf der Seite ganz oben linksunter "Hilfe/FAQ" auch nützliche Tipps zur Nutzung vonRechnung Online.

Mit freundlichen GrüßenIhre Deutsche Telekom

[ Part 2, Application/X-ZIP-COMPRESSED 5.4KB. ][ Unable to print this part. ]

67