Upload
devereux-le-bihan
View
133
Download
23
Embed Size (px)
Citation preview
Architecture et mise en œuvre Architecture et mise en œuvre du chiffrement de fichiers EFSdu chiffrement de fichiers EFS
Jean-Yves PoublanJean-Yves PoublanConsultant PrincipalConsultant Principal
MicrosoftMicrosoft
AgendaAgenda
Rappel du fonctionnelRappel du fonctionnel ArchitectureArchitecture Mise en œuvre/meilleures pratiquesMise en œuvre/meilleures pratiques
Point sur le fonctionnel EFSPoint sur le fonctionnel EFS
FonctionnelFonctionnel
Protection des fichiers par chiffrementProtection des fichiers par chiffrement Vol de portable, disque durVol de portable, disque dur Attaque hors ligne, boot d’un autre OSAttaque hors ligne, boot d’un autre OS
Intégration sécurité Windows et Active DirectoryIntégration sécurité Windows et Active Directory Chiffrement/Déchiffrement pour des comptes WindowsChiffrement/Déchiffrement pour des comptes Windows Pas de groupesPas de groupes
Mais chiffrement pour plusieurs utilisateurs possibleMais chiffrement pour plusieurs utilisateurs possible
Intégré au système de fichiers NTFSIntégré au système de fichiers NTFS EFS est une fonction de NTFSEFS est une fonction de NTFS Transparent pour les programmes et applicationsTransparent pour les programmes et applications
FonctionnelFonctionnel
EFS est une application PKIEFS est une application PKI
Chiffrement du contenu AES 256 par défautChiffrement du contenu AES 256 par défaut 3DES configurable par Policy3DES configurable par Policy
System cryptography: Use FIPS compliant algorithms for encryptionSystem cryptography: Use FIPS compliant algorithms for encryption HKLM\SYSTEM\CurrentControlSet\Control\LSA\FipsAlgorithmPolicy HKLM\SYSTEM\CurrentControlSet\Control\LSA\FipsAlgorithmPolicy
Driver Fips.sys FIPS 140-1Driver Fips.sys FIPS 140-1 DESX pour accès aux fichiers Windows 2000DESX pour accès aux fichiers Windows 2000
Chiffrement clé de session RSA 1024 par défautChiffrement clé de session RSA 1024 par défaut HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS\
RSAKeyLengthRSAKeyLength Certificats X509v3Certificats X509v3 Certificats spécifiques EFSCertificats spécifiques EFS
Extensions Extensions Application PolicyApplication Policy/EKU/EKU Encrypting File System – oid 1.3.6.1.4.1.311.10.3.4Encrypting File System – oid 1.3.6.1.4.1.311.10.3.4 File Recovery – oid 1.3.6.1.4.1.311.10.3.4.1File Recovery – oid 1.3.6.1.4.1.311.10.3.4.1
EFS ne peut fonctionner qu’avec les CSP RSA « logiciels » de la EFS ne peut fonctionner qu’avec les CSP RSA « logiciels » de la plateformeplateforme Pas de certificat EFS sur SmartcardPas de certificat EFS sur Smartcard
FonctionnelFonctionnel Modèle dit « Modèle dit « data recoverydata recovery » (en contraste avec « » (en contraste avec « key key
recoveryrecovery ») ») Mise en œuvre optionnelle d’une politique de récupérationMise en œuvre optionnelle d’une politique de récupération Agents de récupération (DRA)Agents de récupération (DRA)
File Encryption Key (FEK)File Encryption Key (FEK) Chiffrement RSA de la FEK n fois avec clés publiques desChiffrement RSA de la FEK n fois avec clés publiques des
n entités qui devront accéder au fichiern entités qui devront accéder au fichier DDF Key Ring – Data Decryption Field – UtilisateursDDF Key Ring – Data Decryption Field – Utilisateurs DRF Key Ring – Data Recovery Field – Agents de récupération DRF Key Ring – Data Recovery Field – Agents de récupération
(DRA)(DRA) Peut être vide (pas de politique de récupération)Peut être vide (pas de politique de récupération)
Key Rings font partie du fichier (metadata NTFS)Key Rings font partie du fichier (metadata NTFS)
DDF
DDF
DDF
DDFChiffrement
RSA de la FEKDDF Key Ring
FonctionnelFonctionnel Attribut des dossiers et des fichiersAttribut des dossiers et des fichiers
État chiffré ou non chiffré (comme la compression)État chiffré ou non chiffré (comme la compression) E = EncryptedE = Encrypted
Explorateur WindowsExplorateur Windows Couleur verteCouleur verte
Clé de configuration Clé de configuration Click droit propriétés/général/avancéClick droit propriétés/général/avancé Menu contextuelMenu contextuel
HKLM\Software\Microsoft\Windows\ExplorerHKLM\Software\Microsoft\Windows\Explorer EncryptionContexteMenuEncryptionContexteMenu
Désignation des utilisateurs par leurs certificatsDésignation des utilisateurs par leurs certificats Visualisation des agents de récupérationVisualisation des agents de récupération
Politique de récupérationPolitique de récupération Scénario typique, et recommandéScénario typique, et recommandé
On active le chiffrement sur un dossierOn active le chiffrement sur un dossier On place les fichiers à protéger dans ce dossierOn place les fichiers à protéger dans ce dossier
FonctionnelFonctionnel Chiffrement sur serveur du fichiers SMB possibleChiffrement sur serveur du fichiers SMB possible
Transport en clairTransport en clair Utiliser IPSECUtiliser IPSEC
Chiffrement redirecteur WebDAV (préféré)Chiffrement redirecteur WebDAV (préféré) Serveur WebDAVServeur WebDAV
Partage de fichier sur HTTPPartage de fichier sur HTTP Alternative à SMB, RFC 2518Alternative à SMB, RFC 2518
Chiffrement sur la station, transport chiffréChiffrement sur la station, transport chiffré IIS supporte Webdav de par les Web foldersIIS supporte Webdav de par les Web folders SPS ne supporte pas EFSSPS ne supporte pas EFS
EFS n’est pas adapté pour le partage des fichiers EFS n’est pas adapté pour le partage des fichiers chiffréschiffrés Son rôle premier est la protection contre le volSon rôle premier est la protection contre le vol Pour la protection d’informations confidentielles à Pour la protection d’informations confidentielles à
partager, on s’orientera vers RMS, et/ou S/MIMEpartager, on s’orientera vers RMS, et/ou S/MIME
FonctionnelFonctionnel
Pas de chiffrement des fichiers et dossiers systèmePas de chiffrement des fichiers et dossiers système Logique d’initialisation système et driversLogique d’initialisation système et drivers %systemroot%%systemroot% Attribut SYSTEMAttribut SYSTEM
Pas de chiffrement des fichiers compressés possiblePas de chiffrement des fichiers compressés possible C’est l’un ou l’autre (chiffrement, ou compression)C’est l’un ou l’autre (chiffrement, ou compression)
Droits propriétaire non nécessaireDroits propriétaire non nécessaire Permission écriture suffisantePermission écriture suffisante
API de programmationAPI de programmation La plus part des opérations EFS peuvent être effectuées La plus part des opérations EFS peuvent être effectuées
par programmationpar programmation
Intégration backupIntégration backup Backup des fichiers sous leur forme chiffréeBackup des fichiers sous leur forme chiffrée
Copie et déplacementCopie et déplacement
Opérations localesOpérations locales Shell glisser/déplacer, copier/collerShell glisser/déplacer, copier/coller
Vers un dossier chiffréVers un dossier chiffré Le fichier arrive chiffré quelque soit son état initial et que Le fichier arrive chiffré quelque soit son état initial et que
l’opération soit une copie ou un déplacementl’opération soit une copie ou un déplacement Vers un dossier non chiffréVers un dossier non chiffré
Le fichier conserve son étatLe fichier conserve son état
Commande CopyCommande Copy IDEM shellIDEM shell
Vers un dossier chiffréVers un dossier chiffré• Le fichier arrive chiffré quelque soit son état initialLe fichier arrive chiffré quelque soit son état initial
Vers un dossier non chiffréVers un dossier non chiffré• Le fichier conserve son étatLe fichier conserve son état
Commande MoveCommande Move Le fichier conserve son étatLe fichier conserve son état
Copie et déplacementCopie et déplacement
D’un fichier chiffré vers un serveur distant (SMB)D’un fichier chiffré vers un serveur distant (SMB)Le transport est en clair: utiliser IPSEC lorsque possibleLe transport est en clair: utiliser IPSEC lorsque possible
Serveur ne supporte pas le chiffrement EFSServeur ne supporte pas le chiffrement EFS Message d’avertissement (Windows XP/2003) et Message d’avertissement (Windows XP/2003) et
possibilité pour l’utilisateur d’annuler l’opérationpossibilité pour l’utilisateur d’annuler l’opération
Serveur supporte EFS et le compte machine du Serveur supporte EFS et le compte machine du serveur est « serveur est « trusted for delegationtrusted for delegation » dans AD » dans AD Déchiffrement, transport en clair, et rechiffrement sur le Déchiffrement, transport en clair, et rechiffrement sur le
serveurserveur
Options ligne de commande pour permettre la Options ligne de commande pour permettre la copie vers une destination en claircopie vers une destination en clair Copie /DCopie /D Xcopy /GXcopy /G
API de programmationAPI de programmation FILE_ATTRIBUTE_ENCRYPTED (0x00000040)FILE_ATTRIBUTE_ENCRYPTED (0x00000040)
GetFileAttributeGetFileAttribute//SetFileAttributeSetFileAttribute (ne chiffre pas) (ne chiffre pas) CreateFileCreateFile FILE_ATTRIBUTE_ENCRYPTED (chiffre) FILE_ATTRIBUTE_ENCRYPTED (chiffre)
EncryptFileEncryptFile//DecryptFileDecryptFile (chiffre/déchiffre) (chiffre/déchiffre) FileEncryptionStatusFileEncryptionStatus
FILE_ENCRYPTABLE, FILE_IS_ENCRYPTED, FILE_SYSTEM_ATTRFILE_ENCRYPTABLE, FILE_IS_ENCRYPTED, FILE_SYSTEM_ATTR AddUsersToEncryptedFileAddUsersToEncryptedFile, , QueryUsersOnEncryptedFileQueryUsersOnEncryptedFile QueryRecoveryAgentsOnEncryptedFileQueryRecoveryAgentsOnEncryptedFile SetUserFileEncryptionKeySetUserFileEncryptionKey EncryptionDisableEncryptionDisable
Désactive chiffrement sur un répertoireDésactive chiffrement sur un répertoire EncryptFile échoueraEncryptFile échouera FileEncryptionStatus ne retournera pas FILE_ENCRYPTABLEFileEncryptionStatus ne retournera pas FILE_ENCRYPTABLE
ReadEncryptedFileRawReadEncryptedFileRaw, , WriteEncryptedFileRawWriteEncryptedFileRaw Backup, non documenté Plateform SDKBackup, non documenté Plateform SDK
OutilsOutils CipherCipher
Chiffrement/déchiffrementChiffrement/déchiffrement Lister et localiser les fichiers chiffrésLister et localiser les fichiers chiffrés Mise à jour des fichiers pour une nouvelle clé EFS et agents de Mise à jour des fichiers pour une nouvelle clé EFS et agents de
récupération (touch)récupération (touch) Remise à zéro de l’espace disque non utiliséRemise à zéro de l’espace disque non utilisé Obtenir un nouveau certificat EFS d’une CA en ligneObtenir un nouveau certificat EFS d’une CA en ligne
EFSInfoEFSInfo Windows Support ToolsWindows Support Tools Affichage des utilisateurs pour des fichiers/dossiersAffichage des utilisateurs pour des fichiers/dossiers Affichage des « thumbprint » des certificats pour des Affichage des « thumbprint » des certificats pour des
fichiers/dossiersfichiers/dossiers Affichage du « thumbprint » du certificat EFS courantAffichage du « thumbprint » du certificat EFS courant
HKCU\Software\Microsoft\Windows NT\CurrentVersion\EFS\HKCU\Software\Microsoft\Windows NT\CurrentVersion\EFS\CurrentKeys\CertificateHashCurrentKeys\CertificateHash
Affichage agents de recovery pour des fichiers/dossiersAffichage agents de recovery pour des fichiers/dossiers
RévocationRévocation
Vérification de la révocation lors de l’ajout de Vérification de la révocation lors de l’ajout de certificats sur un fichier chiffrécertificats sur un fichier chiffré Si le certificat s’avère être révoqué, il est rejetéSi le certificat s’avère être révoqué, il est rejeté
Pas de vérification si l’utilisateur possède la clé Pas de vérification si l’utilisateur possède la clé privée correspondante au certificatprivée correspondante au certificat
Pas de vérification de révocation si le certificat ne Pas de vérification de révocation si le certificat ne contient pas de CDPcontient pas de CDP
Si le certificat est « self-signed », on demande à Si le certificat est « self-signed », on demande à l’utilisateur s’il veut y faire confiance et l’utiliserl’utilisateur s’il veut y faire confiance et l’utiliser Rajout du certificat dans le store « trusted people »Rajout du certificat dans le store « trusted people »
ArchitectureArchitecture
EFS - ArchitectureEFS - Architecture
User ModeKernel Mode
EFS Layered Driverefs.sys
EFS Layered Driverefs.sys
NTFS Driverntfs.sys
NTFS Driverntfs.sys
Partition Disk
Crypto API
Application (Explorer)
LSASS
feclient.dllfeclient.dll
kernel32.dll
API Win32
Service EFSlsasrv.dll
CreateFileReadFile/WriteFileDeviceIOControl
DeviceIOControl• FSCTL_ENCRYPTION_FCTL_IO
• EFS_SET_ENCRYPT
CertificatClé Privée
FILE_ATTRIBUTE_ENCRYPTED
EncryptFileDecryptFile
Callouts (FSRTL):• EfsRead/EfsWrite• EfsOpenFile• EfsFileControl
ChiffrementRSA (PKI)
ChiffrementSymmétrique
advapi32.dlladvapi32.dll
LPCefsadu.dllefsadu.dll
Protection de la clé privéeProtection de la clé privéeCSP logicielCSP logiciel
Chiffrement via DPAPI (Data Protection API)Chiffrement via DPAPI (Data Protection API) CryptProtectData, CryptUnprotectDataCryptProtectData, CryptUnprotectData Seul le même utilisateur peut retrouver l’information en Seul le même utilisateur peut retrouver l’information en
clair – c’est le même utilisateur qui doit invoquer protect clair – c’est le même utilisateur qui doit invoquer protect et unprotectet unprotect
Source d’entropieSource d’entropie CrédentielsCrédentiels de l’utilisateur (NTHash du mot de passe) de l’utilisateur (NTHash du mot de passe) Entropie supplémentaire spécifique à l’informationEntropie supplémentaire spécifique à l’information
Phrase secrète utilisateurPhrase secrète utilisateur Non utilisé par EFS (transparence)Non utilisé par EFS (transparence)
Gestion des changements de mot de passeGestion des changements de mot de passe Implications syskeyImplications syskey
Stockage du « blob » DPAPI dans le profil de Stockage du « blob » DPAPI dans le profil de l’utilisateurl’utilisateur c:\Documents and Settings\<username>\Application c:\Documents and Settings\<username>\Application
Data\Microsoft\Protect\<textual user SID>Data\Microsoft\Protect\<textual user SID>
DPAPIDPAPIPrincipe de fonctionnementPrincipe de fonctionnement
Chiffrement 3DESChiffrement 3DES Clé dérivée d’un secret maîtreClé dérivée d’un secret maître
Unique à chaque protection par l’ajout d’aléa et de l’entropie Unique à chaque protection par l’ajout d’aléa et de l’entropie additionnelleadditionnelle
Secret maîtreSecret maître Stocké dans le profil utilisateurStocké dans le profil utilisateur Chiffrement 3DES avec clé dérivée du NTHash du compteChiffrement 3DES avec clé dérivée du NTHash du compte
SHA-1 et PBKDF2SHA-1 et PBKDF2 Pour machines domaine, chiffrement une deuxième foisPour machines domaine, chiffrement une deuxième fois
RSA avec clé publique du DCRSA avec clé publique du DC
Renouvellement du secrets maîtres tous les trois Renouvellement du secrets maîtres tous les trois moismois Historique des secrets maîtres (fichiers)Historique des secrets maîtres (fichiers)
Secret maître identifié par GUIDSecret maître identifié par GUID GUID fait partie du blob DPAPIGUID fait partie du blob DPAPI
DPAPIDPAPIChangement de mot de passeChangement de mot de passe
Machine hors domaine (compte local)Machine hors domaine (compte local) DPAPI utilise l’événement de changement de mot de passeDPAPI utilise l’événement de changement de mot de passe Le secret maître est déchiffré avec l’ancien NTHash, Le secret maître est déchiffré avec l’ancien NTHash,
rechiffré avec le nouveau NTHashrechiffré avec le nouveau NTHash En case de perte de mot de passeEn case de perte de mot de passe
Utiliser le Password Recovery DiskUtiliser le Password Recovery Disk
Machine du domaineMachine du domaine Scénario pour lequel le mot de passe a été changé à partir Scénario pour lequel le mot de passe a été changé à partir
d’une autre machined’une autre machine Nouveau NTHash ne permet pas de déchiffrer le secret Nouveau NTHash ne permet pas de déchiffrer le secret
maîtremaître DPAPI invoque le DC, lui fournit le secret maître chiffré, et le DPAPI invoque le DC, lui fournit le secret maître chiffré, et le
DC renvoie le secret maître déchiffréDC renvoie le secret maître déchiffré DPAPI rechiffre le secret maître avec le nouveau NTHashDPAPI rechiffre le secret maître avec le nouveau NTHash Fonctionne en cas de perte de mot de passeFonctionne en cas de perte de mot de passe
Reset du mot de passe par l’administrateurReset du mot de passe par l’administrateur
SyskeySyskey
Chiffrement des NTHash dans la SAM et/ou ADChiffrement des NTHash dans la SAM et/ou AD RC4 128/MD5RC4 128/MD5 Clé unique à chaque champ, toutefois dérivée d’une clé Clé unique à chaque champ, toutefois dérivée d’une clé
de boot: « de boot: « syskeysyskey » »
SYSKEY mode 1SYSKEY mode 1 La clé de boot est dissimulée et éparpillée sur le disqueLa clé de boot est dissimulée et éparpillée sur le disque
Permet le démarrage sans intervention de l’utilisateurPermet le démarrage sans intervention de l’utilisateur
SYSKEY mode 2SYSKEY mode 2 La clé est dérivée d’un mot de passe de démarrage, que La clé est dérivée d’un mot de passe de démarrage, que
l’utilisateur doit connaître et saisirl’utilisateur doit connaître et saisir
SYSKEY mode 3SYSKEY mode 3 La clé est générée par le système et stockée sur une La clé est générée par le système et stockée sur une
disquettedisquette Nécessite la disquette pour démarrerNécessite la disquette pour démarrer
SyskeySyskey
Protection de la clé EFSProtection de la clé EFS
DPAPI avec un compte local à la machineDPAPI avec un compte local à la machine Le NTHash de compte se trouve sur le disque de la Le NTHash de compte se trouve sur le disque de la
machinemachine Syskey mode 1 vulnérableSyskey mode 1 vulnérable Il faut appliquer Syskey en mode 2 ou 3Il faut appliquer Syskey en mode 2 ou 3
DPAPI avec un compte du domaineDPAPI avec un compte du domaine Le NTHash du compte ne se trouve pas sur le disque de la Le NTHash du compte ne se trouve pas sur le disque de la
machine*machine*
*Sauf Smartcard logon, en quel cas le NTHash se trouve sur le disque sous sa forme chiffrée *Sauf Smartcard logon, en quel cas le NTHash se trouve sur le disque sous sa forme chiffrée RSA avec la clé publique de la SmartcardRSA avec la clé publique de la Smartcard
Mise en œuvre d’EFSMise en œuvre d’EFS
Gestion certificats et clésGestion certificats et clés
Notion de certificat/clé courantNotion de certificat/clé courant HKCU\Software\Microsoft\Windows NT\CurrentVersion\HKCU\Software\Microsoft\Windows NT\CurrentVersion\
EFS\CurrentKeys\CertificateHashEFS\CurrentKeys\CertificateHash EFSINFO /YEFSINFO /Y
Stores utilisésStores utilisés MyMy Trusted PeopleTrusted People
Trust explicite de certificats self-signedTrust explicite de certificats self-signed Other PeopleOther People
Office de cacheOffice de cache Typiquement les certificats émis par une CATypiquement les certificats émis par une CA Obtenus depuis l’annuaire Active Directory (userCertificate), Obtenus depuis l’annuaire Active Directory (userCertificate),
sont conservés dans ce storesont conservés dans ce store
Gestion certificats et clésGestion certificats et clésMachines hors domaineMachines hors domaine
Lors d’un chiffrement de fichier…Lors d’un chiffrement de fichier…
S’il y a un certificat courant, EFS l’utiliseS’il y a un certificat courant, EFS l’utilise S’il n’y a pas de certificat courant, ou le certificat S’il n’y a pas de certificat courant, ou le certificat
courant n’existe pas, EFS recherche un certificat courant n’existe pas, EFS recherche un certificat acceptable (Application Policy/EKU)acceptable (Application Policy/EKU) S’il en trouve un, il l’utiliseS’il en trouve un, il l’utilise Il le configure comme certificat courantIl le configure comme certificat courant
Si aucun certificat EFS n’existe, une paire de clé et Si aucun certificat EFS n’existe, une paire de clé et un certificat auto-signé sont créésun certificat auto-signé sont créés Mise à jour du certificat courant dans le registreMise à jour du certificat courant dans le registre
Gestion certificats et clésGestion certificats et clésMachines du domaineMachines du domaine
Lors d’un chiffrement de fichier…Lors d’un chiffrement de fichier…
S’il y a un certificat courant, EFS l’utiliseS’il y a un certificat courant, EFS l’utilise S’il n’y a pas de certificat courant, ou le certificat courant S’il n’y a pas de certificat courant, ou le certificat courant
n’existe pas, EFS recherche un certificat acceptable n’existe pas, EFS recherche un certificat acceptable (Application Policy/EKU)(Application Policy/EKU) S’il en trouve un, il l’utiliseS’il en trouve un, il l’utilise Il le configure comme certificat courantIl le configure comme certificat courant
Sinon, EFS tente de localiser une CA d’Entreprise et d’enrôler Sinon, EFS tente de localiser une CA d’Entreprise et d’enrôler un certificat EFSun certificat EFS Il faut qu’une CA d’Entreprise « serve » une template EFS et que Il faut qu’une CA d’Entreprise « serve » une template EFS et que
la template ait l’ACE « Enroll » pour l’utilisateurla template ait l’ACE « Enroll » pour l’utilisateur Mise à jour du certificat courant dans le registreMise à jour du certificat courant dans le registre
Finalement, lorsque les étapes ci-dessus ont échoué, une Finalement, lorsque les étapes ci-dessus ont échoué, une paire de clé et un certificat auto-signé sont crééspaire de clé et un certificat auto-signé sont créés Mise à jour du certificat courant dans le registreMise à jour du certificat courant dans le registre
Déploiement de certificats EFSDéploiement de certificats EFS Auto-EnrôlementAuto-Enrôlement
Positionner les droits « Positionner les droits « EnrollEnroll » et « » et « AutoEnrollAutoEnroll » sur une » sur une template EFS dans Active Directorytemplate EFS dans Active Directory
Enrôlement par EFSEnrôlement par EFS S’assurer des droits « S’assurer des droits « EnrollEnroll » sur une template EFS dans Active » sur une template EFS dans Active
DirectoryDirectory
Templates de base supportant EFSTemplates de base supportant EFS UserUser AdministratorAdministrator Basic EFSBasic EFS
Dans les deux cas, s’assurer qu’une CA Entreprise joignable Dans les deux cas, s’assurer qu’une CA Entreprise joignable « serve » cette/ces templates« serve » cette/ces templates
Si l’utilisateur a déjà un ou des certificats EFS, il y a de fortes Si l’utilisateur a déjà un ou des certificats EFS, il y a de fortes chances pour que l’enrôlement EFS ne se déclenche pas, ou chances pour que l’enrôlement EFS ne se déclenche pas, ou que le certificat obtenu par Auto-Enrôlement ne soit pas que le certificat obtenu par Auto-Enrôlement ne soit pas utiliséutilisé Forcer le certificat courant par script de logonForcer le certificat courant par script de logon
Politique de récupérationPolitique de récupération Politique de récupération = mise en place et Politique de récupération = mise en place et
utilisation de un ou plusieurs agents de récupération utilisation de un ou plusieurs agents de récupération (DRA)(DRA) DRA matérialisé par un certificat/clé privéeDRA matérialisé par un certificat/clé privée
A chaque ouverture de fichier chiffré, EFS applique A chaque ouverture de fichier chiffré, EFS applique la politique en vigueurla politique en vigueur S’assure que les DRF existent pour chaque DRA défini par S’assure que les DRF existent pour chaque DRA défini par
la politiquela politique Cipher /UCipher /U
L’existence d’une politique de récupération est L’existence d’une politique de récupération est facultative sur Windows XP/Windows 2003facultative sur Windows XP/Windows 2003 Un fichier peut être chiffré sans DRAUn fichier peut être chiffré sans DRA
Risque de perte des informationsRisque de perte des informations Sur Windows 2000, elle est obligatoireSur Windows 2000, elle est obligatoire
L’absence d’agent de récupération désactive EFSL’absence d’agent de récupération désactive EFS Pour créer l’équivalent d’un chiffrement sans politique de Pour créer l’équivalent d’un chiffrement sans politique de
récupération, on peut utiliser un DRA pour lequel la clé privée récupération, on peut utiliser un DRA pour lequel la clé privée a été détruitea été détruite
Politique de récupérationPolitique de récupérationMachine hors domaineMachine hors domaine
Pas de politique de récupération par défautPas de politique de récupération par défaut Windows XP/2003 ne crée pas d’agent de récupération Windows XP/2003 ne crée pas d’agent de récupération
lors de l’installation ou du premier logonlors de l’installation ou du premier logon Ce n’était pas le cas pour Windows 2000Ce n’était pas le cas pour Windows 2000
Pour mettre en œuvre un agent de récupérationPour mettre en œuvre un agent de récupération Utiliser Utiliser Local Security SettingsLocal Security Settings (secpol.msc) (secpol.msc)
Public Key Policies/Encrypting File SystemPublic Key Policies/Encrypting File System On désigne un ou des certificats d’agents de récupération On désigne un ou des certificats d’agents de récupération
sur le disque (fichiers CER)sur le disque (fichiers CER) CIPHER /RCIPHER /R
Crée une paire de clés et certificat auto-signé correspondantCrée une paire de clés et certificat auto-signé correspondant Génère un fichier PFX et un fichier CERGénère un fichier PFX et un fichier CER Mettre le fichier PFX en sécurité, et installer le fichier CER en Mettre le fichier PFX en sécurité, et installer le fichier CER en
tant qu’agent de récupérationtant qu’agent de récupération
Politique de récupérationPolitique de récupérationDomaineDomaine
Définie par stratégie de groupe (Group Policy)Définie par stratégie de groupe (Group Policy) S’applique aux machines sous son influenceS’applique aux machines sous son influence
Site, Domaine, OUSite, Domaine, OU Précédence OU, Domaine, SitePrécédence OU, Domaine, Site
Distinction policy vide vs pas de policyDistinction policy vide vs pas de policy Créée automatiquement lors du premier logon de Créée automatiquement lors du premier logon de
l’administrateurl’administrateur Désigne l’administrateur du domaine en tant que DRADésigne l’administrateur du domaine en tant que DRA
Certificat auto-signé au nom de l’administrateurCertificat auto-signé au nom de l’administrateur Clé privée dans le profil de l’administrateurClé privée dans le profil de l’administrateur
L’administrateur peut modifier la stratégie de groupe L’administrateur peut modifier la stratégie de groupe (dompol.msc)(dompol.msc) Public Key Policies/Encrypting File SystemPublic Key Policies/Encrypting File System Rajouter des DRA en désignant des certificats d’agents de Rajouter des DRA en désignant des certificats d’agents de
récupérationrécupération Fichiers CER sur le disqueFichiers CER sur le disque userCertificate dans Active DirectoryuserCertificate dans Active Directory
Supprimer des DRASupprimer des DRA Supprimer la policy/Créer une policy videSupprimer la policy/Créer une policy vide Créer un DRA le désignantCréer un DRA le désignant
Certification par une CA d’Entreprise plutôt que auto-signéCertification par une CA d’Entreprise plutôt que auto-signé
Désactiver EFSDésactiver EFS
Machine du domaineMachine du domaine Stratégie de groupe (Group Policy)Stratégie de groupe (Group Policy)
Public Key Policies/Encrypting File System/PropertiesPublic Key Policies/Encrypting File System/Properties Allow users to encrypt files using EFSAllow users to encrypt files using EFS
Machine hors domaineMachine hors domaine Utiliser clé registreUtiliser clé registre
HKLM\Software\Microsoft\Windows NT\CurrentVersion\EFSHKLM\Software\Microsoft\Windows NT\CurrentVersion\EFS Valeur EfsConfiguration DWORD 0x1Valeur EfsConfiguration DWORD 0x1
RécupérationRécupérationMise en œuvreMise en œuvre
Agent de récupération déchiffre le fichier avec Agent de récupération déchiffre le fichier avec l’explorateur Windows ou la commande Cipherl’explorateur Windows ou la commande Cipher
Station de récupération centraliséeStation de récupération centralisée Si suffisamment en sécurité, la clé privée de l’agent de Si suffisamment en sécurité, la clé privée de l’agent de
récupération peut s’y trouver en permanencerécupération peut s’y trouver en permanence Sinon, au moment d’effectuer des récupérations:Sinon, au moment d’effectuer des récupérations:
Importer la cléImporter la clé Effectuer les récupérationsEffectuer les récupérations Exporter la cléExporter la clé
Les utilisateurs doivent faire un backup (NTBackup) du Les utilisateurs doivent faire un backup (NTBackup) du fichier EFS et le déposer sur un sharefichier EFS et le déposer sur un share L’agent de récupération obtient le fichier de backup, le L’agent de récupération obtient le fichier de backup, le
restore sur la station, vérifie les droits de l’utilisateur, puis restore sur la station, vérifie les droits de l’utilisateur, puis déchiffre le fichierdéchiffre le fichier
Intervention sur site de l’agent de récupérationIntervention sur site de l’agent de récupération Accède à la station, importe la clé, effectue la Accède à la station, importe la clé, effectue la
récupération, exporte la clérécupération, exporte la clé
Chiffrement sur serveur SMBChiffrement sur serveur SMBGlobalement complexeGlobalement complexe
Chiffrement sur le serveur, pour le compte de l’utilisateurChiffrement sur le serveur, pour le compte de l’utilisateur Transport en clair, utiliser IPSECTransport en clair, utiliser IPSEC Délégation KerberosDélégation Kerberos
Serveur « trusted for delegation »Serveur « trusted for delegation » Compte utilisateur n’est pas « sensitive and cannot be delegated »Compte utilisateur n’est pas « sensitive and cannot be delegated »
Si profile errant, le serveur l’utiliseSi profile errant, le serveur l’utilise Sinon, le serveur crée un profile pour l’utilisateurSinon, le serveur crée un profile pour l’utilisateur Contient le certificat et clé privéeContient le certificat et clé privée
Logique d’enrôlement (CA d’Entreprise ou auto-signé) identique à celle Logique d’enrôlement (CA d’Entreprise ou auto-signé) identique à celle d’une stationd’une station
Support des technologies cluster (Windows 2003)Support des technologies cluster (Windows 2003) Nécessite profiles errants (clé unique)Nécessite profiles errants (clé unique)
Support multi-utilisateursSupport multi-utilisateurs Nécessite profiles errantsNécessite profiles errants
Mise en cache des Mise en cache des handleshandles (CryptoAPI) de clés de utilisateurs (CryptoAPI) de clés de utilisateurs Par défaut 15, paramétrable registrePar défaut 15, paramétrable registre
Pas de support cross forestPas de support cross forest Méthode préférée reste WebDAVMéthode préférée reste WebDAV
Nécessite stations Windows XPNécessite stations Windows XP
Fichiers hors ligneFichiers hors ligne
Client Side Caching (CSC)Client Side Caching (CSC) Base unique sur la stationBase unique sur la station
Contient tous les fichiers de tous les utilisateursContient tous les fichiers de tous les utilisateurs Accès aux fichiers sous contrôle des ACLAccès aux fichiers sous contrôle des ACL
Affichage reproduit la structure des répertoires et Affichage reproduit la structure des répertoires et fichiers du serveurfichiers du serveur
Chiffrement EFS pour le compte local SYSTEMChiffrement EFS pour le compte local SYSTEM
Ne pas utiliser pour des informations sensibles, à Ne pas utiliser pour des informations sensibles, à moins d’être prêt a passer en SYSKEY mode 2 ou 3moins d’être prêt a passer en SYSKEY mode 2 ou 3
Best PracticesBest PracticesChiffrement EFSChiffrement EFS
Chiffrement au niveau des dossiersChiffrement au niveau des dossiers Utiliser des dossiers chiffrés, plutôt que conversion d’un Utiliser des dossiers chiffrés, plutôt que conversion d’un
fichier de clair en chiffré (problème copie en texte clair fichier de clair en chiffré (problème copie en texte clair lors de la conversion, dont les blocs restent sur la lors de la conversion, dont les blocs restent sur la partition NTFS)partition NTFS) My DocumentsMy Documents RootDirectoryRootDirectory\Temp\Temp %systemroot%\system32\spool%systemroot%\system32\spool
Activer la purge du fichier de paginationActiver la purge du fichier de pagination Utilisation de mémoire non-paginée pour le driver – pas Utilisation de mémoire non-paginée pour le driver – pas
de pagination des clés (FEK)de pagination des clés (FEK) Cependant les données en clair peuvent être paginées Cependant les données en clair peuvent être paginées
(applications)(applications) Policy de groupe ou locale « Security Options »Policy de groupe ou locale « Security Options »
« Shutdown: Clear virtual memory pagefile »« Shutdown: Clear virtual memory pagefile » Utiliser Cipher /W (wipe)Utiliser Cipher /W (wipe)
S’il y a eu des conversions (clair -> chiffré)S’il y a eu des conversions (clair -> chiffré)
Best PracticesBest PracticesComptes utilisateursComptes utilisateurs
Utiliser des comptes du domaine, et non des Utiliser des comptes du domaine, et non des comptes locauxcomptes locaux Protection effective même en SYSKEY mode 1Protection effective même en SYSKEY mode 1 Si le chiffrement est mis en œuvre avec des comptes Si le chiffrement est mis en œuvre avec des comptes
locaux, utiliser SYSKEY mode 2 ou 3locaux, utiliser SYSKEY mode 2 ou 3
Mettre en œuvre une politique de mots de passe Mettre en œuvre une politique de mots de passe renforcéerenforcée Longueur minimum, historique, caractères spéciaux, etc…Longueur minimum, historique, caractères spéciaux, etc… Le mot de passe est le maillon faible du chiffrement EFSLe mot de passe est le maillon faible du chiffrement EFS
Best PracticesBest PracticesPolitique de récupérationPolitique de récupération
Mettre en œuvre une politique de récupération au Mettre en œuvre une politique de récupération au niveau du domaineniveau du domaine
Séparer les rôles d’agents de récupération des Séparer les rôles d’agents de récupération des administrateurs du domaineadministrateurs du domaine Changer la politique par défautChanger la politique par défaut
Mettre à l’abri les clés des agents de récupérationMettre à l’abri les clés des agents de récupération Copies hors siteCopies hors site
Pour les agents de récupération, utiliser des Pour les agents de récupération, utiliser des certificats émis par une CA, plutôt que auto-signécertificats émis par une CA, plutôt que auto-signé
Contrôler/maîtriser les droits d’enrôlement sur les Contrôler/maîtriser les droits d’enrôlement sur les templates d’agents de récupérationtemplates d’agents de récupération
Best PracticesBest PracticesPolitique de récupérationPolitique de récupération
Définir précisément la procédure de récupérationDéfinir précisément la procédure de récupération Utiliser une station centrale sécuriséeUtiliser une station centrale sécurisée
Ne pas importer de clé de récupération sur les stations Ne pas importer de clé de récupération sur les stations des utilisateursdes utilisateurs
Tester la capacité à dérouler la procédure et à Tester la capacité à dérouler la procédure et à effectuer la récupérationeffectuer la récupération
Limiter nombre d’agents de récupérationLimiter nombre d’agents de récupération Lors de changements de la politique de Lors de changements de la politique de
récupération mettre à jour les fichiers utilisateursrécupération mettre à jour les fichiers utilisateurs Cipher /UCipher /U
Best PracticesBest Practices
Data recovery vs key recoveryData recovery vs key recovery
Data recovery est spécifique à EFSData recovery est spécifique à EFS Ne nécessite pas d’infra PKI (certificats auto-signés)Ne nécessite pas d’infra PKI (certificats auto-signés) Récupération fichier par fichierRécupération fichier par fichier
Key recovery est une fonction de l’infrastructure PKIKey recovery est une fonction de l’infrastructure PKI CA WindowsCA Windows Récupération globaleRécupération globale
On peut cumuler les deux fonctionsOn peut cumuler les deux fonctions CA d’EntrepriseCA d’Entreprise
Auto-enrolement pour les certificats EFS avec séquestre des clésAuto-enrolement pour les certificats EFS avec séquestre des clés
Ou n’en mettre en œuvre aucuneOu n’en mettre en œuvre aucune Selon la politique de l’entrepriseSelon la politique de l’entreprise
RéférencesRéférences Encrypting File System in Windows XP and Windows Server Encrypting File System in Windows XP and Windows Server
20032003 http://http://www.microsoft.comwww.microsoft.com//technettechnet//prodtechnolprodtechnol//winxpprowinxppro//deploydeploy//
cryptfs.mspxcryptfs.mspx
The Windows Server 2003 Family Encrypting File SystemThe Windows Server 2003 Family Encrypting File SystemNetwork Associates LaboratoriesNetwork Associates Laboratories http://msdn.microsoft.com/library/default.asp?url=/library/en-us/http://msdn.microsoft.com/library/default.asp?url=/library/en-us/
dnsecure/html/winnetsrvr-encryptedfilesystem.aspdnsecure/html/winnetsrvr-encryptedfilesystem.asp
Windows Data ProtectionWindows Data ProtectionNetwork Associates LaboratoriesNetwork Associates Laboratories http://msdn.microsoft.com/library/default.asp?url=/library/en-us/http://msdn.microsoft.com/library/default.asp?url=/library/en-us/
dnsecure/html/windataprotection-dpapi.aspdnsecure/html/windataprotection-dpapi.asp
Windows NT Magazine. Mark Russinovich. Articles reproduits Windows NT Magazine. Mark Russinovich. Articles reproduits dans MSND:dans MSND: Inside Encrypting File System, Part 1Inside Encrypting File System, Part 1
http://http://winntmag.comwinntmag.com/articles//articles/print.cfmprint.cfm??articleidarticleid=5387=5387 Inside Encrypting File System, Part 2Inside Encrypting File System, Part 2
http://winntmag.com/articles/print.cfm?articleid=5592http://winntmag.com/articles/print.cfm?articleid=5592
Questions?Questions?
Transparents supplémentairesTransparents supplémentairesPour référencePour référence
EFS - ArchitectureEFS - Architecture Service EFS – lsass.exe (lsasrv.dll)Service EFS – lsass.exe (lsasrv.dll)
Au sens Win32, c’est en fait le serviceAu sens Win32, c’est en fait le serviceSecurity Account Manager (SAM)Security Account Manager (SAM)
Gestion de la clé FEKGestion de la clé FEK Chiffrement/déchiffrement RSA pour FEKChiffrement/déchiffrement RSA pour FEK
Gestion/formatage des DDF/DRF pour le Key RingGestion/formatage des DDF/DRF pour le Key Ring Application des policiesApplication des policies Implémentation/exécution de l’API EFSImplémentation/exécution de l’API EFS N’invoque que NTFSN’invoque que NTFS
ApplicationsApplications N’invoquent que NTFS et le service EFSN’invoquent que NTFS et le service EFS API cliente spécifique EFS advapi32.dllAPI cliente spécifique EFS advapi32.dll
Invocation service EFS via LPCInvocation service EFS via LPC API fichiers classique kernel32.dllAPI fichiers classique kernel32.dll
Invocation driver noyau NTFSInvocation driver noyau NTFS Driver EFSDriver EFS
Chiffrement symétrique des donnéesChiffrement symétrique des données N’est invoqué que par le driver NTFS (appel direct sur les callbacks)N’est invoqué que par le driver NTFS (appel direct sur les callbacks)
S’enregistre auprès de NTFS au démarrage (NtOfsRegsiterCallbacks)S’enregistre auprès de NTFS au démarrage (NtOfsRegsiterCallbacks) Invoque le service EFS pour chiffrement/déchiffrement FEKInvoque le service EFS pour chiffrement/déchiffrement FEK
LPC ksecdd.sys – messages LPC sécurisésLPC ksecdd.sys – messages LPC sécurisés
EFS – Chiffrement d’un fichierEFS – Chiffrement d’un fichier
Application invoque EncryptFileApplication invoque EncryptFile Advapi32.dll -> feclient.dllAdvapi32.dll -> feclient.dll LPC message vers LSASRV ->EfsRpcEncryptFileSrvLPC message vers LSASRV ->EfsRpcEncryptFileSrv
LSASRV - préliminaireLSASRV - préliminaire Impersonne l’appelantImpersonne l’appelant Crée fichier journal pour la conversion clair - chiffrésCrée fichier journal pour la conversion clair - chiffrés
Efs[n].logEfs[n].log Charge profile utilisateur si nécessaireCharge profile utilisateur si nécessaire Invoque NTFS pour connaître les streams présents dans le Invoque NTFS pour connaître les streams présents dans le
fichier (il faudra chiffrer tous les streams)fichier (il faudra chiffrer tous les streams)
EFS - Chiffrement d’un fichierEFS - Chiffrement d’un fichier
LSASRVLSASRV Invoque CryptoAPI pour générer une FEKInvoque CryptoAPI pour générer une FEK
Provider RSA par défautProvider RSA par défaut CryptGenRandom 16 octets = 128 bitsCryptGenRandom 16 octets = 128 bits
Obtient certificat/clé privée EFS de l’utilisateur pour Obtient certificat/clé privée EFS de l’utilisateur pour chiffrementchiffrement HKCU\Software\Microsoft\Windows NT\CurrentVersion\HKCU\Software\Microsoft\Windows NT\CurrentVersion\
EFS\CurrentKeys\CertificateHashEFS\CurrentKeys\CertificateHash Si existe, retrouve certificat dans le store personnel (My)Si existe, retrouve certificat dans le store personnel (My)
Retrouve nom du container pour la clé privéeRetrouve nom du container pour la clé privée Sinon, crée paire de clé RSA et obtient certificatSinon, crée paire de clé RSA et obtient certificat
Génération paire de clés dans un container du CSPGénération paire de clés dans un container du CSP Si Enterprise CA de localisée -> obtention auprès de cette CASi Enterprise CA de localisée -> obtention auprès de cette CA Sinon, construit et self-signe un certificatSinon, construit et self-signe un certificat Stocke certificat dans le store personnel, positionne clé Stocke certificat dans le store personnel, positionne clé
registryregistry
EFS - Chiffrement d’un fichierEFS - Chiffrement d’un fichier
LSASRVLSASRV Construit DDF KeyRingConstruit DDF KeyRing
DDF: User SID, Provider/Container, EFS Certficate Hash, DDF: User SID, Provider/Container, EFS Certficate Hash, FEK chiffrée avec RSAFEK chiffrée avec RSA
Retrouve les agents de recovery de la policy en coursRetrouve les agents de recovery de la policy en cours Construit DRF KeyRingConstruit DRF KeyRing
Retrouve les certificats des agentsRetrouve les certificats des agents DRF: même format que DDFDRF: même format que DDF
Sérialise les rings dans un stream ($EFS) avec Sérialise les rings dans un stream ($EFS) avec checksums MD5 (un pour chaque keyring)checksums MD5 (un pour chaque keyring)
Crée une copie temporaire du fichierCrée une copie temporaire du fichier efs[n].tmpefs[n].tmp
On copiera de la copie temporaire vers le fichier pour le On copiera de la copie temporaire vers le fichier pour le chiffrementchiffrement
EFS - Chiffrement d’un fichierEFS - Chiffrement d’un fichier LSASRVLSASRV
LSASRV invoque le driver efs.sys pour transmettre les metadata et la LSASRV invoque le driver efs.sys pour transmettre les metadata et la clé FEKclé FEK Le message est chiffré avec DESLe message est chiffré avec DES Clé de session échangée lors d’une initialisation antérieureClé de session échangée lors d’une initialisation antérieure
Invocation par l’intermédiaire de NTFSInvocation par l’intermédiaire de NTFS DeviceIOControl: FSCTL_ENCRYPTION_FCTL_IO
• Commande pour efs.sys: EFS_SET_ENCRYPT
Efs.sys Invoque NTFS pour rajouter le stream $EFS au fichierrajouter le stream $EFS au fichier
Fonctions internes NTFS mode noyau: NtOfsCreateAttributeEx, etc…Fonctions internes NTFS mode noyau: NtOfsCreateAttributeEx, etc… En retour passe un contexte pour ce fichier a NTFSEn retour passe un contexte pour ce fichier a NTFS
Le contexte contient la clé FEKLe contexte contient la clé FEK Le contexte sera fourni a efs.sys a chaque invocation ultérieureLe contexte sera fourni a efs.sys a chaque invocation ultérieure
LSASRVLSASRV Copie contenu du fichier vers la copie temporaireCopie contenu du fichier vers la copie temporaire Invoque NTFS pour le chiffrement du fichierInvoque NTFS pour le chiffrement du fichier
NTFSNTFS Efface le contenu du fichierEfface le contenu du fichier Copie le contenu de la copie vers le fichierCopie le contenu de la copie vers le fichier Puisque le fichier est chiffrée chaque écriture engendre le chiffrementPuisque le fichier est chiffrée chaque écriture engendre le chiffrement
Invocation de EfsWrite sur efs.sys avec le contexte (FEK)Invocation de EfsWrite sur efs.sys avec le contexte (FEK)
CredhistCredhist
Comptes locaux seulementComptes locaux seulement Fonction de robustesse uniquementFonction de robustesse uniquement
Reprise sur échecReprise sur échec Lors du rechiffrement des master keys avec un nouveau Lors du rechiffrement des master keys avec un nouveau
NTHash, en cas d’échec il faut pouvoir repartir des NTHash, en cas d’échec il faut pouvoir repartir des NTHash precedentsNTHash precedents
Contient les hash des mots de passe précédentsContient les hash des mots de passe précédents Chaque précédent chiffré avec courantChaque précédent chiffré avec courant
Secrets LSASecrets LSA
SCM utilise les secrets LSA pour stocker les mots de passe SCM utilise les secrets LSA pour stocker les mots de passe des comptes de servicedes comptes de service
LSAStorePrivateData, LSARetrievePrivateDataLSAStorePrivateData, LSARetrievePrivateData API conçue pour le stockage des secrets par les services API conçue pour le stockage des secrets par les services
Win32Win32 Stockage des secrets d’une machine, pas d’un utilisateurStockage des secrets d’une machine, pas d’un utilisateur
$MACHINE.ACC$MACHINE.ACC Accès privilégié (Administrator, SYSTEM)Accès privilégié (Administrator, SYSTEM) Registry HKLM/SECURITY/Policy/SecretsRegistry HKLM/SECURITY/Policy/Secrets
Chiffrement DES avec une constanteChiffrement DES avec une constante Deplombable! Mais pas d’outil, à ma connaissanceDeplombable! Mais pas d’outil, à ma connaissance
Protégé par SYSKEYProtégé par SYSKEY Il faut appliquer SYSKEY!Il faut appliquer SYSKEY!
Les secrets LSA ne sont pas secret pour l’administrateurLes secrets LSA ne sont pas secret pour l’administrateur
Cache de Cache de crédentielscrédentiels de logon sur une de logon sur une stationstation
Permet le logon interactif avec un compte du domaine lorsque aucun Permet le logon interactif avec un compte du domaine lorsque aucun contrôleur n’est accessiblecontrôleur n’est accessible
Entrée du cache contient un vérificateur pour le mot de passe d’un Entrée du cache contient un vérificateur pour le mot de passe d’un compte du domainecompte du domaine Ne contient ni le mot de passe, ni le NTHashNe contient ni le mot de passe, ni le NTHash Le vérificateur est MD4( NTHash)Le vérificateur est MD4( NTHash)
On ne peut dériver le NTHash du vérificateurOn ne peut dériver le NTHash du vérificateur Le vérificateur est Le vérificateur est saltedsalted
Deux utilisateurs avec même mot de passe n’ont pas le même vérificateurDeux utilisateurs avec même mot de passe n’ont pas le même vérificateur L’attaque de dictionnaire contre le vérificateur reste possibleL’attaque de dictionnaire contre le vérificateur reste possible
Vérificateur, user et groupes sont conservés dans le registreVérificateur, user et groupes sont conservés dans le registre Permet de créer un Permet de créer un tokentoken lors de l’ouverture de session lors de l’ouverture de session HKLM/SECURITY/Cache/NL$1, etc…HKLM/SECURITY/Cache/NL$1, etc… Ce cache ne fait pas partie des secrets LSA – pas de protection SyskeyCe cache ne fait pas partie des secrets LSA – pas de protection Syskey Chiffrement RC4 128 bit avec clé dérivée d’une clé maîtreChiffrement RC4 128 bit avec clé dérivée d’une clé maître Clé maître conservée en tant que secret LSA Clé maître conservée en tant que secret LSA NL$KmNL$Km
HKLM/SECURITY/Policy/SecretsHKLM/SECURITY/Policy/Secrets Secrets LSA sont protégés par SyskeySecrets LSA sont protégés par Syskey
Cas Smartcard/KerberosCas Smartcard/Kerberos Le cache contient bien le NTHash, mais protegé par PKI (déchiffrable avec la Le cache contient bien le NTHash, mais protegé par PKI (déchiffrable avec la
clé privée)clé privée) Mettre en œuvre une politique de logon par Smartcard, et affecter aux Mettre en œuvre une politique de logon par Smartcard, et affecter aux
utilisateurs des mots de passe aléatoires et robustes dont il n’ont pas utilisateurs des mots de passe aléatoires et robustes dont il n’ont pas connaissanceconnaissance