Sécurité des Objets Sécurité des Objets

Transcription

Sécurité des Objets Sécurité des Objets
Chapitre 3
Sécurité des Objets
Objectifs du chapitre
Dans ce chapitre nous allons étudier les points suivants
• Le modèle de sécurité de Windows 2000
• La gestion des droits sur le système de fichier
• Le chiffrement disponible sur le système de fichier
Sécurité des Objets
Introduction au contrôle d ’accès
Architecture du système de fichier
Contrôle d ’accès et héritage
EFS (Encrypting File System)
Résumé
Modèle Objet
(Suite)
• Windows 2000 utilise un modèle objet pour la gestion de la sécurité des
ressources
— Les fichiers et les autres ressources sont définies comme des objets
— Les utilisateurs et les groupes sont aussi des objets
• L’accès aux objets est contrôlé par des attributs de sécurité attachés à
l’objet
— La plupart des objets stockent leur sécurité dans une ACL (Access-Control
List)
— La sécurité du système de fichier peut être mise en œuvre uniquement si le
système de fichier est basé sur du NTFS
NTFS = NT Filesystem
SRM / Object Manager
• Différents acteurs sont impliqués dans le contrôle d’accès aux ressources
— Security Reference Monitor (SRM)
— Object Manager
— Access-Control Lists (ACLs)
— Security Access Token
• Lorsqu’un processus essaye d’accéder à une ressource, le SRM vérifie
qu’il possède les permissions nécessaires
— Le SRM commence par vérifier les SIDs dans le jeton d’accès avec ceux
contenus dans l’ACL de la ressource accédée
— Si le processus a assez de permissions pour l’action demandée, la requête
est transmise à l’Object Manager
— L’Object Manager renvoie un pointeur d’accès (Handle), qui sera utilisé par
le processus dans toutes les futures communications avec l’Object Manager
Sécurité des Objets
Introduction au contrôle d ’accès
Architecture du système de fichier
Contrôle d ’accès et héritage
EFS (Encrypting File System)
Résumé
La MFT
• La MFT (Master File Table) maintient toutes les informations du
système de fichiers
— Chaque dossier ou fichier possède une entrée (ligne) dans la MFT
— Chaque ligne contient différents attributs
• Toutes les caractéristiques d’un fichier sont stockées comme des
attributs (streams)
— Données
— Position sur le disque
— Sécurité
Les données sont un attribut
• L’attribut DATA représente approximativement les 1500 premiers octets
d’un fichier
— L’attribut Data est stocké sur des clusters disques, qui sont eux même
référencés par des VCNs(Virtual Cluster Numbers)
• Les répertoires contiennent dans leur attribut DATA un index de leur contenu
— Chaque Fichier/Dossier est référencé
— Un pointeur permet de retrouver la position de la description de ce fichier
dans la MFT
Attribut Data
Nom
Position
601.ppt
ntlogon.bat
lophtcrack15.exe
whitepaper.doc
secsem.ppt
VCN
VCN
VCN
VCN
VCN
1-16
17-18
19-26
27-31
31-45
Attributs Multiples
• Le système de fichier du Macintosh est conçu avec deux attributs
— Un attribut Data contient les données du fichier
— Un attribut Resource contient des informations sur l’application qui a servi à
créer le fichier, le format des données et la version
• Le système de fichier FAT est un système de fichier à un seul attribut
• Les informations équivalentes sont fournies par
— Les extensions de fichier
— Les associations
— L’entrée Hkey_Classes_Root du registre
FAT = file allocation table
Les attributs NTFS (Streams)
• NTFS est un système de fichiers multi-attributs
— Les attributs NTFS sont aussi appelés des flux (streams)
— Documenté par Microsoft comme des attributs définis par l’utilisateur (user
defined data attributes)
– Peut contenir théoriquement jusqu’à 235 attributs
— Une des utilisations des flux est le support des FSMs (File Services for the
Macintosh)
• L’attribut par défaut contenant les données est $Data
— La plupart des applications, dont l’explorateur, considèrent $Data comme
étant le seul et unique attribut contenant des données
— Selon l’algorithme d’analyse des informations de la ligne de commande;
– Ces attributs ne sont pas visibles dans les programmes
– Ils sont inaccessibles pour la plupart des applications
Création d’attributs NTFS supplémentaires
• La création d’attributs supplémentaires peut se faire en utilisant les
re-directions
— Echo «Information cachée» > test.txt:secret
— secret est un attribut supplémentaire qui contient l’information
«Information cachée»
— More < test.txt:secret permet d’afficher le contenu du stream sur
l’écran
• La création/modification d’attributs ne nécessite pas de droits particuliers
— Un utilisateur quelconque
– Peut créer un attribut avec les permissions d’écriture
– Peut le lire avec les permissions de lecture et le nom de l’attribut
• On peut aussi ajouter des données binaires dans les attributs
Attributs supplémentaires et sécurité
• Outils de quota disque
— La plupart des ces outils ne prennent pas en compte les attributs
supplémentaires
— Les quotas disque sont souvent calculés uniquement à partir de la taille de
l’attribut $Data
— Cela peut rendre très difficile le contrôle réel de l’espace disque utilisé
• Anti-Virus
— La plupart de ces outils ne prennent pas en compte les attributs
supplémentaires
— L’idée est de dire que les attributs supplémentaires ne sont pas dangereux
tant qu’ils ne sont pas copiés dans l’attribut $Data
Attributs supplémentaires et sécurité
(Suite)
• Outils de défragmentation de disque
— Des attributs supplémentaires importants peuvent causer une fragmentation
importante du disque
— La plupart des outils de défragmentation ne prennent pas en compte les
attributs NTFS supplémentaires
Une cachette parfaite ?
• Les attributs peuvent être utilisés pour
— Cacher des données
— Transmettre des données secrètes dans des données anodines
• Les attributs supplémentaires ne sont conservés que sur des volumes
NTFS
— Ils sont conservés lors des opérations de copie/sauvegarde
— Ils sont supprimés lorsque
– Le fichier est copié vers un media non NTFS
– Lorsque le fichier est envoyé par eMail
Détecter la présence d’attributs supplémentaires
• Il y a beaucoup d’utilisations légitimes des attributs
— Cependant un administrateur peut vouloir analyser le contenu des disques
pour découvrir des attributs « bizarres »
• Pour passer outre les droits des fichiers et pouvoir analyser les attributs
supplémentaires, l’utilitaire utilisé doit avoir le droit SeBackUp
• Il existe de nombreux outils dans le domaine public mais leurs
performances sont souvent décevantes
DACL = discretionary access control list
LADS (List Alternative Data Streams)
LADS et les fichiers ouverts
• LADS ne peut pas analyser les fichiers ouverts (DEMO)
Security Descriptors
SID du
propriétaire
Propriétaire
Groupe
DACL
SACL
POSIX = portable operating system interface specification
Identificateur de
groupe pour la
compatibilité
POSIX
Access-control
List
Propriétés
d’audit
Security Descriptors
(Suite)
• Chaque DACL stockée dans un
Security Descriptor est composée
de plusieurs entrées, les ACEs
( Access Control Entries)
— Chaque ACE représente un type
d’accès pour un utilisateur ou un
groupe
• Les ACEs sont découpées en trois
parties
— Un SID (utilisateur ou groupe)
— Un drapeau d’autorisation
“access allowed” ou de refus
“access denied”
— Un masque décrivant le type
d’accès
SID
Drapeau
Masque
ACE
Les DACLs (Discretionary Access Control List)
Drapeau
SID
ACCESS_DENIED_ACE
S-1-5-21-122...
RX
ACCESS_DENIED_ACE
S-1-5-21-452...
RWXD
Masque
ACCESS_DENIED_ACE
S-1-5-21-999...
W
ACCESS_ALLOWED_ACE
S-1-5-21-999...
RWXD
D = delete, R = read, W = write, X = execute
ACCESS_ALLOWED_ACE
S-1-5-21-456...
RX
ACCESS_ALLOWED_ACE
S-1-5-21-326...
RWX
Vulnérabilités du système de fichier
• La sécurité du système de fichier n’est contrôlée que si Windows 2000 est
actif
— Lorsque Windows 2000 fonctionne, tous les accès sont contrôlables
• D’autres systèmes, ou une disquette bootable contenant des utilitaires qui
comprennent la structure des volumes NTFS, peuvent permettre l’accès
aux fichiers sans tenir compte des ACLs
— NTFS DOS
— Linux
• Protégez votre système de fichier !
— Contrôlez l’accès physique
— Chiffrez vos données confidentielles
NTFS v5 et les disques dynamiques
• Windows 2000 supporte deux types de disques:
— Basic
– Partitions standards : Primaire et Etendue
– Prise en compte par Microsoft MS-DOS, Windows 95, 98, SE et
Windows NT
— Disque
– Les partitions sont remplacées par des volumes
– Le module Logical Disk Manager (LDM) gère les disques dynamiques et
les volumes
– Gère tous les types de volume spanned, striped et RAID-5 logiciel
• Les partitions associées à un volume dynamique ne sont pas reconnues
par d’autres OS pour le moment
— Un bon moyen de se prémunir contre NTFSDOS !!
La console de récupération
• Dans les versions précédentes de NT, la remise en état d’un système non
bootable nécessitait:
— Un démarrage sur disquette ou CD puis lancement de la procédure de
réparation
— L’installation d’une seconde copie de NT pour réparer la première
— L’achat de NTFS-DOS ou d’outils équivalents
• Windows 2000 contient une console de récupération
— Démarrer en ligne de commande
— Permet l’accès aux répertoires %systemroot% et system32
• Est ce que la console de récupération est une faille dans la sécurité de
Windows 2000 ?
— Le module Security Reference Monitor n’est pas actif dans ce mode
– Pas de vérification des permissions
Sécurité des Objets
Introduction au contrôle d ’accès
Architecture du système de fichier
Contrôle d ’accès et héritage
EFS (Encrypting File System)
Résumé
Permissions sur le système de fichiers
• L’information peut être séparée en deux catégories
— Non contrôlée
— Contrôlée
NTFS
Tout le monde peut accéder au fichier et à
son contenu
NTFS = NT Filesystem
L’accès à ce fichier et à son contenu
est réservé à certains utilisateurs
Permissions sur le système de fichiers
(Suite)
• Les fichiers “Secrets” ne sont pas les seuls qui doivent être protégés
• Les fichiers doivent être sécurisés si
— Ils contiennent des données confidentielles (Confidentialité)
— Ils contiennent des données stratégiques (Intégrité)
— Ils contiennent des données qui doivent être disponibles 24/24
(Disponibilité)
• Le coût du contrôle d’accès des fichiers doit être calculé à l’échelle de
l’entreprise
— Surchage administrative
— Possibilité pour les utilisateurs d’accéder à leurs ressources
Mise en place du DACL
Utilisateurs
Utilisateursetet
Groupes
Groupes
Permissions
Permissions
• Click droit sur un objet, puis sélectionnez Propriétés | Sécurité
Contrôle d’accès simple
sur les fichiers et les dossiers
• Permissions simples
— Un dossier que le département des ventes doit pouvoir lire et que la
direction doit pouvoir modifier
— Les dossiers personnels ne sont modifiables et lisibles que par leur
propriétaire
• L’héritage simple propage les permissions sur les sous-dossiers et les
fichiers
— Tous les fichiers ou les dossiers qui vont être créés dans la structure vont
subir ses règles
Ventes : RX
Direction : RWXD
Administrateurs : Full
Contrôle d’accès avancé
sur les fichiers et les dossiers
• Les permissions avancées fournissent une granularité plus fine, toutes
les ACEs peuvent être modifiées pour des circonstances spécifiques
— Donner la possibilité à un utilisateur d’ajouter des fichiers ou des
dossiers sans la possibilité de les supprimer
— Permettre aux administrateurs de visualiser le contenu d’une
arborescence sans avoir le droit d’ouvrir ou de lire les fichiers
Contrôle d’accès avancé
(Suite)
Contrôle de la hiérarchie des fichiers et des
dossiers
• La gestion des structures de fichiers complexes est plus facilement
gérable
— Windows 2000 fournie une granularité plus fine
— La construction d’une hiérarchie gérable demande une étude préalable
1
2
3
1
Nécessite
permission 1
Nécessite
permission 2
Nécessite
permission 3
Héritage
•
La configuration par défaut permet un héritage total
•
Les permissions d’une racine sont héritées par :
— Tous les sous-dossiers
– Niveau 1, Niveau 2, Niveau 3, Etc …
— Tous les fichiers
•
L’héritage peut être restreint si ce comportement n’est pas celui que
vous voulez obtenir
— L’héritage peut être stoppé pour les dossiers fils
— L’héritage peut être défini sur un dossier pour ses fils
Gestion de la propagation de l’héritage
• La définition des caractéristiques d’héritage au niveau du dossier
parent permet une gestion plus fine
Comprendre les permissions
• Les DACLs d’un dossier fils sont construites en combinant les
permissions héritées et les permissions explicites pour ce dossier
— Chaque ACE héritée est ajoutée aux DACLs en fonction de sa proximité
– Les ACEs des « grands parents » sont placées devant, sur les objets
« fils »
– Les ACEs explicites sont placées devant toutes les permissions héritées
• Les ACEs au sein d’une ACL sont ordonnées en fonction de la valeur du
drapeau; « flag »
— Les refus “access denied” sont placés devant les autorisations “access
allowed”
Héritage Multi-Niveau
DACL Explicite
XX XX XX AA AA AA AA
ACEs héritée du parent
XX AA AA
XX XX XX AA AA AA AA
ACEs Explicite
ACEs
ACEs Explicite
XX XX AA
XX AA AA
XX XX XX AA AA AA AA
Parent
Grand Parent
Planification des permissions
• Quel type d’héritage doit être mis en oeuvre pour gérer la structure cidessous ?
• Pensez à prendre en compte les contraintes d’administration de vos choix
Ventes: RWX
Direction : RWXD
Administrateurs: Full
Ajouter
Johnc: RWXD
À la DACL héritée
Remplacer l’héritage par
Ventes: RX
Directions : RX
Administrateurs: Full
Permissions et Héritage
• Notez ci-dessous les permissions adéquates pour obtenir le résultat
souhaité :
Dossier
1
Ensemble
3
Ensemble
2
Ensemble
4
Sécurité des Objets
Introduction au contrôle d ’accès
Architecture du système de fichier
Contrôle d ’accès et héritage
EFS (Encrypting File System)
Résumé
Chiffrer les fichiers
• Le chiffrement des fichiers fournit un niveau supplémentaire de sécurité
pour les données sensibles
— L’accès physique à une machine rend souvent la protection par DACL
insuffisante
– Utilitaires de lecture du NTFS qui ignorent les DACLs
– Une machine ou un disque volé peut être facilement compromis
• Un chiffrement solide fournit
— Un niveau élevé de protection des données
— Des procédures de recouvrement de clefs
— Une transparence relative d’utilisation
• Windows 2000 EFS (Encrypting File System) est la solution standard
fournie par Microsoft
EFS Intégration
• Driver EFS
— Inclus comme une couche dans l’architecture NTFS
— Reçoit les clefs du service EFS
— Fournit les informations nécessaires au FSRTL pour un fonctionnement
transparent
– Toutes les communications avec le système de fichier NTFS sont prises
en compte
• FSRTL
— Est une des composantes du driver EFS
— Est responsable du chiffrement et du déchiffrement des fichiers
• Service EFS
— Fait partie intégrante du système de sécurité
— Est chargé de la gestion des clefs utilisées pour le chiffrement
FSRTL = File System Reparse Tag List
Intégration de EFS
(Suite)
Applications
service
EFS
User mode
Win32 layer
Kernel mode
I/O manager
CryptoAPI
Communication LPC
pour la gestion des
clefs
EFS driver
FSRTL
NTFS
Disque
Chiffrement et déchiffrement des fichiers
• Les fichiers sont chiffrés en utilisant une clef symétrique aléatoire
— Une clef de chiffrement FEK (File Encryption Key) est générée pour chaque
fichier/répertoire, cette clef est utilisée par l’algorithme de chiffrement DESX
• La FEK est chiffrée en utilisant la clef publique de tous les agents
autorisés. Elle est stockée dans un champ particulier attaché au fichier le
DDF
— Des copies de la FEK sont chiffrées avec les clefs publiques des « recovery
agents » et stockées dans un champ séparé, le DRF
• Avant que les fichiers ne puissent être déchiffrés, il faut d’abord déchiffrer
la FEK
— Lorsqu’un agent autorisé demande à lire le fichier, la clef privée de l’agent
est utilisée pour obtenir une copie de la FEK
— La FEK est alors utilisée pour déchiffrer le fichier
DDF = Data Decryption Field, DRF = Data Recovery Field
Cinématique de chiffrement d’un fichier
A la claire
fontaine …
Clef
publique
de
L’utilisateur
Chiffrement (DESX)
K
Génération du DDF
(RSA)
Générateur
de nombre
aléatoire
Clef de
chiffrement
générée
aléatoirement
K
RSA = Rivest Shamir Addelson
Génération du DRF
(RSA)
Clef de
recouvrement
K
*#$fjda^j u539!3t
t389E *&…
DDF
DRF
Cinématique de déchiffrement d’un fichier
*#$fjda^j u539!3t
t389E *&…
Déchiffrement
(DESX)
FEK
Clef privée
de l’utilisateur
K
K
Extraction du DDF
(RSA)
DDF
A la claire fontaine …
Le recouvrement de clef dans EFS
• Le recouvrement de clef pour un fichier doit être disponible pour les
fichiers critiques
— Des utilisateurs qui quittent la société
— Le recouvrement d’informations critiques doit être disponible
• Les agents de recouvrement doivent être mis en place avant le chiffrement
des fichiers
— Un DRF est créé uniquement pour les agents autorisés au moment du
chiffrement
— Vous devriez créer un agent de recouvrement générique pour votre société
— La politique de recouvrement EFS peut être définie au niveau des stratégies
de sécurité
• Lors du recouvrement d’un fichier, la clef privée d’un agent de
recouvrement est utilisée pour déchiffrer une copie de la FEK qui sera à
son tour utilisée pour déchiffrer le fichier
Cinématique de recouvrement d’un fichier
*#$fjda^j u539!3t
t389E *&…
Chiffrement
(DESX)
FEK
Clef privée
de l’agent de
recouvrement
K
K
Extraction du DDF
(RSA)
DDF
A la claire fontaine …
Chiffrement pour un groupe d’utilisateur ?
• Les données chiffrées doivent souvent être consultées par un groupe de
personnes
• EFS utilise du chiffrement asymétrique , les certificats sont délivrés
uniquement à des individus, pas à des groupes !
— Seul des utilisateurs peuvent utiliser l’EFS ou servir d’agent de récupération
• Une note de TechNet: la version initiale de l’EFS ne supporte pas le
partage de fichiers
— EFS est prévu pour pouvoir le faire
— Les utilisateurs peuvent décrypter les fichiers en utilisant leurs clefs
Génération automatique de certificat pour EFS
• Microsoft à conçu EFS de manière à pouvoir fonctionner sur une machine
autonome sans l’aide d’un CA (Certificate Authority)
• En l’absence d’une CA, lorsqu’un utilisateur chiffre un fichier pour la
première fois
— Le service EFS génère automatiquement un certificat EFS et une clef privée
— Sans l’aide des fonctions de gestion d’une CA, la gestion d’un tel certificat
est assez difficile
• Sur une machine autonome, l’agent de récupération par défaut est
l’administrateur prédéfini
• Dans le contexte d’un domaine, l’agent de récupération par défaut est
l’administrateur de domaine prédéfini
Génération de certificats par le CA
• Une bonne pratique consiste à mettre en place une CA au niveau de
l’entreprise avant la mise en œuvre d’un domaine Windows 2000
— Les certificats EFS sont générés automatiquement par la CA lors du
premier chiffrement d’un fichier par un utilisateur
— Les agents de récupération doivent être mis en place avant le premier
chiffrement
– Générer un certificat de récupération EFS pour chaque agent
– Définir les agents de récupération dans la stratégie de la PKI (Public
Key Policy)
Stockage des certificats
Stockage des certificats
(Suite)
• Les magasins de certificats contiennent les certificats et leurs
caractéristiques
— MY— Certificat correspondant à la clef privée de l’utilisateur et associé à
son profil
— CRLs—Certificate Revocation Lists; Liste des certificats révoqués
— CTLs—Certificate Trust Lists; Liste des cas de confiance
— Keys—Clefs privées
Les utilisateurs nomades et les certificats
• EFS est capable de prendre en compte les utilisateurs nomades, à
condition que leurs certificats soient disponibles
— Les profils itinérants sont le moyen le plus simple de mettre à disposition le
dossier MY pour les utilisateurs nomades
— Les cartes à puces (Smart Cards) sont le moyen le plus simple et le plus
sécurisé pour la mise à disposition des certificats
– Le certificat x.509 v3, ainsi que la paire de clef Publique/Privé, sont
stockés dans la carte
EFSINFO
• EFSINFO
— Disponible dans le ressource Kit de Windows 2000
— Affiche les informations suivantes sur un fichier chiffré
– L’utilisateur qui a chiffré le fichier
– L’empreinte du certificat de l’utilisateur
– Les agents de récupérations
– L’empreinte du certificat des agents de récupération
EFSINFO
(Suite)
• L’empreinte des certificats est particulièrement utile pour savoir quels sont
les certificats à importer pour la mise en oeuvre d’une récupération
Stratégie de récupération EFS
• Un fichier chiffré doit être déchiffré avant d’être copié
• Un fichier chiffré doit être récupéré lorsque le compte de l’utilisateur a été
supprimé ou que la clef privée est corrompue
— Pour plus de simplicité, attribuez un profil itinérant à l’agent de récupération
— Pour plus de sécurité sur la clef privée de l’agent
– Sauvegardez le fichier chiffré et restaurez-le sur une machine sûre qui
contient le certificat de l’agent et sa clef privée
– Exportez le certificat de l’agent sur une disquette puis importez-le sur la
machine qui contient le fichier chiffré
Récupération avec Windows 2000 Backup
• L’outil standard de sauvegarde Windows 2000 peut être utilisé pour
sauvegarder et restaurer des fichiers chiffrés, c’est une des méthodes de
récupération
Sauvegarde vers une disquette
• La sauvegarde/restauration sur disquette est facile et rapide avec l’outil de
sauvegarde standard de Windows 2000
— Supporte les sauvegardes sur plusieurs disquettes
Exportation/importation des clefs importantes pour
la récupération et la sauvegarde
• Les certificats doivent être
sauvegardés et stockés en lieu sûr
— Pour une sauvegarde complète
la clef privée doit aussi être exportée
• L’exportation se fait depuis la MMC
Options d’exportation
• La clef privée associée au certificat peut aussi être exportée
• Une protection par mot de passe est demandée dès que l’on exporte la clef
privée
Importation d’un Certificat
• Les certificats exportés ont des extensions particulières
• Pour lancer l’assistant d’importation, cliquez avec le bouton droit sur le
fichier .PFX
• Une fois que le certificat est correctement importé, le fichier peut être
récupéré
Utilisation d’EFS en ligne de commande
• En plus des fonctionnalités accessibles depuis l’interface, plusieurs outils
en ligne de commande sont utilisables pour manipuler les fonctions de
l’EFS
— CIPHER permet le chiffrement et le déchiffrement des fichiers
– Peut être utilisé dans des traitements « batchs »
EFS Commands: CIPHER
Copie de fichiers chiffrés
• EFS est disponible seulement sur NTFS v5
— Le chiffrement est perdu si le fichier est copié vers un autre système de
fichiers
• L’outil de sauvegarde de Windows 2000 peut sauvegarder et restaurer des
fichiers chiffrés
— Pour être déchiffrés, les fichiers doivent être restaurés sur un système
NTFS V5
• Pour ouvrir ou copier un fichier chiffré, l’utilisateur doit :
— Avoir les permissions de lecture
— Déchiffrer le fichier
— En cas d’echec, un message « Accés refusé » est affiché
• Contrairement à la logique appliquée aux fichiers « en clair », lorsqu’un
fichier chiffré est copié vers un autre volume NTFS V5, il n’hérite pas de
l’état de chiffrement du dossier cible, mais reste chiffré
Copie de fichiers chiffrés via le réseau
• La plupart des utilisateurs ont des données sensibles sur les serveurs
— Un fichier chiffré traverse le réseau « en clair »
• Un analyseur réseau peut être utilisé pour capturer ces données
— Lors de la sauvegarde
— Lors de la lecture
— Lors de l’impression sur une imprimante du réseau
• Windows 2000 permet l’utilisation d’IP Sec pour le chiffrement des
données sur le réseau
Données capturées sur le réseau (DEMO)
Résumé
Dans ce chapitre nous avons vu :
• La Sécurité des Objets
• Les contrôles d’accès sur le système de fichier
• Le chiffrement sur le système de fichier

Documents pareils