MISC No 2



Sécurisation de Windows 2000



Windows 2000 est un système d’exploitation doté de nombreuses fonctionnalités de sécurité, et celles-ci sont configurées par défaut à un niveau de sécurité plus élevé que celui de Windows NT 4.0. Cependant, la configuration de ces fonctionnalités est encore insuffisante dans la plupart des cas. L’objectif de cet article est de présenter des recommandations de sécurisation en vue d’obtenir un serveur autonome ou un poste de travail correctement sécurisé. Avec un peu de méthode et en quelques étapes, il est possible d’obtenir un système déjà beaucoup plus solide et adapté à nombre de besoins de sécurité.

Nous n’aborderons que brièvement les aspects liés à Active Directory, car il est déconseillé d’installer celui-ci sur un serveur placé sur un réseau hostile. Quant à Windows XP, la plupart des recommandations de cet article peuvent s’y appliquer, car il n’y a pas de révolution majeure concernant la sécurité dans la nouvelle version de Windows.



Démarche de sécurisation

Dans le cas d’une entreprise, la démarche de sécurisation commence par la rédaction d’une politique de sécurité, qui suppose d’avoir effectué auparavant un bilan de l’organisation et des processus de l’entreprise et une analyse des risques.

Ensuite seulement vient la définition de l’architecture de sécurité, puis son implémentation, suivie au besoin par un audit de configuration et des tests d’intrusion.

Dans le cas d’un particulier, celui-ci devra définir ses besoins et ses risques (accès permanent à Internet, par exemple).

Niveaux de sécurité

Windows 2000 permet d’établir différents niveaux de sécurité. Parmi ces différents niveaux, pourquoi ne pas choisir systématiquement le plus haut ? La raison principale est que plus un système est protégé, plus les utilisateurs risquent d’être entravés dans l’exécution de leurs tâches courantes. De plus, la mise en place et la gestion de la sécurité constituent une charge supplémentaire pour les administrateurs.

D’autre part, si la sécurité est trop contraignante, les utilisateurs peuvent être tentés de la contourner pour faciliter leur travail (mot de passe écrit sur un Post-It collé sous le clavier, sessions jamais fermées, etc.).

Il est donc nécessaire d’évaluer votre besoin de sécurité afin de trouver le juste équilibre entre niveau de sécurité et facilité de travail pour les utilisateurs avant de mettre en œuvre une configuration de sécurité. De plus, la mise en œuvre de paramétrages de sécurité a un impact direct sur le fonctionnement du système. En particulier, certaines applications peuvent exiger des paramètres moins stricts afin de fonctionner correctement. Il faut donc évaluer avec soin chacune des recommandations préconisées ici en la replaçant dans le contexte de votre système d’information, afin de s’assurer que celui-ci fonctionnera toujours après l’application de la recommandation.

Sécurité physique

La pièce dans laquelle se trouve l’ordinateur, surtout lorsqu’il s’agit d’un serveur critique, devra bien sûr être fermée à clé. L’idéal serait que cette pièce se trouve dans un bâtiment dont l’accès est autorisé aux seules personnes habilitées. Dans le cas d’un ordinateur portable, utilisez un câble antivol.

Le déni de service le plus évident est l’interruption du courant électrique :utilisez une protection contre les surtensions et/ou un onduleur pour protéger l’ordinateur et éviter toute perte de données ou altération des partitions au cours d’un arrêt brutal.

Faites également attention aux risques de type incendie ou dégâts des eaux en respectant les normes de locaux en vigueur.

Contrôle d’accès à l’ordinateur

C’est dorénavant un fait établi qu’il est impossible de sécuriser totalement un ordinateur si on peut y accéder physiquement. Il est conseillé de prendre au minimum les mesures suivantes:

·        Si l’ordinateur est une station de travail, configurez un mot de passe de démarrage dans le BIOS, et protégez également la configuration de celui-ci par un mot de passe d’administration. Dans le cas d’un serveur, si vous voulez qu’il redémarre automatiquement en cas de coupure de courant par exemple, ne mettez pas de mot de passe de démarrage.

·        Evitez les multi-boot, qui permettent de démarrer l’ordinateur avec un autre système d’exploitation.

·        Désactivez l’amorçage par disquette dans la configuration du BIOS. Si possible, retirez le lecteur de disquettes, afin d’empêcher le démarrage sur un système d’exploitation permettant d’utiliser des utilitaires comme NTFSDOS pour accéder aux partitions NTFS.

·        Si l’ordinateur possède une serrure physique, verrouillez-la et conserver la clé dans un endroit sûr. Toutefois, si la clé est perdue ou inaccessible, il se peut qu’un utilisateur autorisé soit dans l’incapacité de travailler sur l’ordinateur. Attention donc aux auto-dénis de service induits par des procédures mal définies.

·        Toutes les partitions du disque dur doivent être au format NTFS. Il n’est plus nécessaire d’avoir au minimum une partition FAT en cas de crash des partitions NTFS : la console de récupération de Windows 2000 contient les outils nécessaires dans ce cas.

Installation de Windows 2000

Les étapes à suivre pour l’installation de Windows 2000 sont les suivantes :

·        Pour un serveur placé en milieu hostile (DMZ par exemple), choisissez une installation en serveur autonome dans un groupe de travail, donc sans Active Directory.

·        Prévoyez plusieurs partitions pour le système, les applications, les fichiers de logs, sans oublier une partition spéciale pour le serveur Web s’il doit y en avoir un.

·        Puis installez les services supplémentaires nécessaires : serveur Web, SMTP, etc.

·        Installez ensuite le dernier Service Pack. Actuellement, il s’agit du SP2 plus le SRP pour Windows 2000. Le SRP (Security Rollup Package) est un ensemble de correctifs concernant la sécurité, situé entre le SP2 et le futur SP3. Vous pouvez les télécharger à l’URL suivante:

http://www.microsoft.com/windows2000/downloads

 

·        Installez ensuite les derniers Hotfixes post-SRP concernant les fonctionnalités que vous conserverez sur votre système (ceux dont vous avez explicitement besoin). Attention, les hotfixes nécessitent une installation dans un ordre chronologique précis. Vous pouvez les télécharger à l’URL suivante :

http://windowsupdate.microsoft.com

 

·        Arrêtez les services non utilisés. A titre d’information, les services vraiment indispensables pour faire fonctionner une station de travail Windows 2000 sont limités à la liste suivante:

o       Event Log

o       NT LM Security Support Provider

o       Plug and Play

o       Protected Storage

o       Remote Procedure Call (RPC)

o       Security Accounts Manager

o       System Event Notification

Notez que même le service Server est arrêté. Si vous n’avez pas de partage réseau, ce n’est pas un problème. Par contre, l’explorateur d’ordinateurs sera arrêté également, et vous ne pourrez plus lister les ordinateurs si vous êtes dans un domaine.

 

·        Désinstallez les protocoles réseaux non utilisés (IPX/SPX, NetBEUI)

·        Désactivez les services réseaux non utilisés sur certaines cartes réseaux (typiquement NetBIOS si on n’a pas à accéder à des partages réseaux sur un LAN).

·        Installez vos applications et leurs correctifs éventuels.

·        Testez votre serveur et vérifiez qu’il peut communiquer à travers le réseau et que les applications et services fonctionnent.

·        Créez une disquette de réparation d’urgence : utilisez l’utilitaire de Backup et cliquez sur le bouton « Disquette de réparation d’urgence ».

Paramétrage du système

L’application des paramètres de sécurité qui vont suivre dans cet article et le suivi des serveurs une fois configurés peuvent être laborieux s’il faut jongler avec le gestionnaire des utilisateurs, l'éditeur de stratégies, l'explorateur Windows, l'éditeur de Registre, le journal des évènements et le panneau de configuration des services.

Mais Windows 2000 est livré en standard avec un outil permettant de gérer depuis un seul et même endroit tous les paramètres liés à la sécurité du système local: l’outil d’administration nommé « Stratégie de Sécurité Locale » (et « Stratégie de Sécurité du domaine » dans le cas d’un Contrôleur de Domaine). Il est même possible d’ajouter dans cet outil ses propres paramètres de sécurité (les options de sécurité correspondant à des clés de la base de registre sont situées dans la clé HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SeCEdit\Reg Values).

Windows 2000 dispose également d’un outil permettant de prédéfinir des profils de sécurité, puis d’analyser un système par rapport à ces profils et enfin d’appliquer ceux-ci au système : il s’agit de l’outil « Configuration et Analyse de la Sécurité », qui se présente lui aussi sous la forme d’un « composant enfichable » qui s'installe dans la MMC (Microsoft Management Console), l'interface graphique de gestion centralisée du système :

 

Attention : dans le cas d’un poste situé dans un domaine, les options de sécurité du domaine ont priorité sur les options de sécurité locales en cas de conflit.

En effet, dans Active Directory, il est possible (et conseillé) de définir des Stratégies de Groupe, qui peuvent s’appliquer à tout conteneur Active Directory : sites, domaines et Unités Organisationnelles (OU).

Les Stratégies de Groupe

Les stratégies de groupe affectent tous les utilisateurs et tous les ordinateurs du conteneur auxquelles elles s’appliquent, et peuvent être contrôlées ensuite par les groupes auxquels appartiennent l’utilisateur et l’ordinateur.

L’ordre d’application des stratégies de groupe est le suivant:

-         Stratégies style NT 4.0 (NTConfig.pol)

-         Stratégie de Groupe locale

-         Stratégies de site, dans l’ordre administratif

-         Stratégies de domaine, dans l’ordre administratif

-         Stratégies d’OU, du haut vers le bas et dans l’ordre administratif

Par défaut, les dernières stratégies « écrasent » les premières. Il est donc extrêmement important de bien définir ses stratégies de groupe afin que les paramètres de sécurités soient appliqués dans le bon ordre.

Pour créer une stratégie de groupe, ouvrez l’outil d’administration « Utilisateurs et Groupes Active Directory » sur votre contrôleur de domaine, faites un clic droit sur le conteneur de votre choix et choisissez Propriétés. Cliquez sur l’onglet Stratégie de Groupe :

Vous pouvez alors créer les stratégies de votre choix sur chacun des conteneurs de votre forêt Active Directory :

Délégation d’administration

Windows 2000 permet de déléguer l’administration des éléments d’Active Directory :

Il est conseillé d’utiliser cette possibilité afin de simplifier la tâche des administrateurs et d’assurer une administration plus proche des ressources.

Gestion des comptes

Sous Windows 2000, la gestion des comptes locaux (définis dans la base SAM de la machine locale) se fait par l’outil d’administration « Gestion de l’Ordinateur » (nœud « Utilisateurs et Groupes Locaux »). Les comptes de domaine, définis dans Active Directory, sont gérés grâce à l’outil d’administration « Utilisateurs et Ordinateurs Active Directory ».

Voici quelques recommandations :

·        Utilisez des comptes distincts pour l’administration et l’activité de tous les jours des utilisateurs. Pour éviter toute modification accidentelle de ressources sensibles, il est conseillé d’utiliser le compte ayant le moins de privilèges pour effectuer la tâche souhaitée. Les virus notamment peuvent causer beaucoup plus de dommages s’ils sont activés par l’intermédiaire d’un compte ayant des privilèges élevés.

Utilisez la commande RunAs pour lancer des outils d’administration avec des privilèges plus élevés, par exemple.

·        Renommez le compte Administrateur en un compte moins évident. Ce compte très puissant est le seul qui ne peut être verrouillé interactivement à la suite de plusieurs échecs de tentatives d’ouverture de session. Les attaquants essaieront donc en priorité de pénétrer dans le système en tentant de trouver le mot de passe de ce compte. Vous pouvez de plus ajouter un compte leurre aux privilèges réduits nommé Administrateur. Dans tous les cas, choisissez un mot de passe extrêmement fort pour le compte Administrateur réel. Si ce mot de passe comporte plus de 14 caractères, son hash LanMan ne sera pas stocké dans la SAM. Il ne restera donc que le hash NTLM, beaucoup plus complexe à craquer, car il ne peut être divisé en 2 ensembles de 7 caractères.

·        Assignez un mot de passe au compte Invité et désactivez-le.

Remarque : le compte Invité est déjà désactivé sur la version Serveur de Windows 2000.

 

Ouverture de session

Sous Windows 2000 Professional, la nécessité d’appuyer sur CTRL+ALT+SUPPR n’est pas obligatoire par défaut. Il faut l’activer par l’intermédiaire de l’onglet « Avancé » du panneau de contrôle « Utilisateurs et mots de passe » :



Verrouillage de la station de travail

Paramétrez un écran de veille pour qu’il verrouille automatiquement la session en cas de non-utilisation pendant une durée déterminée. Pour cela, utilisez l’option « Protégé par mot de passe » de votre écran de veille.



Stratégies de comptes

Les stratégies de comptes définies par défaut dans Windows 2000 ne sont pas suffisantes. Paramétrez vos stratégies comme suit :

Stratégie de mots de passe :

Conserver l’historique des mots de passe

6 ou 7

Durée de vie maximale du mot de passe

60 à 90 jours

Durée de vie minimale du mot de passe

Bien que ce paramètre semble peu important, s’il n’est pas défini, des utilisateurs pourront contourner la condition de non-réutilisation de leurs anciens mots de passe en changeant immédiatement leur mot de passe plusieurs fois de suite de façon à retomber sur leur mot de passe initial.

Paramétrer à 1 jour minimum.

Les mots de passe doivent respecter des exigences de complexité

Activé

Longueur minimale du mot de passe

7

Stocker le mot de passe en utilisant le cryptage réversible pour tous les utilisateurs du domaine

Désactivé



Gestion et robustesse des mots de passe

·        Changez de mot de passe fréquemment et en cas de doute de compromission. Evitez de réutiliser les mêmes mots de passe, et n’assignez pas le même mot de passe à des comptes différents.

·        Evitez d’utiliser des mots qui peuvent facilement être devinés ou des mots du dictionnaire. Choisissez par exemple une combinaison de lettres, de chiffres et d’autres caractères non alphanumériques.

·        N’écrivez votre mot de passe nulle part. Choisissez-en un que vous seul pouvez mémoriser facilement.



Forcez l’utilisation de mots de passe complexes. Le fait d’activer l’option « Les mots de passe doivent respecter des exigences de complexité » impose les 3 règles suivantes :

o       Le mot de passe ne doit pas contenir le nom de login ou une partie du nom complet de l’utilisateur

o       Il doit faire au moins 6 caractères de long

o       Il doit contenir des caractères d'au moins 3 des 4 jeux suivants:

§         Alphabétiques minuscules

§         Alphabétiques majuscules

§         Chiffres

§         Caractères non alphabétiques ($,!,%,^, ...)

 

Par défaut, la base SAM est chiffrée par un équivalent de SYSKEY sous Windows 2000. Toutefois, malgré ce mécanisme de protection, il existe des outils diffusés sur Internet qui permettent tout de même de récupérer ces hashes, sous certaines conditions.



Stratégie de verrouillage de comptes :



Durée de verrouillage des comptes

Toujours ou au minimum un jour.

Réinitialiser le compteur de verrouillage du compte après

5 minutes minimum, plutôt 30 min à 1h

Seuil de verrouillage du compte

5



 

Droits utilisateurs

Certains droits utilisateurs nécessitent une modification des groupes et utilisateurs qui possèdent ces droits par défaut :



Droit

Accorder à

Accéder à cet ordinateur depuis le réseau

Utilisateurs authentifiés (ou Utilisateurs), retirer Administrateurs (si ceux-ci ont un accès physique à la machine)

Agir en tant que partie du système d'exploitation

 

Ajouter des stations de travail au domaine

 

Arrêter le système

Administrateurs

Augmenter la priorité de planification

Administrateurs

Augmenter les quotas

Administrateurs

Autoriser que l'on fasse confiance aux comptes ordinateur et utilisateur pour la délégation

 

Charger et décharger des pilotes de périphériques

Administrateurs

Créer des objets partagés permanents

 

Créer un fichier d'échange

Administrateurs

Créer un objet-jeton

 

Déboguer des programmes

 

Forcer l'arrêt à partir d'un système distant

 

Générer des audits de sécurité

 

Gérer le journal d'audit et de sécurité

Administrateurs

Modifier les valeurs d'env. de microprogrammation

Administrateurs

Modifier l'heure système

Administrateurs

Optimiser les performances système

Administrateurs

Optimiser un processus unique

Administrateurs

Outrepasser le contrôle de défilement

Opérateurs de sauvegarde, Administrateurs

Ouvrir une session en tant que service

Réplicateurs, Comptes de services

Ouvrir une session en tant que tâche

 

Ouvrir une session localement

Administrateurs, Opérateurs de sauvegarde, Utilisateurs authentifiés (si station de travail)

Prendre possession des fichiers ou d'autres objets

Administrateurs

Refuser l'accès à cet ordinateur à partir du réseau

Administrateurs (si ceux-ci ont un accès physique à la machine)

Refuser les ouvertures de session locales

Utilisateurs (si serveur isolé)

Refuser l'ouverture de session en tant que service

 

Refuser l'ouverture de session en tant que tâche

 

Remplacer un jeton niveau de processus

 

Restaurer des fichiers et des répertoires

Opérateurs de restauration (créer ce groupe)

Retirer l'ordinateur de la station d'accueil

 

Sauvegarder des fichiers et des répertoires

Opérateurs de sauvegarde

Synchroniser les données de l'annuaire Active Directory

 

Verrouiller des pages en mémoire

 



Il est conseillé d’effectuer les modifications jugées nécessaires à ces droits en fonction des besoins spécifiques du système.

Options de sécurité

Il est possible sous Windows 2000 de configurer directement certains paramètres de sécurité depuis les outils d’administration « Stratégie de sécurité locale » et « Configuration et Analyse de la Sécurité » ou depuis Active Directory :

Il est recommandé de paramétrer les options de sécurité ainsi :

Option

Paramétrage

Arrêter immédiatement le système s'il n'est pas possible de se connecter aux audits de sécurité

Activé sur un serveur hautement sécurisé

Désactivé sur un serveur devant être toujours disponible

Auditer l'accès des objets système globaux

Activé (verbeux)

Auditer l'utilisation des privilèges de sauvegarde et de restauration

Au choix (ce paramètre est très verbeux : un événement par fichier sauvegardé ou restauré !)

Canal sécurisé : crypter numériquement les données des canaux sécurisés (lorsque cela est possible)

Activé

Canal sécurisé : crypter ou signer numériquement les données des canaux sécurisés (toujours)

Désactivé

Canal sécurisé : nécessite une clé de session forte (Windows 2000 ou ultérieur)

Désactivé

Canal sécurisé : signer numériquement les données des canaux sécurisés (lorsque cela est possible)

Activé

Comportement d'installation d'un fichier non-pilote non signé

Avertir mais autoriser l’installation

Comportement d'installation d'un pilote non signé

Ne pas autoriser l’installation

Comportement lorsque la carte à puce est retirée (si carte à puce)

Verrouiller la station de travail

Console de récupération : autoriser la copie de disquettes et l'accès à tous les lecteurs et dossiers

Désactivé

Console de récupération : autoriser l'ouverture de session d'administration automatique

Désactivé

Contenu du message pour les utilisateurs essayant de se connecter

Exemple : « L'accès non autorisé à cet ordinateur est interdit ».

Créer un fichier d'échange de mémoire virtuelle lors de la fermeture du système (erreur de traduction : effacer le fichier d’échange)

Activé

Déconnecter automatiquement à la fin de la période de connexion autorisée

Activé

Désactiver la combinaison de touches Ctrl+Alt+Suppr. lors de l'ouverture de session

Désactivé

Durée d'inactivité avant la déconnexion d'une session

15 minutes

Empêche la maintenance par le système du mot de passe du compte ordinateur

Désactivé

Empêcher les utilisateurs d'installer des pilotes d'imprimante

Activé

Envoyer un mot de passe non crypté pour se connecter aux serveurs SMB tierce partie

Désactivé

Fermer automatiquement la session des utilisateurs à l'expiration du délai de la durée de session (local)

Activé

Ne pas afficher le dernier nom d'utilisateur dans l'écran d'ouverture de session

Activé

Ne permettre l'accès au CD-ROM qu'aux utilisateurs connectés localement

Activé

Ne permettre l'accès aux disquettes qu'aux utilisateurs connectés localement

Activé

Niveau d'authentification Lan Manager

Envoyer uniquement les réponses NTLM (2), ou

Envoyer les réponses LM et NTLM (1) s’il y a des Windows 9x/ME sur le réseau

Nombre d'ouvertures de session précédentes dans le cache (au cas ou le contrôleur de domaine ne serait pas disponible)

0 à 2 Ouvertures de session

Permet au système d'être arrêté sans avoir à se connecter

Désactivé

Permet aux opérateurs de serveur de planifier des tâches (Contrôleurs de domaine uniquement)

Désactivé

Permet l'éjection des supports NTFS amovibles

Administrateurs

Prévenir l'utilisateur qu'il doit changer son mot de passe avant qu'il n'expire

14 derniers jours

Renforcer les autorisations par défaut des objets système globaux (comme les liens de symboles)

Activé

Renommer le compte administrateur

Non défini si déjà fait

Renommer le compte Invité

Non défini si déjà fait

Restrictions supplémentaires pour les connexions anonymes

Aucun accès sans autorisation implicite

Signer numériquement les communications client (lorsque cela est possible)

Activé

Signer numériquement les communications client (toujours)

Désactivé

Signer numériquement les communications serveur (lorsque cela est possible)

Activé

Signer numériquement les communications serveur (toujours)

Désactivé

Titre du message pour les utilisateurs essayant de se connecter

« Attention »

Paramétrage des clés de la base de registre

D’autres paramètres de sécurité, non accessibles depuis l’outil d’administration « Stratégie de sécurité locale », doivent se configurer directement dans la base de registre.

 

Attention : en raison de l’importance de la base de registre pour le bon fonctionnement du système, il faut être extrêmement prudent lors de l’édition de celle-ci. Toute erreur peut rendre le système inutilisable au prochain démarrage.

Il est donc fortement recommandé d’effectuer une sauvegarde de la base de registre avant toute modification avec l’outil regedit.exe, et de compléter celle-ci par la mise à jour de la disquette de réparation d’urgence (ERD) avec l’outil ntbackup.exe.

La prise en compte de l’ensemble des paramètres ci-dessous n’est pas obligatoire : chaque paramètre devra être évalué en fonction des besoins, des risques et des contraintes du contexte de l’utilisateur, et des impacts du paramétrage.

Simplification du système

Désactivez les sous-systèmes OS/2 et Posix : les valeurs suivantes doivent être absente de la base de registre :

Os2LibPath dans la clé :

[HKEY_LOCAL_MACHINE]

\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Os2 et Posix dans la clé :

\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems



Accès anonymes

Interdisez les connexions réseaux anonymes : la valeur RestrictAnonymous dans la clé [HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Control\Lsa doit être à 1.

La valeur RestrictNullSessAccess dans la clé [HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters doit être positionnée à 1.

Les valeurs NullSessionPipes et NullSessionShares dans la clé [HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters doivent être vides.



Accès media amovibles

Vérifier que le démarrage automatique des applications sur CD-ROM est interdit. La valeur Autorun dans la clé [HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Services\Cdrom doit être positionnée à 0.

 

Accès distant à la base de registre

L’accès distant à la base de registre suit les permissions définies sur la clé suivante :

[HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg

Si cette clé n'est pas présente, créez-la explicitement. Vérifiez (avec regedt32.exe, onglet Sécurité) que seuls les Administrateurs ont accès à cette clé, et en consultation seulement.

 

Afin d’éviter que cette règle d’accès ne puisse être outrepassée pour certaines parties de la base de registre, la clé suivante doit être absente ou vide :

[HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg\AllowedPaths.



Partages administratifs

Désactivez les partages administratifs par défaut : pour un serveur, la valeur AutoShareServer dans la clé [HKEY_LOCAL_MACHINE]\SYSTEM \CurrentControlSet\Services\LanmanServer\Parameters doit être positionnée à 0.

 

Pour une station de travail, la valeur AutoShareWkS dans la clé [HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters doit être positionnée à 0.



Audit du système

Activez l’audit de tous les privilèges (verbeux) : la valeur FullPrivilegeAuditing dans la clé [HKEY_LOCAL_MACHINE] \SYSTEM\CurrentControlSet\Control\Lsa doit être positionnée à 1.



Activez l’audit sur les objets de base dès leur création : la valeur AuditBaseObjects dans la clé [HKEY_LOCAL_MACHINE] \SYSTEM\CurrentControlSet\Control\Lsa doit être positionnée à 1.



Accès distant aux fichiers journaux

Paramétrez la valeur RestrictGuestAccess dans les clés [HKEY_LOCAL_MACHINE]\SYSTEM\CurrentControlSet\Services\EventLog\Application, \SYSTEM\CurrentControlSet\Services\EventLog\Security et \SYSTEM\CurrentControlSet\Services\EventLog\System à 1 afin d’interdire l’accès distant aux fichiers journaux.

Dans le cas d’une machine membre d’un domaine, cette valeur peut ne pas être positionnée pour permettre aux administrateurs d’exploiter les journaux de la machine à distance.



Divers

Vous pouvez configurer votre système pour qu’il ne réponde pas aux explorations réseaux NetBIOS : la valeur Hidden dans la clé [HKEY_LOCAL_MACHINE] \SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters doit être positionnée à 1.

 

Vérifier que le service de Planning n’est pas utilisable par d’autres utilisateurs que les administrateurs : la valeur SubmitControl dans la clé [HKEY_LOCAL_MACHINE] \SYSTEM\CurrentControlSet \Control\Lsa doit être positionnée à 0.

 

Protection de la base de registre

Les permissions d’accès par défaut sur les clés de la base de registre sont plus sécurisées sous Windows 2000 que sous Windows NT 4.0. Vous devez utiliser l’utilitaire regedt32.exe pour gérer la sécurité des clés (menu Sécurité).

 

Vérifiez tout de même que seuls SYSTEM et Administrateurs possèdent le droit Contrôle Total sur l'ensemble de la base de registre (sauf la ruche [HKEY_USERS]).

Vérifiez que le groupe Interactif (et Utilisateurs Authentifiés si des connexions distantes sont nécessaires) ne possède que le droit Lecture sur l'ensemble de la base de registre (sauf [HKEY_USERS]).

Vérifiez que le groupe Interactif ne possède que le droit Lecture sur la clé [HKEY_USERS]\.Default.

 

Les permissions en écriture doivent être affectées en fonction des différents besoins des diverses applications installées. Certaines applications nécessitent obligatoirement une permission d’accès en écriture pour certaines clés de registre. Accordez donc ponctuellement cette permission en fonction des besoins. Encore une fois, faites très attention au cours de l’affectation des permissions d’accès.

Permissions d’accès aux fichiers et répertoires

Pour pouvoir affecter des permissions d’accès sur les fichiers et répertoires de votre disque, vos partitions doivent bien sûr être au format NTFS.

Les permissions d’accès aux fichiers sont plus sécurisées par défaut sous Windows 2000 que sous Windows NT 4.0 et, de plus, vous bénéficiez du concept d’héritage des permissions. Cependant, le groupe Tout le Monde a toujours, comme sous NT 4.0, le droit Contrôle Total par défaut sur les fichiers du disque en dehors du répertoire système. De même, les partages réseau sont créés avec le droit Contrôle Total pour le groupe Tout le Monde par défaut... Enfin, les partages administratifs (partages cachés C$, D$, ADMIN$, ...) sont également activés par défaut. Il convient de les désactiver dans la stratégie de sécurité locale ou directement dans la base de registre, comme nous l’avons vu.

La technique à suivre pour affecter des permissions d’accès sur un domaine est la suivante :

-                      On commence par créer des groupes globaux au niveau du domaine dans Active Directory.

-                      On affecte ensuite les utilisateurs du domaine aux groupes globaux.

-                      Puis on crée des groupes locaux sur les machines gérant directement les ressources auxquelles les utilisateurs doivent accéder (serveurs de fichiers, serveurs d’impression, etc...).

-                      On place alors les groupes globaux dans les groupes locaux (remarque : l’inverse est impossible).

-                      Enfin, on affecte les permissions d’accès aux ressources aux groupes locaux.

En procédant de la sorte et en utilisant la fonction d’héritage des permissions, vous pouvez simplifier la tâche de maintenance des permissions d’accès et, surtout, vous minimisez les risques d’erreurs de configuration. De plus, vous rapprochez physiquement l’administration des ressources de leur localisation géographique.

Pour visualiser l’ensemble des fichiers dans l’explorateur de fichiers, cochez la case « Visualisation des fichiers système/cachés » et décochez la case « Cacher les fichiers protégés du système » dans la boîte de dialogue d’options d’affichage des répertoires :

 

Assurez-vous d’appliquer des autorisations aux répertoires parents avant d’en appliquer à leurs sous-répertoires. Attention également à l’héritage des permissions : vous serez amené à supprimer cet héritage lorsque vous voudrez affecter des permissions différentes de celles du répertoire parent. Dans la fenêtre des propriétés d’un fichier ou d’un répertoire, la case « Permettre aux autorisations pouvant être héritées du parent d'être propagées à cet objet » est cochée par défaut. Si vous décochez cette case, une fenêtre de dialogue vous demande alors si vous voulez configurer vos nouvelles permissions d’accès à partir d’une copie de celles du parent, ou bien si vous voulez partir à zéro (sans aucune permission) :



Les permissions d’accès conseillées sur une station de travail par exemple sont les suivantes :

Répertoires ou fichiers

Droits

Fichiers sous la racine :

Boot.ini
Ntdetect.com
Ntldr

Administrateurs : Contrôle total

System : Contrôle total

Fichiers sous la racine :

Autoexec.bat
Config.sys

Administrateurs : Contrôle total

System : Contrôle total

Tout le Monde : Lecture

Autres fichiers sous la racine (en dehors de pagefile.sys)

Administrateurs : Contrôle total

System : Contrôle total

\TEMP

Administrateurs : Contrôle total

System : Contrôle total

Interactif : Accès spécial au répertoire : RWX

\Winnt\Repair

Administrateurs : Contrôle total

Pour chaque profil utilisateur :

\Documents and Settings\%user%

Administrateurs : Contrôle total

System : Contrôle total

%user% : Changer

Autres répertoires et fichiers exécutables sous \Winnt

Administrateurs : Contrôle total

System : Contrôle total

Interactif : Lecture

Autres sous-répertoires de la racine (et leur contenu)

Administrateurs : Contrôle total

System : Contrôle total

Interactif : Lecture

Sur un serveur, vous pouvez remplacer Interactif par Utilisateurs authentifiés ou Utilisateurs du domaine.

Ces permissions constituent une base, à laquelle il faut ajouter toutes les permissions d’accès sur les données personnelles et/ou confidentielles présentes sur le serveur, et toutes les permissions sur les fichiers d’applications. Tous les exécutables, DLLs, etc... doivent être protégés en écriture. Cependant, comme dans le cas de la base de registre, certaines applications ont besoin d’écrire dans certains fichiers de configuration. Il conviendra donc d’autoriser l’accès en écriture à certains fichiers. Toutefois, cette permission devra être distribuée avec parcimonie (risque d’implantation de chevaux de Troie).

Chiffrement des fichiers et répertoires

Windows 2000, grâce à EFS (Encrypting File System), supporte le chiffrement de fichiers et de répertoires. Mais ce mécanisme est mono utilisateur : seul l’utilisateur qui a chiffré un fichier pourra le déchiffrer, en dehors de l’agent de récupération de clés. Vous ne pouvez donc pas partager des fichiers chiffrés sur un serveur de fichiers, par exemple.

Pour chiffrer un fichier ou un répertoire, celui-ci doit se trouver sur une partition NTFS version 5 (Windows 2000). Faites un clic droit dessus, choisissez Propriétés, cliquez sur le bouton Avancé et cochez la case correspondante :

Notez que les options de compression et de chiffrement sont exclusives : un fichier peut être soit compressé, soit chiffré.

Attention, le chiffrement ne remplace pas les permissions d’accès à vos fichiers : en effet, si un fichier sensible est chiffré, il ne pourra pas être lu par un utilisateur malveillant, mais il pourra être effacé s’il n’a pas de permissions d’accès suffisamment restrictives ! Donc, dans l’ordre, affectez des permissions à vos fichiers, puis chiffrez-les.

Activation de l’audit du système

Il est conseillé de paramétrer votre stratégie d’audit dans l’outil d’administration « Stratégie de sécurité locale », en choisissant d’auditer au moins les évènements suivants :

De plus, dans l’Observateur d’événements, configurez vos journaux pour que ceux-ci aient une taille suffisante (5 Mo par exemple), et que les anciens événements ne soient pas écrasés par les nouveaux en cas de saturation des fichiers. Dans ce cas, il est préférable de sauvegarder les journaux et de les vider manuellement.

Quant aux fichiers, l’audit de leurs accès se paramètre ainsi : dans l’explorateur de fichiers, faites un clic droit sur un fichier ou un répertoire, choisissez Propriétés, cliquez sur le bouton « Avancé », puis sur l’onglet « Audit ».



Vous pouvez ajouter dans cette fenêtre un type d’audit en fonction des utilisateurs.

Enfin, pour paramétrer l’audit sur une clé de la base de registre, procédez comme suit : lancez regedt32.exe, déplacez-vous vers la clé voulue, faite un clic dessus et dans le menu Sécurité, choisissez « Permissions... », puis cliquez sur « Audit ». Vous retrouvez une interface du même type que celle qui permet de paramétrer l’audit des fichiers.

Politique de sauvegardes

Des sauvegardes régulières doivent être effectuées, afin de protéger vos données des pannes matérielles, des erreurs de manipulation, des virus et autres dommages délictueux.

Un ou plusieurs jeux de sauvegardes devront être conservés dans un lieu géographique différent. Ces sauvegardes elles-mêmes devront être sécurisées (attention notamment au transport).

Contrôle périodique de l'état de votre système

Une fois votre système correctement paramétré, il faut vous assurer qu’il le demeure dans la durée. Pour remettre à jour la configuration de votre système périodiquement, utilisez l’outil d’administration « Configuration et analyse de la sécurité », comme nous l’avons vu.

 

Cet outil peut être démarré en mode ligne de commande (secedit.exe : voir l’aide pour la syntaxe). Vous pouvez donc créer une tâche planifiée pour le lancer à intervalle régulier, par exemple.

 

Audit périodique de votre système

Pour vous assurer que vous n’avez oublié aucune vulnérabilité, effectuez périodiquement un audit de votre serveur, soit en utilisant un outil de scan de vulnérabilités automatique, soit en faisant appel à un consultant en sécurité informatique, qui effectuera une prestation plus « sur mesure » et adaptée à vos besoins. Ce type de prestation s’appelle un test de visibilité, qui peut aller jusqu’au test d’intrusion.

 

 

Pour en savoir plus :

- Guides de la NSA :

          http://nsa1.www.conxion.com

 

- Guide du SANS « Windows 2000 Security Step by Step » :

          http://www.sansstore.org/Templates/frmTemplateK.asp?SubFolderID=22

 

- Check-lists de référence en ce qui concerne la sécurisation très renforcée de Windows NT :

·        Trusted Systems - NSA Windows NT Security Guidelines : http://www.trustedsystems.com/nsa_dpg.htm

·        US Navy Secure Windows NT Guide: http://infosec.nosc.mil/COMPUSEC/ntsecure.html



 

 

Patrick CHAMBET

http://www.chambet.com

 

Patrick Chambet est expert en sécurité Windows NT/2000/XP au sein du pôle audits et tests d’intrusion d’Edelweb : http://www.edelweb.fr