Sunteți pe pagina 1din 40

Windows Security si PKI @ Microsoft - O privire din interior Monica Ene-Pietrosanu Senior Consultant Microsoft Romania

Agenda
Scurt indrumar de criptografie Windows PKI
Certificate si Servicii de Certificare Ierarhii de Autoritati de Certificare Proiectarea unei ierarhii de AC

Windows Security @ Redmond Intrebari

Ce este criptografia?
In-criptarea este procesul de transformare a unui text clar intr-un text cifrat De-criptarea este procesul invers Criptarea/decriptarea necesita:
Un algoritm, o cheie si date

Doua tipuri:
Cu cheie simetrica si asimetrica (publica)

Criptografia cu cheie simetrica


Necesita o cheie secreta partajata intre doua entitati

Hello, Bob!

*&^1 )-h@

Hello, Bob!

Criptografia cu cheie simetrica


Este rapida
De multe ori este numita si criptografie de masa (bulk cryptography)

Exemple de algoritmi simetrici:


DES DESX 3DES RC4 AES

Criptografia cu chei publice


Fara secret partajat Doua chei generate simultan
Numite pereche de chei key pair In relatie matematica Numere foarte, foarte, foarte mari Nefezabil sa se determine una din cealalta
Cheia publica Cheia privata

Folosirea criptografiei cu chei publice


Cheia publica este facuta publica Cheia privata este pastrata secreta
In general nu paraseste niciodata masina sau dispozitivul pe care a fost generata

Daca cheia privata este folosita pentru a cripta => doar cheia publica poate decripta

Criptografia cu cheie publica Mod de operare


Alice sending a private message to Bob

Hello, Mom!
Bobs Bobs private public key key

*&^1 )-h@

Hello, Mom!

A provable message from Bob

Hello, Mom!

c&16 (^%1

Hello, Mom!

Algoritmi cu chei publice


Criptografia cu chei publice este mult mai lenta decat criptografia cu cheie simetrica
Nepotrivita pentru criptarea de masa

Exemple de algoritmi:
RSA Diffie-Hellman Curbe eliptice

Functii Hash One-Way


Folosite pentru a determina daca datele au fost modificate Ca un CRC insa mult mai mai complex
De obicei au lungime de 128-biti sau 160-biti Nefezabil sa se produca un document care sa se potriveasca cu o valoare hash Un bit schimbat in mesaj afecteaza aproape jumatate din bitii valorii hash.

Functii hash one-way


Alice vrea sa trimita o comanda lui Bob si sa fie sigura ca aceasta nu este modificata

Order#: 10226 100 x Widget 50 x Foo 80 x Bar 200 x Wotsits

Digest
Hash Algorithm

Order#: 10226 100 x Widget 50 x Foo 80 x Bar 200 x Wotsits

Send to Bob

Digest

Functii hash one-way


Bob primeste comanda si verifica daca a fost modificata

Order#: 10226 100 x Widget 50 x Foo 80 x Bar 200 x Wotsits

Digest

Hash Algorithm

Digest

if

Digest

==

Digest

Then J

Autentificarea
Cum stie Bob ca mesajul provine de la Alice?
Alice cripteaza valoarea hash a comenzii cu cheia ei privata (semnare) Bob decripteaza valoarea hash cu cheia publica a lui Alice Daca valoarea hash decriptata este aceeasi cu valoarea hash calculata => comanda este autentica Deoarece certificatul este unul valid si de incredere => dovedeste identitatea lui Alice

Continutul nu este in mod necesar criptat!

Combinand cheile simetrice si publice


Nu vom folosi criptografia cu chei publice pentru a cripta intreaga comanda de plata prea lenta
Folosim chei simetrice

Cum transferam in mod sigur cheia simetrica de la Alice la Bob?


Combinand cele doua tehnologii

Chei simetrice & publice combinate

Alice generates a random number and transfers it securely to Bob using his public key this is a session key

Rand #
Bobs Bobs Random private public sym key key key

c&16 (^%1

Rand #

Alice can now use the session key to send data to Bob in a secure manner

Hello, Mom!

*&^1 )-h@

Hello, Mom!

Certificate
Un certificat este o asociere intre o identitate (subiect) si o cheie publica Certificatele contin
Cheia publica a subiectului Detalii despre subject Detalii despre emitatorul certificatului Data de expirare O semnatura digitala asupra continutului certificatului

Certificatul este semnat de catre o AC emitenta

Certificat X.509

Versiunea Numr Serial al certificatului Algoritmul folosit pentru semntura digital Numele Autoritii de Certificare care a emis certificatul Perioada de validitate Numele Subiectului Cheia Public a Subiectului ID unic al Autoritii emitente (cmp opional) ID unic al Subiectului (cmp opional) Extensii (cmp opional)

Cheia privat a Autoritii de Certificare

Genereaz Semntura Digital

Semntura digital a Autoritii de Certificare

Tipul Tipul

extensiei Critic/Ne-Critic extensiei Critic/Ne-Critic extensiei Critic/Ne-Critic

Valoare extensie Valoare extensie

Tipul

Valoare extensie

Certificatele
Beneficiul folosirii lor relatie de incredere Alice si Bob trebuie sa aiba incredere in aceeasi AC emitenta
VeriSign, Entrust, Thawte, etc. ACul intern al companiei/organizatiei

AC poate folosi certificate auto-semnate


Certificate radacina

Creeare Certificate
Cum obtine Bob un certificat
Bob genereaza o pereche de chei publica/privata Bob trimite o cerere de certificat (ce contine cheia publica) la AC AC trebuie sa valideze ca Bob este cine pretinde a fi AC emite certificat lui Bob Software-ul lui Bob memoreaza certificatul Bob si AC fac certificatul lui Bob cunoscut public.

Lantul de certificare
Certificat AC Rdcin

Certificat AC intermediara

Certificat Utilizator

Folosirea certificatelor
Multe aplicatii nu necesita un director
Au doar nevoie sa gaseasca certificatul destinatarului

Clientul isi prezinta certificatul (sau lantul de certificare) la server in timpul autentificarii
SSL, TLS, Smart card logon Email/SMIME, IPSec Certificatul este asociat cu contul de utilizator din Windows

Revocarea Certificatelor
Certificatele pot deveni invalide inainte de a expira.
Cheia privata este compromisa sau pierduta Schimbare nume utilizator

Cum afla utilizatorul de revocare?


Certificate Revocation Lists (CRLs) Online certificate status protocol (OCSP)

Microsoft Certificate Server


Componenta standard a Windows 2000 Server si Windows Server 2003 Componenta centrala a PKI
Primeste si valideaza cereri de certificate Genereaza si publica certificate Revoca certificate

Integrat cu Active Directory


Publicare certificat Informatie de revocare Management

Tipuri de instalari pentru Certificate Server


Enterprise
Online Necesita Active Directory directory service Clientii de Windows 2000, XP si 2003 Server gasesc AC in Active Directory

Stand-alone
Offline si domenii Microsoft Windows NT 4.0

Aplicatii PKI
Secure Email / S/MIME Web authentication / SSL SmartCard logon Encrypting File System (EFS) IPSec machine certificate Exchange 2000/5.5 KMS

Increderea
Relatia de incredere intre AC este intotdeauna bazata pe ierarhii Ierarhie cu o radacina
AC este fie radacina, fie subordonat Posibilitate ca AC sa fie luat offlinesecuritate

Ierarhie cross-certificata
AC este atat radacina cat si subordonat Ac offline - poate sa nu fie posibil

Ierarhii de certificare cu o radacina


Issuer: CorpCA Subject: CorpCA

Issuer: CorpCA Subject: ProjectCA

Issuer: CorpCA Subject: SubCA

Issuer: SubCA Subject: MailCA

Avantaje
Securitate crescuta Scalabilitate marita Model de administrare flexibil Suport AC comerciale
Verisign, GTE, Thawte

Modelul suportat cel mai comun de aplicatii:


Microsoft Internet Explorer, Internet Information Server, Netscape, Apache

Ierarhii de AC cu Certificare incrucisata


Issuer: IssuingCA Subject: CorpCA Issuer: CorpCA Subject: CorpCA Issuer: PartnerCA Subject: PartnerCA Issuer: SubCA Subject: PartnerCA

Issuer: CorpCA Subject: SubCA

Issuer: PartnerCA Subject: IssuingCA

Cross-Certificates

Certificarea incrucisata utilizari


Interoperabilitate business-to-business Bridge CAs
INteroperabilitate intre produse Domenii PKI disparate

Implica incredere totala intr-o ierarhie de AC straina

Securizarea AC
AC Radacina
Nivel maxim de securitate fizica
Offline in permanenta (masina mai putin perf) Intr-o zona cu acces restrictionat (vault)

Nivel inalt de securitate criptografica


Cheia cea mai mare Hardware security module (HSM)

Nivel inalt de administrare securizata


Access multi-party auditat

AC subordonate
Cerintele descresc cu distanta de la radacina

Documentatie
Windows Server 2003 docs - Its both good and free!
Help and Support Center (instalat pe masina) Resource Kit and Deployment Guide Whitepapers

Network Security, 2nd Edition


Kaufman, Perlman, Speciner Excellent theoretical reference

Intrebari?

Lets take a break


The fun part begins J

Campusul din Redmond


La 13 mile de Seattle

Campusul din Redmond


Aprox 25K angajati in Redmond. Varsta medie 36 ani

Windows Headquarters

Buildings 40, 26, 27, 28, 9 .

Around the campus

Windows Security - echipe


~300 oameni

Windows Trust Management Core Security

PKI (X.509, EFS, CAPI2, Enrollment, Certificate Services) RMS (client, server) SLS

Base Crypto (CAPI1, CSPs, DPAPI) Authentication Protocols (Kerb, SSL, NTLM, ) Logons (Smart Cards, WinLogon, CredMan) Security Tools Authorization

NGSCB

Next Generation Secure Computing Base

Hello from the AIM team J


Authentication and ID Management Team