Identifiering och autentisering. Marcus Bendtsen Institutionen för Datavetenskap (IDA) Avdelningen för Databas- och Informationsteknik (ADIT)

Relevanta dokument
Identifiering och autentisering

Kryptering HEMLIG SKRIFT SUBSTITUTION STEGANOGRAFI KRYPTOGRAFI

Att använda kryptering. Nyckelhantering och protokoll som bygger på kryptering

Filleveranser till VINN och KRITA

Introduktion till protokoll för nätverkssäkerhet

Krypteringteknologier. Sidorna ( ) i boken

Telia Centrex IP Administratörswebb. Handbok

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

Metoder för sekretess, integritet och autenticering

Kryptoteknik. Marcus Bendtsen Institutionen för Datavetenskap (IDA) Avdelningen för Databas- och Informationsteknik (ADIT)

Föreläsning 7. DD2390 Internetprogrammering 6 hp

Försöksnomineringssystem 2013

Datasäkerhet. Petter Ericson

DNSSEC och säkerheten på Internet

Protokollbeskrivning av OKI

Autentisering och Code-Based Access Control

256bit Security AB Offentligt dokument

Designprinciper för säkerhet och Epilog. Marcus Bendtsen Institutionen för Datavetenskap (IDA) Avdelningen för Databas- och Informationsteknik (ADIT)

Certifikattjänsten - testbädd. Anläggningsprojekt för ett nationellt inkomstregister

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

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

Modul 3 Föreläsningsinnehåll

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Projektplatser & Samarbetsplatser: inloggning

Din manual NOKIA

Viktigt! Läs igenom hela anvisningen innan du påbörjar inloggningen för första gången.

SSEK Säkra webbtjänster för affärskritisk kommunikation

Version Datum Kommentar Etablering av dokumentet Efter första genomgång av Cygate och SITHS PA

SITHS. Integration SITHS CA Copyright 2015 SecMaker AB Författare: Andreas Mossnelid Version 1.2

Beställning av Förlitandepart-certifikat Version

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

Java Secure Sockets Extension JSSE. F5 Secure Sockets EDA095 Nätverksprogrammering! Roger Henriksson Datavetenskap Lunds universitet

Säker e-kommunikation

Inom SITHS e-id finns det certifikat för olika syften som grupperas enligt:

Kryptografi - När är det säkert? Föreläsningens innehåll. Kryptografi - Kryptoanalys. Kryptering - Huvudsyfte. Kryptografi - Viktiga roller

Användningen av elektronisk identifiering.

Probably the best PKI in the world

TELIA CENTREX IP ADMINISTRATÖRSWEBB HANDBOK

Säkra Designmönster (Secure Design Patterns)

Identity Management i ett nätverkssäkerhetsperspektiv. Martin Fredriksson

BILAGA 2 Tekniska krav Version 0.81

Telia Centrex IP Administratörswebb Handbok

En lösenordsfri värld utopi eller verklighet

Jakob Schlyter

Utkast/Version (8) Användarhandledning - inrapportering maskin-till-maskin

Instruktion för integration mot CAS

Certifikat - Ett av en CA elektroniskt signerat intyg som knyter en publik nyckel till en specifik nyckelinnehavare. Källa: Inera (BIF)

Installationsguide fo r CRM-certifikat

Installationsguide Junos Pulse för iphone/ipad

Policy Underskriftstjänst Svensk e-legitimation

INLOGGNING FASTIGHETSPORTALEN UTAN SMART PHONE (EXTERNA ANVÄNDARE)

Dyna Pass. Wireless Secure Access

Blockkedjeteknikens fördelar och framtidens utmaningar I datahantering. Andreas de Blanche

Multifaktorinloggning via SWAMID

Inom SITHS e-id finns det certifikat för olika syften som grupperas enligt:

Instruktion för att hämta personligt certifikat med Internet Explorer m.fl.

Certifikatspecifikation för Sveriges kommuner och landsting med samarbetspartners HCC

Certifikatspecifikation för Sveriges kommuner och landsting med samarbetspartners HCC

Certifikat. svensk vård och omsorg HCC

Termer och begrepp. Identifieringstjänst SITHS

Beställning av certifikat för anslutning till BankID (RP certificate) Version

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

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

Installationsguide Junos Pulse för MAC OS X

Dovado Tiny - installationsguide

Användarmanual för Pagero Kryptering

WEB SERVICES-FÖRBINDELSE

Tjänstebeskrivning Extern Åtkomst COSMIC LINK. Version 1.0

Grundfrågor för kryptosystem

Åtkomst till Landstingets nät via Internet

Kryptering. Krypteringsmetoder

Certifikatspecifikation för Sveriges kommuner och landsting med samarbetspartners HCC

Termer och begrepp. Identifieringstjänst SITHS

Många företag och myndigheter sköter sina betalningar till Plusoch

Ändringar i utfärdande av HCC Funktion

Bakgrund Avgränsningar Begreppsförklaring Kortfattade anvisningar... 2

Ansökningsanvisning för SUNET TCS-certifikat via SLU CA.

Distansåtkomst via systemaccess tjänst från egen dator

Instruktion för användande av Citrix MetaFrame

Om du misstänker att värdens privata nyckel har manipulerats kan du skapa en ny genom att utföra följande steg:

SITHS inloggning i AD

Internetsäkerhet. banktjänster. September 2007

1 Vad är Versionshantering? 2 Git. 2.1 GitHub

Datasäkerhet. Informationsteknologi sommarkurs 5p, Agenda. Slideset 10. Hot mot datorsystem. Datorsäkerhet viktigare och viktigare.

Testning av Sambi. Testplan. Version PA12. Fil namn: SAMBI_TP.docx Senast sparad: Copyright (c) 2014 IIS

Kundverifiering av SPs digitala signaturer

Lösenord och ditt Axxell IT-konto

UTFÄRDARDEKLARATION (CPS) SJÖFARTSVERKET

ANVÄNDARMANUAL HUR INSTALLERAR JAG MOBILEPASS PÅ MIN TELEFON ELLER DATOR

Användarhandledning för The Secure Channel

Instruktioner för att skapa konton i MV-login

Åtgärdsplan. CRL Åtgärdsplan Copyright 2015 SecMaker AB Författare: Jens Alm

EU s dataskyddsförordning Krav, utmaningar och möjligheter. David Ahlén, Micro Focus Peter Olsson, Karlstads kommun Lars Nikamo, Micro Focus

Driftsättning av DKIM med DNSSEC. Rickard Bondesson Examensarbete

ANVISNING Om det inte lyckas att logga in i Kelain på en Mac-dator Innehåll

Rutinbeskrivning för beställning av certifikat

Lathund för BankID säkerhetsprogram

provlektion bonnierförlagen lära Jaaa! En... från

Transkript:

Identifiering och autentisering Marcus Bendtsen Institutionen för Datavetenskap (IDA) Avdelningen för Databas- och Informationsteknik (ADIT)

Identitet Entity Något som existerar, t.ex. en person eller ett företag. Principal En unik entity. Identity En identity identifierar en principal, t.ex. ett namn. Vi skriver en identity som definierar en unik entity en principal. Personnamn är inget bra identity, eftersom samma namn kan referera till flera entiteter: Det finns fler som heter Marcus Bendtsen. Detta löses genom att principals binds till unika identiteter: Personnummer Social security number Unikt id på Facebook DNS-namn: www.liu.se Sökvägar /home/marbe800/file 2

Autentisering Subjekt agerar åt en extern entitet. Ett program körs åt en användare. Vem/vad denna externa entitet är avgör vad subjektet har rätt att göra. Programmet kanske får eller inte får ta bort filer beroende på den externa entiteten. marbe800 är inloggad på Solaris, kör subjektet ls, subjektet kan bara lista filer i de mappar där marbe800 har rättigheter. Autentisering händer när en identitet binder sig till ett subjekt. En viss entity, t.ex. Marcus Bendtsen, binder sin identitet (marbe800) till ett visst subjekt (t.ex. ett Python program). 3

Autentisering För att kunna binda sin identitet (marbe800) till ett subjekt, så måste entiteten bevisa/verifiera att den verkligen är den principal den utgör sig för att vara. Entiteten måste tillhandahålla någon information, eller utföra en operation. Olika former av verifiering: Något entiteten vet (lösenord, hemlig nyckel) Något entiteten har (passerkort, smartcard) Något entiteten är (fingeravtryck, DNA) Var entiteten är (GPS-koordinat, viss dator) 4

5 SOMETHING YOU KNOW

Lösenord En bestämd sekvens av tecken Vanligtvis 8-10 tecken Kan vara valt av användaren Kan vara slumpmässigt Kan vara en blandning av båda Sekvens av ord (eng. passphrase) The quick brown fox All makt åt 6

Lagring av lösenord Lagring i klartext: Risk att alla lösenord avslöjas om någon får tag i filen där lösenorden lagras. Krypterad lagring: Innebär att vi måste ha en hemlig nyckel i minnet, vilket innebär samma problem som med klartext. Lagring av en hash av lösenordet: Lösenorden kan inte avslöjas trivialt. Man kan fortfarande verifiera att ett givet lösenord är korrekt. 7

Attacker på lösenord Uttömmande prövning av lösenord: On-line: förebyggs genom att begränsa antalet försök. Off-line: förebyggs genom val av lösenord. Dictionary attack: Guessing of a password by repeated trial and error. Man testar helt enkelt alla tänkbara lösenord, men man börjar med vanliga lösenord samt riktiga ord från en ordbok (eng. dictionary). 8

Val av lösenord Användare väljer dåliga lösenord Lösenord baserade på namn av olika slag. Varianter av ord som finns i ordlistor. Korta lösenord, enbart bokstäver eller siffror. Registreringsnummer, personnummer, förkortningar. Personliga egenskaper eller associationer. 9

Val av lösenord Användare väljer dåliga lösenord Lösenord baserade på namn av olika slag. Varianter av ord som finns i ordlistor. Korta lösenord, enbart bokstäver eller siffror. Registreringsnummer, personnummer, förkortningar. Personliga egenskaper eller associationer. I changed all my passwords to "incorrect", So whenever I forget, it will tell me "Your password is incorrect." 10

Lista på dåliga lösenord 2014 Listan är framtagen genom att man analyserat över 3,3 miljoner läckta lösenord under året (2014). 1. 123456 2. password 3. 12345 4. 12345678 5. qwerty 6. 123456789 7. 1234 8. baseball 9. dragon 10. football 11. 1234567 12. monkey 13. letmein 14. abc123 15. 111111 16. mustang 17. access 18. shadow 19. master 20. michael 21. superman 22. 696969 23. 123123 24. batman 25. trustno1 11

Lista på dåliga lösenord 2015 https://www.skyhighnetworks.com/cloud-security-blog/you-wont-believe-the-20-most-popular-cloud-service-passwords/ 12

Välja och generera lösenord Bra sätt att själv hitta på ett starkt lösenord Första/andra bokstaven i varje ord i en fras. Kombinationen av bokstäver/tecken från flera källor. Slumpmässiga lösenord Svåra att komma ihåg (K4SAv4Pe, Trus8e8R, CaThe9at). Användare tenderar att skriva upp de. Lösenord som går att uttala Generera en lång nyckel. Transformera till uttalbart ord. Exempel: bandeplast, redaingerm, cuccroffee 13

Kontroll av lösenord Kontroll av egenskaper för lösenord (när användaren valt själv): Lösenordets längd (typiskt 8-10). Stora och små bokstäver. Bokstäver och siffror. Specialtecken. Proaktiv lösenordstestning: Testning av lösenord mot ordlista. När man väljer lösenord till användare i Linux blir man i vissa distros varnad att man valt ett ord som finns i ordlistor. Testning av lösenord mot format av registreringsskyltar, födelsedatum, etc. 14

15 SOMETHING YOU HAVE

Challenge-Response Validera identiteten genom att utföra en operation som bara den angivna identiteten kan genomföra. Exempel: U vill identifiera sig själv till systemet S. U och S har redan kommit överrens om en hemlig funktion f. S skickar ett slumpat meddelande m till U, och U svarar med en transformation r = f(m). S validerar r genom att beräkna r själv. U Begäran om autenticering S U U Meddelande m (challange) Meddelande r = f(m) (response) S S Det är f som är hemlig i detta system, inte meddelandena i sig. 16

Engångslösenord Lösenord som kan användas en gång. Efter användning så blir lösenordet ogiltigt. Challenge-response: Kan ses som ett system som använder engångslösenord (samma meddelande skickas aldrig fram och tillbaka). Utmaningar: Synkronisering av användare och system. Generering av bra lösenord. Distribution av lösenorden. 17

Engångslösenord med hårdvarustöd Token-baserade Kan vara challenge-response baserade (bankdosor) Banken skickar några siffror till dig, du matar in de in i din dosa, och svarar med dosans svar (du är den enda som kan beräkna detta). Tidsbaserade Engångslösenordet ändras med jämna mellanrum. Datorn vet vilket som är giltigt vid en viss tid. Användaren matar in vanligt lösenord och engångslösenord. T.ex. RSA SecurID, Google Authenticator 18

19 SOMETHING YOU ARE

Biometrisk autentisering Automatisk mätning av en egenskap eller beteende. Fingeravtryck Översätter fingeravtryck till (t.ex.) en graf. Approximativ jämförelse av grafer. Röstigenkänning/verifiering Verifiering använda statistiska metoder för att testa hypotesen att det är den angivna entiteten som talar (speaker-dependent). Igenkänning analysera innehållet i det talade meddelandet (speaker-independent). 20

Biometrisk autentisering Ögon Analys av irismönster. Analys av retina. Kroppsgeometri Ansiktsigenkänning/ansiktsstruktur Handgeometri Helkroppsgeometri Dynamik Intervall mellan tangenttryckningar, tryckningarnas längd, mm. Handskriftsigenkänning hastighet, nedsättning, utseende. 21

Risker med biometri Det går att lura en del utrustning: Fingeravtryck har varit särskilt enkelt. Bildbaserade tekniker kan luras av reproduktioner. Felfrekvenserna kan vara höga: Röstigenkänning påverkas av sjukdom. Fingeravtryck kan ändras av skador. Ljussättning kan påverka ansiktsigenkänning. Kan vara direkt farligt om man inte kommer åt kritiska system 22

23 SOMEWHERE YOU ARE

Positions autentisering Autentisering kan baseras på position. Position kan vara en del av en autentiseringsmetod. Exempel Inloggning vid en terminal i ett skyddat rum kan ge särskild access till ett visst system. Det faktum att du har fysisk tillgång till en viss dator ger dig rättigheter. Verifiera att entitetens GPS-koordinater matchar terminalen som användaren försöker logga in på. 24

Flerfaktorautentisering Autentisering med flera faktorer: Något man vet lösenord tillsammans med något man är fingeravtryck tillsammans med var man är vid systemet som försöker autentisera. Flerfaktorautentisering minskar riskerna Förlust av en faktor leder inte till säkerhetsproblem. 25

26 AUTENTISERING AV PUBLIKA NYCKLAR

Nyckelutbyte med RSA A vill kommunicera säkert med B A ber B skicka sin publika nyckel B skickar sin publika nyckel, men C plockar upp den C skickar sin publika nyckel till A A krypterar med Cs publika nyckel (tror att det är Bs) C dekrypterar, sparar undan data, krypterar med Bs publika nyckel, skickar till B A och B märker inte att C sitter och lyssnar på all trafik Man-in-the-middle 27

Verifiering av nycklar På något sätt måste A kunna fråga någon om den nyckel som A tror är Bs publika nyckel verkligen är det. Med andra ord: Vi måste binda en identitet med en nyckel, annars kan vi inte vet att vi pratar med rätt identitet. I allmänhet används certifikat för detta. Vi räknar med att det finns utgivare av certifikat, dvs det finns någon som kan verifiera certifikat. 28

Certifikat Ett certifikat är ett meddelande som innehåller (i normala fall): En identitet (ett namn). Nyckeln som är bunden till identiteten. Vad nyckeln får användas till. Tiden då certifikatet är giltigt. Identiteten för certifikatets utgivare. En digital signatur över hela certifikatet. X.509 är en standard för public key infrastructure (PKI), bland annat specificeras exakt hur ett public key certificate ska se ut. 29

X.509 certifikat Vanligaste formen av certifikat (används för SSL/TLS) Version certifikatformatets version Serial number unik (per utgivare) identitet Signature value utgivarens signatur på certifikatet (krypterad hash av vissa fält i certifikatet) Signature algorithm algoritm som använts i signaturen samt vilka parametrar som ingick i signeringen Issuer certifikatets utgivare ( certification authority eller CA) Validity certifikatets giltighetsperiod Subject entiteten certifikatet gäller Subject public key entitetens publika nyckeln Extensions diverse extra information Användning av nyckeln, andra namn för entiteten, etc. 30

X.509 certifikat verifiering När du fått ett certifikat måste du verifiera det. I certifikatet står det vem som är utgivaren och för vem certifikatet gäller. Det står också vilken algoritm som använts för att signera certifikatet. Signaturen kan dekrypteras genom att använda utgivarens publika nyckel. Du har nu hash-värdet som utgivaren beräknade. Du beräknar hash-värdet för samma parametrar som utgivaren, om din beräkning stämmer med utgivarens beräkning så är certifikatet validerat. Serial number + Issuer Signature algorithm and parameters Signature value (encrypted hash) 31

X.509 certifikat verifiering Nu när certifikatet är validerat så vet du följande: Certifikatet gäller för ett visst subjekt, t ex. Google. Googles publika nyckel är den som står i certifikatet. Det finns andra saker du ska kolla också, t.ex: Är certifikatet fortfarande giltigt? De har bäst-före-datum. Får den publika nyckeln användas till det du tänkt göra? Serial number + Issuer Signature algorithm and parameters Signature value (encrypted hash) Subject Subject public key 32

X.509 certifikat validering Men, något saknas Tidigare påstod vi att: Signaturen kan dekrypteras genom att använda utgivarens publika nyckel. Men då är vi tillbaka på ruta ett, för hur kan vi få tag på utgivarens publika nyckel? Samma problem? Serial number + Issuer Signature algorithm and parameters Signature value (encrypted hash) 33

Certificate authority Utgivare av certifikat är vanligtvis s.k. trusted certificate authorities. Deras certifikat (och därmed deras publika nycklar) finns redan lagrade i mjukvaran, t.ex. i Firefox eller Windows. Därmed har vi redan nycklarna för utgivarna av certifikat, och de behöver inte laddas ner eller verifieras. CAs är privata företag som undergår årliga kontroller, inte direkt lätt att bli en trusted CA. Enligt Wikipedia: Mer än 50 olika CA är trusted i de flesta moderna webbläsare, men större andelen utgivna certifikat kommer från: Symantec 38.1% Comodo group 29.1% Go Daddy 13.4% GlobalSign 10% 34

Certifikat kedjor Om det bara fanns en utgivare hade det varit lätt för alla att verifiera certifikat från denna, men så är inte fallet. Vi använder notationen: X<<Y>> vilket betyder att X är CA för Y Antag att Alice (A) vill kommunicera med Bob (B). A har ett certifikat från Cathy (C) dvs C<<A>> B har ett certifikat från Dan (D) dvs D<<B>> Hur kan A validera D<<B>> om A inte känner till Ds nyckel? 35

Certifikat kedjor Det vanliga är att CAs har certifikat för varandra Det finns alltså C<<D>> och D<<C>> - Dan och Cathy verifierar varandra När A nu vill kommunicera med B så behöver A också hämta C<<D>> Då kan A skapa kedjan: C<<D>> D<<B>> A verifierar först Ds certifikat (A känner till Cs publika nyckel) Med Ds nyckel kan A verifiera D<<B>> Man säger att två CAs är cross-certified om de verifierar varandra Dessa certifikat kedjor kan bli godtyckligt långa 36

www.liu.se