24
Introduksjon til sikkerhet Kapittel 8.1 fra Tannenbaum og Steens, ”Distributed Systems”

Introduksjon til sikkerhet

  • Upload
    jamar

  • View
    67

  • Download
    0

Embed Size (px)

DESCRIPTION

Introduksjon til sikkerhet. Kapittel 8.1 fra Tannenbaum og Steens, ”Distributed Systems”. Innledning. Sikkerhet er en av utfordringene når man skal lage distribuerte arkitekturer Hvorfor sikkerhet? Konfidensalitet Beskyttelse av avsløringer til en uautorisert enhet Integritet - PowerPoint PPT Presentation

Citation preview

Page 1: Introduksjon til sikkerhet

Introduksjon til sikkerhet

Kapittel 8.1 fra Tannenbaum og Steens, ”Distributed Systems”

Page 2: Introduksjon til sikkerhet

Innledning Sikkerhet er en av utfordringene når man skal lage distribuerte

arkitekturer Hvorfor sikkerhet?

Konfidensalitet Beskyttelse av avsløringer til en uautorisert enhet

Integritet Beskyttelse mot endring og korruptering fra en uatorisert enhet

Tilgjenglighet Beskyttelse av oppførsel med hensikt å få uautorisert tilgang til

ressurer Lage sikkerhets systemer:

Hvordan mekanismer skal brukes Mot hva

Page 3: Introduksjon til sikkerhet

Trusler

Interception Avskjæring/oppsnapping Uatorisert deltager har fått tilgang til en service eller data En forbindelse mellom to deltagere avlyttes Ulovlig kopiering, feks få tilgang til en brukers personlige

mapper Interruption

Avbrudd/forstyrrelse Korruptert eller ødelagt data Service eller data blir ikke-tilgjenglig, ødelagt osv DoS

Page 4: Introduksjon til sikkerhet

Trusler forts.

Modification Modifisering Uautorisert endring av data eller forkludring av en tjeneste

slik at den ikke følger opprinnelig oppførsel Endring av sendt data, database endring, endring av

logging Fabrication

Fabrikasjon Generere falske data Passord, database innslag Gjensending av beskjeder

Page 5: Introduksjon til sikkerhet

Prinsipper Security Policy

Overordned politikk Sett av regler som sier om hvilken operasjoner som er lov og

hvilken som ikke er lov. Eks: En bedrift tillater kun sine ansatte og akrediterte gjester

tilgang til sine lokaler. Security Management

Midler for å håndheve Security Policy Security Enforcement

Håndhevelse av Policy Eks: Tilgang til bygning blir kontrollert av en sikkerhets vakt som

deler ut adgangs kort og man bruker elektroniske dører eller en vakt som sjekker disse bevisene.

Page 6: Introduksjon til sikkerhet

Sikkerhets mekanismer Forskjellige sikkerhets mekanismer for å håndheve politikken:

Kryptering Matematiske funksjoner for å gjøre innhold uforståelig for en ikke

deltagende part Middel for å nå konfidensialitet og integritet mål

Autentiserings kontroll Sjekk identitet (brukernavn og passord osv)

Tillatelse Utførelse av operasjon er gitt de riktige rettigheter

Auditing tools Trace aktivitet Granskingsinformasjon som holdes beskyttet slik at operasjoner som

påvirker sikkerhet kan oppspores og holdes ansvarlig for de som har utført det.

Kan brukes til sporing av ”gale ting” Ikke ”aktiv beskyttelse”

Page 7: Introduksjon til sikkerhet

Kommunikasjon og tilgang til ressurser

Kommunikasjon mellom brukere eller prosesser Problemer

Hvem kan man stole på? Er mottatt melding fra den jeg tror den er fra og er

innholdet endret underveis?

Lokal og global sikkerhets politikk og håndhevelse Hvem har ansvar for hva og hvordan tildele og

trekke tilbake tilganger gitt i en slik distribuert setting er noen problemstillinger

Page 8: Introduksjon til sikkerhet

Globus Security Architecture Security Policy

1. Systemet består av mange adminstrative domener2. Lokale operasjoner er håndtert av lokale sikkerhets

politikk3. Globale operasjoner krever at bruker er kjent i det

domene operasjonen utføres4. Operasjoner mellom entiteter i forskjellige domener krever

gjensidig autentisering.5. Global autentisering erstatter lokal autentisering.6. Tilgang til ressurser kontrolleres lokalt.7. Brukere kan delegere rettigheter til en prosess.8. En gruppe av prosesser i det samme domenet kan dele

akkrediteringer.

Page 9: Introduksjon til sikkerhet

Diagram av Globus security architecture.

Page 10: Introduksjon til sikkerhet

Utfordringer i utforming av sikkerhets løsninger

Hetrogene systemer med sin Security Policy og Enforcement.

Design principles. 3 utfordinger/design parametre nevnt i boken:

En modell over fokus og hvor legge sikkerhet:

Application Software

Resource

Hardware

User (subject)

Page 11: Introduksjon til sikkerhet

Utfordringer forts.

Fokus på kontroll I en gitt applikasjon, skal

beskyttelses mekanismene fokusere på data, operasjoner eller bruker?

Data: Sikrer data integritet (DBMS)

Operasjoner: Fokus på hvilken operasjoner skal utføres og av hvem, og hvilken rettigheter kjøres disse under.

Bruker: Hvilken roller har den enkelte bruker og har denne rollen tilgang til den angitte ressursen.

Page 12: Introduksjon til sikkerhet

Utfordringer forts. Hvor legge sikkerhets

mekansimer I hvilket lag i et data system

bør en sikkerhets mekanisme legges?

Hvor setter brukeren sin tilitt til systemet?

Eks: Hvis A skal sende en melding til B som befinner seg på et annet sub-nett så må A stole på kryptering i forbindelsen mellom de to sub-nettene. Hvis A ikke gjøre det og vil gjøre sine egne sikkerhets tiltak kan A kjøre SSL på topp av TCP og oppnå en sikker kanal til B.

Page 13: Introduksjon til sikkerhet

Flere sites koblet sammen gjennom et wide-area backbone service.

Page 14: Introduksjon til sikkerhet

Distribuering av sikkerhets mekanismer Trusted Computing Base

Sett av alle sikkerhets mekanismer i et datasystem som ”trust” bygger på.

Basisen for den ”trust” som applikasjoner legger i systemet.

Dette settet er best jo mindre det er, dvs mindre rom for feil i det du stoler på.

Page 15: Introduksjon til sikkerhet

Utfordringer forts.

Enkelhet Foretrekker man enkelhet – og høyere abstraksjon –

til et detalj-rikt sikkerhets miljø? Enkle mekanismer er enklere å forstå – MEN ikke

alltid så enkelt Man kan ønske feks kryptering slik at en tredje part

ikke skal forstå melding Komplekse systemer blir ikke mindre komplekse når

sikkerhet innføres En siste design decision ikke nevt i boka:

Hvordan kan man hindre en angriper fra å få tilgang til et lag under i beskyttelses mekanismen.

Page 16: Introduksjon til sikkerhet

Kryptografi

Intruders and eavesdroppers in communication.

Page 17: Introduksjon til sikkerhet

Kryptografi (2)

Transformere den opprinnelig meldingen til en uforståelig form som en uatrorisert enhet ikke kan dra nytte av

P=Dn(En(P)), n-nøkkel, D-dekrypt, E-krypt, P-plain tekst melding

Krypterings systemer Symmetriske krypterings systemer

DES (data encryption standard) P = Dn(En(P)) En felles nøkkel for kryptering og dekryptering Denne må begge parter kjenne til

Page 18: Introduksjon til sikkerhet

Kryptering (3) Assymetrisk kryptering

P = DnD(EnE(P)) 2 nøkler. En for kryptering og en for dekryptering En privat og en public (par for hver part). Ene brukes til kryptering og

andre til dekryptering Public kjennes av den andre part (og andre)!!!

Hash funksjoner h = H(m), h-produsert bit streng, H-hash funksjon, m-melding Produsere en bit streng ut i fra melding Sammenlignes med CRC Egenskaper til Hash-funksjoner

One-Way-Function Vanskelig å finne m som knyttes til h. Enkelt å lage h.

Weak-Collision-Detection Gitt m og h. Vanskelig å finne m ≠ m’, slik at H(m)=H(m’).

Strong-Collision-Detection Gitt H. Vanskelig å finne 2 input m og m’ slik at H(m)=H(m’).

Page 19: Introduksjon til sikkerhet

Symmetriske kryptering: DES (Data Encryption Standard)

a) Prinsippet til DESb) En krypterings runde bekrevet her. 64 bits data blokker 56 bits master key 16 runder der man driver med litt XOR’ing og bytte av blokker produserer en 64 bits kryptert blokk

Page 20: Introduksjon til sikkerhet

Symmtrisk kryptering: DES (2)

Detaljer for hver runde nøkkel generering i DES.

Page 21: Introduksjon til sikkerhet

Public-Key kryptering: RSA (Rivest, Shamir og Adleman)

Benytter seg av at alle hel-tall kan skrives som en produkt av prim-tall

Ingen metode for finne prim-faktorene for svært store tall

En privat og en public nøkkel som skapes fra store prim-tall og bruker disse for å kryptere beskjeden

Å generere en privat and public key krever 4 steg:1. Velg 2 veldig store prim tall, p og q2. Gjør n = p x q og z = (p – 1) x (q – 1)3. Velg et tall d som er relativ prim til z4. Lag et tall e slik at e x d = 1 mod z

Page 22: Introduksjon til sikkerhet

Hash funksjoner : MD5 (1)

The structure of MD5

• Produserer en 128 bits lang message digest fra en en vilkårlig lang binær streng som kommer inn • Bruker en del padding av inn-strengen for å lage en 448 bits blokk der lengden av den orginale strengen er lagt til som en 64 bits heltall (448+64=512) • Inn-strengen er konvertert til en serie av 512 bits blokker, k i antall k faser der hver av disse 512 bits blokkene lager en 128 bits message digest og under hver fase så bruker man digest resultatet fra forrige fase.• Hver fase har 4 funksjoner og man bruker disse funksjonene og noen bit-shift-rotate for å få dette digest resultatet

Page 23: Introduksjon til sikkerhet

Hash funksjoner : MD5 (2)

The 16 iterations during the first round in a phase in MD5.

Page 24: Introduksjon til sikkerhet

Oppsummering Viktig

Security Policy og Security Management (Enforcement) Trusler og mekanismer mot trusler Design av sikkerhets løsninger

Distribuerte problemer med lokal og global sikkerhets samspill Kryptering

Symmetring kryptering Assymetrisk kryptering Sammenligning:

Generelt kan man si at RSA innebærer mye mer arbeid DES 100-1000 ganger tregere enn DES Benytter ofte RSA mye til å utveksle hemmelige nøkler, men DES brukes til å

kryptere ”data” Hash-funksjoner

CRC lignende sak