350 likes | 506 Vues
Plan de l'expos . Revue du TPM et de ses services intrinsquesPositionnement dans une architecture x86Architecture du composant (modules crypto, mmoire protge,)Pile logicielle utilisatriceServices intrinsques (stockage scuris, scellement de donnes, mesure,)Services de haut niveaux as
E N D
1. Composant Cryptographique TPMRetours dexprience 03/05/2012 1 FRIFRI
2. Plan de lexpos Revue du TPM et de ses services intrinsques
Positionnement dans une architecture x86
Architecture du composant (modules crypto, mmoire protge,)
Pile logicielle utilisatrice
Services intrinsques (stockage scuris, scellement de donnes, mesure,)
Services de haut niveaux associs au composant
Mesure du poste client
Attestation distante
Gestion des cls et des certificats
Retours dexprience sur quelques applications utilisatrices
Stratgie de tests
Analyse de TrouserS, Trusted Grub, IMA, eCryptfs
Conclusion
03/05/2012 2 FRI
FRI
3. Positionnement du TPM 03/05/2012 3 Puce crypto esclave connecte au bus LPC
Principaux constructeurs (Infineon, Atmel, Broadcom, Intel, etc.)
Soude ou non la carte mre
Possibilit dintgration dans le southbridge des CM Intel rcentes (chipset ICH10) FRI
Composant esclave : nagit pas de son propre chef. Il est pilot par une application
Infineon et Atmel sont trs utiliss dans le monde du logiciel libre
BUS LPC < Southbridge < Processeur
Prix dune puce =5$
150 Millions de PC quips en 2008
250 Millions de PC en 2010(90% du March) FRI
Composant esclave : nagit pas de son propre chef. Il est pilot par une application
Infineon et Atmel sont trs utiliss dans le monde du logiciel libre
BUS LPC < Southbridge < Processeur
Prix dune puce =5$
150 Millions de PC quips en 2008
250 Millions de PC en 2010(90% du March)
4. Architecture interne du TPM 03/05/2012 4 Les spcifications TCG prvoient :
Le durcissement de la Puce :
Protection logicielle face la force brute
Protection matrielles contre les attaques intrusives et non intrusives
Gnrateur dala
Effacement durgence
Communications internes chiffres
16/24 Registres PCR de 160 bits, pouvant accueillir des mesures SHA-1
Taille des cls obligatoire pour le RSA <= 2048 bits FRI
Mmoire : volatile ou non
Dans la non volatile : SRK, EK, AIK
Mmoire volatile : Cls charges en mmoire pour tre utilises
SRK : Storage Root Key
EK : Endorsement Key (2048 bits)
AIK : Attestation Identity Key (2048 bits) signature
FRI
Mmoire : volatile ou non
Dans la non volatile : SRK, EK, AIK
Mmoire volatile : Cls charges en mmoire pour tre utilises
SRK : Storage Root Key
EK : Endorsement Key (2048 bits)
AIK : Attestation Identity Key (2048 bits) signature
5. Services intrinsques Gestion des cls (Cration, utilisation et protection de cls crypto)
(D) Chiffrement asymtrique de cls de session
(D) Chiffrement conditionn ltat des registres PCR (scellement)
Signature RSA de cls et des registres PCR
Vrification de signature RSA
Stockage chain dans les PCR de condenss SHA-1 de donnes
Gnration dala 03/05/2012 5 FRI
Scellement
Les oprations chiffrement sont fait lintrieur du TPM
Pas de service de chiffrement symtrique mis disposition des applicationsFRI
Scellement
Les oprations chiffrement sont fait lintrieur du TPM
Pas de service de chiffrement symtrique mis disposition des applications
6. Avantages / Inconvnients Oprations crypto (RSA/SHA-1/HMAC/) ralises lintrieur du TPM
Stockage scuris des cls prives dans le TPM
Protection matrielle et logicielles contre les attaques intrusives et non intrusives (selon les spcifications)
En dehors des spcifications fonctionnelles publiques, limplmentation est de type boite noire (quid de la gnration dala) 03/05/2012 6 FRI
FRI
7. Communications avec le TPM 03/05/2012 7 Les applications sappuient sur la pile TPM Software Stack (TSS) qui prend en charge :
La communication avec la puce de type challenge rponse
La synchronisation des diffrentes requtes
La gestion des cls
Lauthentification
Pilotes TPM diffrents suivant le fabricant, disponibles sous Windows / Linux
Protections offertes entre la puce et la TSS
Authorization Protocol : protection en intgrit + authentification mutuelle TPM/Utilisateur
Transport Sessions (TPM 1.2) : protection en confidentialit FRI
Opration de hachage et de chiffrement symtrique
TSS : verts clairs, le pilote ne fait pas partie de la TSS
Donnes AUTH sont des SHA1
TPM mono tche. TSS permet de synchroniser les diffrentes requtes.
FRI
Opration de hachage et de chiffrement symtrique
TSS : verts clairs, le pilote ne fait pas partie de la TSS
Donnes AUTH sont des SHA1
TPM mono tche. TSS permet de synchroniser les diffrentes requtes.
8. Service de haut-niveaux Mesure du poste client : vue densemble
Objectif : mesurer lintgrit dun poste client depuis la phase de boot et tablir une chaine de confiance
Le processus de mesure est initi par le CRTM : racine de confiance pour la mesure 03/05/2012 8 GGX
Transitivit des mesures
Mesurer lintgrit pour tre vrifier ultrieurement
Fichier SML : pour rcolter les mesures
Problme : comment sassurer que les mesures sont intgres et non falsifies ?GGX
Transitivit des mesures
Mesurer lintgrit pour tre vrifier ultrieurement
Fichier SML : pour rcolter les mesures
Problme : comment sassurer que les mesures sont intgres et non falsifies ?
9. Service de haut-niveaux Mesure du poste client
Principe de la mesure :
Processus dextension dun registre PCR :
Permet de chainer lensemble des mesures
Et donc de vrifier lintgrit du fichier SML
Le processus se focalise sur la mesure et le stockage scuris des mesures : pas dattestation par un tiers
03/05/2012 9 GGX
Quest-ce quune mesure ? SHA1
PCR : Platform Configuration Register
SML : Stored Measurement Log
A quoi servent les PCR ? valider lintgrit des mesures stockes dans le SML
Chaque mesure est associe un registre PCR
La vrification se fait un ralisant le processus dextension des mesures concernes par un registre PCR et en comparant le rsultat avec le registre PCR
PCR sont volatiles !!!
Initialiss chaque dmarrage de la machineGGX
Quest-ce quune mesure ? SHA1
PCR : Platform Configuration Register
SML : Stored Measurement Log
A quoi servent les PCR ? valider lintgrit des mesures stockes dans le SML
Chaque mesure est associe un registre PCR
La vrification se fait un ralisant le processus dextension des mesures concernes par un registre PCR et en comparant le rsultat avec le registre PCR
PCR sont volatiles !!!
Initialiss chaque dmarrage de la machine
10. Service de haut-niveaux Mesure du poste client : Objectif dun attaquant
Hypothse de lattaque : le CRTM est de confiance
Scurit du schma ~ Scurit de SHA-1 (collision en 263 ) 03/05/2012 10 FRI
Raisonnement sur un registre donn
Soit un lment logiciel mesurFRI
Raisonnement sur un registre donn
Soit un lment logiciel mesur
11. Mesure du poste client 03/05/2012 11
12. Service de haut-niveaux Attestation distante (principe)
Offre lopportunit un tiers distant de vrifier ltat dune plateforme
Gnration pour chaque vrifieur de cls filles RSA AIKi dattestation didentit (signe par EK)
03/05/2012 12 FRI
Principe : envoyer le fichier SML avec les registres PCR signs par une AIK
Pourquoi une AIK ? Pour viter dexposer lEK.
Lintgrit et la provenance des registres PCR est assurs par la signature AIK
Le vrifieur peut vrifier lintgrit du fichier SML
Le vrifieur peut ensuite jug si les lments logiciels mesurs sont valides ou non partir de la mesure
FRI
Principe : envoyer le fichier SML avec les registres PCR signs par une AIK
Pourquoi une AIK ? Pour viter dexposer lEK.
Lintgrit et la provenance des registres PCR est assurs par la signature AIK
Le vrifieur peut vrifier lintgrit du fichier SML
Le vrifieur peut ensuite jug si les lments logiciels mesurs sont valides ou non partir de la mesure
13. Service de haut-niveaux Attestation distante. Deux types de protocole :
v1.1 : Protocole avec AC prive pour la certification des AIKi. Problmes :
Anonymat. Collusion entre AC prives et vrifieurs
Disponibilit. Gestion du rseau dAC
v1.2 Protocole DAA (Direct Anonymous Attestation)
Principe : Protocole zero-knowledge. Aucune information sur lidentit du TPM nest dvoile.
Pas dimplmentation fonctionnelle du protocole pour linstant 03/05/2012 13 FRI
Deux protocoles permettant de raliser lattestation distante
FRI
Deux protocoles permettant de raliser lattestation distante
14. Trousseau de cls 03/05/2012 14 Principaux types de cls RSA :
Cl de signature
Cl de chiffrement
Cl de scellement / stockage
Certaines cls ne sont pas transfrables dune plateforme une autre (EK, AIK, SRK) du fait du principe dunicit du TPM Chaque cl est protge (scelle) par une cl mre (principe de hirarchisation des cls)
La cl racine (SRK : Storage Root Key) peut protger une infinit de cls stockes lextrieur du TPM (cf. schma)
Lutilisation dune cl peut tre conditionne :
A la connaissance de son mot de passe
A la connaissance du mot de passe de la cl parente
A ltat des registres PCR FRI
Les clefs sont utilises dans le TPM
Les clefs sont stockes chiffrs sur le disque dur
Clefs migrables
Donnes dauth -> SHA-1
Au niveau de la TSS plusieurs choix sont possibles : SHA1, clair, UNICODEFRI
Les clefs sont utilises dans le TPM
Les clefs sont stockes chiffrs sur le disque dur
Clefs migrables
Donnes dauth -> SHA-1
Au niveau de la TSS plusieurs choix sont possibles : SHA1, clair, UNICODE
15. Retours dexprience Stratgie de test
Trusted Grub
Integrity Measurement Architecture (IMA)
Trousers
eCryptfs 03/05/2012 15 FRI
FRI
16. Stratgie des tests Stratgie de tests inspir du schma dvaluation CSPN
Mthodologie privilgiant lexpertise technique
Evaluation en temps contraint
Etapes de lanalyse
Description des fonctionnalits, de lenvironnement dutilisation et de scurit
Analyse de la conformit
Analyse de la rsistance
Analyse des vulnrabilits
Remarque : La ralisation dattaques matrielles ne figurait pas dans le primtre des tests (SPA, DPA, HO-DPA).
03/05/2012 16 FRI
FRI
17. Trusted Grub Grub modifi afin de raliser des mesures au dmarrage
Trusted Grub mesure :
Lui mme (stage 1.5 et stage 2. Le stage 1 (MBR) est mesur par le BIOS)
Le fichier de configuration de Grub
Le noyau et le systme minimal initial (initrd)
Possibilit de dsigner des fichiers mesurer
Remarques importantes :
Trusted Grub nassure quun service de mesure
Pas de vrification des mesures effectues
Erreur de programmation trouve dans lanalyse :
Processus dextension non ralis 03/05/2012 17 GGX
Il existe plusieurs branches de Trusted GrubGGX
Il existe plusieurs branches de Trusted Grub
18. IMA Patch du noyau Linux, dvelopp par IBM
Permet lOS de mesurer automatiquement lexcution :
Les excutables
Les pilotes
Les librairies partages
Offre une interface de mesure pour les applications
Transparent pour lutilisateur
IMA peut
Dtecter les changements dintgrit des binaires
Dtecter les violations dintgrit
03/05/2012 18 GGX
GGX
19. IMA Principe de la violation de lintgrit pour IMA 03/05/2012 19 GGX
GGX
20. IMA Bilan:
IMA se focalise sur la mesure
Pas de mcanismes de vrification des mesures par rapport une base de rfrence
Pas de prise de dcision
Il sagit dune brique du mcanisme dattestation de la plateforme, pas dune solution complte
Ncessite une application tierce pour interprter les rsultats dIMA
Quelque bogues
03/05/2012 20 GGX
GGX
21. Trousers TSS libre sous Linux (http://trousers.sourceforge.net)
Version actuelle : 3.1
Implmente 85% les spcification 1.2
Analyse selon une mtrique de cotation dAPI cryptographique:
Indpendance vis--vis des algorithmes
Indpendance vis--vis du module cryptographique
Degr dexpertise cryptographique
Contrle de flux
Partage de charge, gestion de lasynchronisme
03/05/2012 21 FRI
FRI
22. Trousers Bilan :
Ddie au pilotage dun TPM (pas de rutilisation possible avec un composant tiers)
Implmentation de la pile bien avance (reste principalement le DAA)
Sapparente plus un prototype qu une API finalise
Pas de protection contre les principales attaques de la littrature
Application :
API Hooking afin de rcuprer des informations sensibles :
Mot de passe de la clef SRK
Clef symtrique utilise 03/05/2012 22 FRI
FRI
23. eCryptfs Couche de chiffrement au niveau du systme de fichiers
Une clef de chiffrement symtrique par fichier
Chaque clef symtrique est scelle par le TPM 03/05/2012 23 GGX
GGX
24. eCryptfs Chiffrement conditionnel
Accs au systme de fichier conditionn ltat de la machine
Authentification avec la puce du TPM non conforme des spcifications du TCG
Outil dexpert : requiert des connaissances approfondies du fonctionnement du TPM : choix des registres PCR utiliser pour le scellement. Il sagit dun choix crucial !
Quelques bogues
Pas assez mature pour une utilisation dans un environnement de production
03/05/2012 24 GGX
GGX
25. Conclusion Technologie prometteuse pour la scurisation des architectures PC
Services cryptographiques matriels et logiciels bas cots
Attestation distante avec service danonymat
Technologie souffrant nanmoins de problmes de maturit
Non-conformit des applications par rapport aux spcifications
Problme de compatibilit matrielle de certains composants
Opacit des spcifications (manque un niveau de spcification formel)
03/05/2012 25 FRIFRI
26. Questions ? 03/05/2012 26
27. Annexe 03/05/2012 27
28. Synoptique de Trusted Grub 03/05/2012 28
29. Exemple de contenu des PCR 03/05/2012 29
30. IMA Fichier SML 03/05/2012 30
31. IMA Processus de mesure 03/05/2012 31
32. Processus de certification 03/05/2012 32 Principe de certification chaine
Ex: VeriSign -> Infineon -> HP -> TPM
La concordances des signatures est vrifie lors du mcanisme dattestation distante, afin de sassurer que les donnes signes proviennent dun TPM physique conforme aux spcifications du TCG
Gnration de la cl EK (Endorsment Key) lors de lintgration du TPM sur la carte mre
Cration dun certificat contenant la signature de lEK
Ce certificat est livr avec le TPM
Les autres certificats (Infineon, VeriSign) sont disponibles sur internet :
http://www.infineon.com/cms/en/product/channel.html?channel=ff80808112ab681d0112ab692060011a
33. Dmonstration 03/05/2012 33
34. Dmonstration 03/05/2012 34
35. Vrification locale du fichier SML Absence de mcanisme de vrification dans IMA,Trusted Grub
Script dvelopp par Amossys
Permet de vrifier la cohrence des mesures
Ne permet pas de valider lintgrit dune application (ncessiterait une mesure de rfrence) 03/05/2012 35 GGX
GGX
36. Mesure du poste client 03/05/2012 36 GGX
GGX