User Tools

Site Tools


formationsecurite:securitewindows
Installation d'un serveur
  • partition 4Gb
  • clavier: ajouter langue GB clavier belge et effacer 2 fois celui d'origine
  • installer tout IIS et dans Networking: DNS
  • server setup → custom → mettre l'IP à 10.10.3.11 et comme DNS 10.10.3.11
  • se mettre dans un workgroup
  • installer les drivers nvidia et rebooter
  • installer l'AD
dcpromo
  • DC for a new domain
  • create a new domain tree
  • create a new forest of domain trees
  • type the full DNS name for the new domain: domain1.be
  • nom netbios: DOMAIN1
  • database and log locations: laisser par défaut
  • shared system volume: laisser par défaut
  • Install and configure DNS on this computer (recommended)
  • permissions compatible pre-2000
  • DNS
  • passer la forward lookup zone en dynamic update (domain1.be → propriétés): Dynamic update → yes
  • créer la reverse lookup zone
    • ADI
    • network ID: 10.10.3
ipconfig /registerdns
  • passer la reverse lookup zone en dynamic update (domain1.be → propriétés): Dynamic update → yes
  • tester nslookup (IP et nom)

Dimitri installe son AD, il met qu'il rejoint un domaine existant: domain1.be Quand c'est fait, vérifier dans AD sites and Services qu'on a bien un connecteur. Synchroniser. Nous avons rencontré un problème: Carl avait mis de prendre en compte l'heure d'été et Dimitri pas → pas possible de synchroniser.

Securing [[Windows]] 2000 Computers
  • patcher suivant recommendations MS
  • augmenter la complexité des mots de passe dans l'AD
  • application de templates à haut niveau de sécurité
    • LSA modifié par l'AD → on peut plus se logguer comme administrateur local

Patching

Plusieurs techniques

  • patch = un correctif
    • corrige fonctionnalités
    • corrige sécurité
  • si problème = OS → analyse de code
    • dangereux: vite sortir le patch
    • pas critique: prend son temps
    • l'annonce du trou de sécurité a lieu quelques jours après la publication du patch
  • service pack = somme de patches
  • hotfix = patch fait pour un client
    • pas testé à fond (pas de garantie de bon fonctionnement)
    • diffusion publique
  • post-service pack: patches sortis après le service pack (toujours fonctionnel, jamais sécurité)
  • security rollout = ensemble des patches et hotfixes sortis après le service pack (fonctionnalité et sécurité)

Ligne du temps

  • t=0: release product
  • t=1: hotfix
  • t=2: patch
  • t=3: SP1: englobe hotfix (de t=1) et patch (de t=2)
  • t=4: hotfix + patch
  • t=5: hotfix + patch
  • t=6: si pas de SP prévu, on sort un security rollout qui reprend tout ce qui est sorti après le service pack, soit hotfix et patch de t=4 et t=5
  • t=7: hotfix + patch
  • t=8: hotfix + patch
  • t=9: SP2: reprend tout ce qui est sorti avant (depuis le release donc), soit de t=1 à t=8

security monitoring

  • actif: dès qu'il y a un patch qui sort (prévenu par newsgroup MS ou newsletter MS, sortis tous les mercredis), on l'applique
  • passif: toutes les semaines (ou tous les mois), on met à jour
    • si alerte critique: on déroge et on met à jour immédiatement

Tools

On n'utilise pas windows update parce que:

  • on ne lit pas, on ne fait pas attention
  • on ne connaît pas l'ordre
  • si un patch pose problème, on ne sait pas lequel
  • si un patch pose problème, on ne sait pas s'il y a moyen de le désinstaller

On utilise:

  • MBSA: Microsoft baseline security analyzer
    • outil graphique: comme hfnetchk (scanne pour patches) + autres failles (share administratifs en full control pour everyone, registry, etc.) = outil d'audit de sécurité
  • hfnetchk: en ligne de commande, uniquement pour les patches
    • scanne l'existant (services et soft installé), compare a DB sur le site MS

On fait le patching à la main (suivant publications MS et l'environnement dans lequel on se trouve), puis on vérifie avec le MBSA

En pratique
  • s'abonner au newsgroup MS: tous les mercredis, sortie des patches
  • lire les bulletins de sécurité
    • MS03 835593
      • MS Microsoft
      • 03 = l'année (2003)
      • 835593: le numero d'article dans le knowledge base de MS
    • les logiciels concernés
    • vulnérabilité: critique, faible incidence
    • détails techniques
    • work around: quand ne faut-il pas l'installer? (cas particuliers)
  • installer le patch

Exemple: on prend un DC avec Windows 2000 Server.

1. on télécharge (depuis une autre machine)un fichier XML qui compare l'existant avec la machine: msxml.msi

  2. installer msxml.msi (installation standard)
  3. vérifier qu'il existe: C:\program files\Microsoft Baseline Security Analyzer\mbsacli.exe
  4. scan de la machine comme avec hfnetchk:
    <code>"C:\program files\Microsoft Baseline Security Analyzer\mbsacli.exe" /hf</code>
    output: note MS03 998712 -> il ne sait pas si c'est hotfix ou patch: aller voir le knowledge base
    patch not found MS03 88751 -> lire le bulletin de sécurité, puis télécharger (choisir le bon OS et la bonne langue)
  5. télécharger tous les patches
  6. appliquer les patches dans l'ordre dans lequel ils sont listé par mbsacli.exe /hf
  7. on ne reboote pas entre les applications
  8. pour que tous les patches soient pris en compte pas l'OS, lancer qchain.exe qui va modifier la registry pour que tous les changements soient pris en compte:
    <code>qchain.exe</code>
  10. reboot
  11. <code>mbsacli.exe /hf</code>
    vérifier que le patching s'est bien passé
  12. interface graphique MBSA
    vérification de la //security checklist//
Exercice

Le faire pour ma machine…

D'abord désactiver Windows Update: control panel → automatic update → décocher la checkbox du haut → apply

C:\>"C:\program files\Microsoft Baseline Security Analyzer\mbsacli.exe" /hf
Microsoft Baseline Security Analyzer
Version 1.2.1 (1.2.4013.0)
(C) Copyright 2002-2004 Microsoft Corporation. All rights reserved.
HFNetChk developed for Microsoft Corporation by Shavlik Technologies, LLC.
(C) Copyright 2002-2004 Shavlik Technologies, LLC. www.shavlik.com


Please use the -v switch to view details for
Patch NOT Found, Warning and Note messages

Scanning DC11
Attempting to get CAB from http://go.microsoft.com/fwlink/?LinkId=18922
XML successfully loaded.

Done scanning DC11
----------------------------
DC11 (10.10.3.11)
----------------------------

        * WINDOWS 2000 SERVER SP4

        Note            MS02-064               327522
        Patch NOT Found MS03-023        823559
        Note                   MS03-030        819696
        Patch NOT Found MS03-034        824105
        Patch NOT Found MS03-041        823182
        Patch NOT Found MS03-042        826232
        Patch NOT Found MS03-043        828035
        Patch NOT Found MS03-044        825119
        Patch NOT Found MS03-049        828749
        Patch NOT Found MS04-011        835732
        Patch NOT Found MS04-012        828741
        Patch NOT Found MS04-014        837001
        Note                   MS04-016        839643
        Patch NOT Found MS04-019        842526
        Patch NOT Found MS04-020        841872
        Patch NOT Found MS04-022        841873
        Patch NOT Found MS04-023        840315
        Patch NOT Found MS04-024        839645
        Patch NOT Found MS04-031        841533
        Patch NOT Found MS04-032        840987
        Patch NOT Found MS04-036        883935
        Patch NOT Found MS04-037        841356
        Patch NOT Found MS04-041        885836
        Patch NOT Found MS04-043        873339
        Patch NOT Found MS04-044        885835
        Patch NOT Found MS05-001        890175
        Patch NOT Found MS05-003        871250
        Note                   MS05-009        887472
        Patch NOT Found MS05-010        885834
        Patch NOT Found MS05-011        885250
        Patch NOT Found MS05-012        873333
        Patch NOT Found MS05-013        891781
        Patch NOT Found MS05-015        888113
        Patch NOT Found MS05-016        893086
        Patch NOT Found MS05-018        890859
        Patch NOT Found MS05-019        893066

        * INTERNET INFORMATION SERVICES 5.0 SP4

        Patch NOT Found MS04-030        824151

        * INTERNET EXPLORER 5.01 SP4

        Patch NOT Found MS05-020        890923

        * WINDOWS MEDIA PLAYER 6.4 FOR WINDOWS 2000 SP4

        Information
        There are no security updates available for this product.


        * MDAC 2.5 SP3

        Patch NOT Found MS04-003        832483

        * MSXML 2.5 GOLD

        Information
        This product is no longer supported by Microsoft. The latest version
        of MSXML should be installed.


        * MSXML 4.0 SP2

        Information
        There are no security updates available for this product.

Telecharger

  • Note MS02-064 1)
    • il ne faut rien faire
  • Patch NOT Found MS03-023 2)
    • télécharger ~Windows2000-KB823559-x86-ENU.exe
  • Note MS03-030 3)
    • le SP4 est déjà installé (vérification: bureau → My Computer → clic droit → propriété → onglet General), donc c'est bon
  • Patch NOT Found MS03-034 4)
    • télécharger ~Windows2000-KB824105-x86-ENU.exe
  • Patch NOT Found MS03-041 5)
    • télécharger ~Windows2000-KB823182-x86-ENU.exe
  • Patch NOT Found MS03-042 6)
    • télécharger ~Windows2000-KB826232-x86-ENU.exe
  • Patch NOT Found MS03-043 7)
    • messenger pas utilisé
  • Patch NOT Found MS03-044 8)
  • Patch NOT Found MS03-049 9)
    • télécharger ~Windows2000-KB828749-x86-ENU.exe
  • Patch NOT Found MS04-011 10)
    • télécharger ~Windows2000-KB835732-x86-ENU.EXE
  • Patch NOT Found MS04-012 11)
    • télécharger ~Windows2000-KB828741-x86-ENU.EXE
  • Patch NOT Found MS04-014 12)
    • télécharger ~Windows2000-KB837001-x86-ENU.EXE
  • Note MS04-016 13)
    • For an attack to be successful, a system would need to be actively running a ~DirectPlay game → on n'applique pas
  • Patch NOT Found MS04-019 14)
    • télécharger ~Windows2000-KB842526-x86-ENU.EXE
  • Patch NOT Found MS04-020 15)
    • télécharger ~Windows2000-KB841872-x86-ENU.EXE
  • Patch NOT Found MS04-022 16)
    • télécharger ~Windows2000-KB841873-x86-ENU.EXE
  • Patch NOT Found MS04-023 17)
    • télécharger ~Windows2000-KB840315-x86-ENU.EXE
  • Patch NOT Found MS04-024 18)
    • télécharger ~Windows2000-KB839645-x86-ENU.EXE
  • Patch NOT Found MS04-031 19)
    • service net DDE pas utilisé: pas besoin de patcher
  • Patch NOT Found MS04-032 20)
    • télécharger ~Windows2000-KB840987-x86-ENU.EXE
  • Patch NOT Found MS04-036 21)
    • télécharger ~Windows2000-KB883935-x86-ENU.EXE
  • Patch NOT Found MS04-037 22)
    • télécharger ~Windows2000-KB841356-x86-ENU.EXE
  • Patch NOT Found MS04-041 23)
    • télécharger ~Windows2000-KB885836-x86-ENU.EXE
  • Patch NOT Found MS04-043 24)
    • télécharger ~Windows2000-KB873339-x86-ENU.EXE
  • Patch NOT Found MS04-044 25)
    • télécharger ~Windows2000-KB885835-x86-ENU.EXE
  • Patch NOT Found MS05-001 26)
    • télécharger ~Windows2000-KB890175-x86-ENU.EXE
  • Patch NOT Found MS05-003 27)
    • Vulnerability in the Indexing Service could allow remote code execution: le service ne tourne pas
  • Note MS05-009 28)
    • Messenger pas utilisé
  • Patch NOT Found MS05-010 29)
    • télécharger ~Windows2000-KB885834-x86-ENU.EXE
  • Patch NOT Found MS05-011 30)
    • télécharger ~Windows2000-KB885250-x86-ENU.EXE
  • Patch NOT Found MS05-012 31)
    • télécharger ~Windows2000-KB873333-x86-ENU.EXE
  • Patch NOT Found MS05-013 32)
    • télécharger ~Windows2000-KB891781-x86-ENU.EXE
  • Patch NOT Found MS05-015 33)
    • télécharger ~Windows2000-KB888113-x86-ENU.EXE
  • Patch NOT Found MS05-016 34)
    • télécharger ~Windows2000-KB893086-x86-ENU.EXE
  • Patch NOT Found MS05-018 35)
    • télécharger ~Windows2000-KB890859-x86-ENU.EXE
  • Patch NOT Found MS05-019 36)
    • télécharger ~Windows2000-KB893066-x86-ENU.EXE
  • Patch NOT Found MS04-030 37)
    • télécharger ~Windows2000-KB824151-x86-ENU.EXE
  • Patch NOT Found MS05-020 38)
    • MSIE 5.00 est installé: il n'est plus supporté → upgrade de MSIE vers 39)
  • Patch NOT Found MS04-003 40)
    • télécharger ~ENU_Q832483_MDAC_x86.EXE

Installer

  • installer MSIE 6.0 SP1
  • installer qchain
  • installer les patches dans l'ordre ci-dessus (ne pas rebooter)
  • exécuter qchain.exe
  • rebooter
  • vérifier que c'est bon en exécutant
"C:\program files\Microsoft Baseline Security Analyzer\mbsacli.exe" /hf
C:\Documents and Settings\Administrator>"C:\program files\Microsoft Baseline Sec
urity Analyzer\mbsacli.exe" /hf
Microsoft Baseline Security Analyzer
Version 1.2.1 (1.2.4013.0)
(C) Copyright 2002-2004 Microsoft Corporation. All rights reserved.
HFNetChk developed for Microsoft Corporation by Shavlik Technologies, LLC.
(C) Copyright 2002-2004 Shavlik Technologies, LLC. www.shavlik.com


Please use the -v switch to view details for
Patch NOT Found, Warning and Note messages

Scanning DC11
Attempting to get CAB from http://go.microsoft.com/fwlink/?LinkId=18922
XML successfully loaded.

Done scanning DC11
----------------------------
DC11 (10.10.3.11)
----------------------------

        * WINDOWS 2000 SERVER SP4

        Patch NOT Found MS02-050        329115
        Note            MS02-064        327522
        Note            MS03-030        819696
        Patch NOT Found MS03-043        828035
        Patch NOT Found MS03-044        825119
        Note            MS04-016        839643
        Patch NOT Found MS04-031        841533
        Patch NOT Found MS05-003        871250
        Note            MS05-009        887472
        Warning         MS05-016        893086

        * INTERNET INFORMATION SERVICES 5.0 SP4

        Information
        All necessary hotfixes have been applied.

        * INTERNET EXPLORER 6 SP1

        Note            MS04-028        833987
        Patch NOT Found MS05-020        890923

        * WINDOWS MEDIA PLAYER 6.4 FOR WINDOWS 2000 SP4

        Information
        There are no security updates available for this product.


        * MDAC 2.5 SP3

        Information
        All necessary hotfixes have been applied.

        * MSXML 3.0 SP5

        Information
        There are no security updates available for this product.


        * MSXML 4.0 SP2

        Information
        There are no security updates available for this product.

Il en resort qu'il faut encore faire:

  • Patch NOT Found MS02-050 329115
    • A regression may occur when you are installing Internet Explorer 6 Service Pack 1 (SP1) on computers that are running Windows 2000 Service Pack (SP4). This regression removes the update that is discussed in this bulletin and that is provided as part of Windows 2000 SP4. Apply the updated Windows 2000 SP4 security update that is mentioned later in this article to help protect your computer from this vulnerability.
    • Télécharger ~Windows2000-KB329115-x86-ENU.exe
  • Note MS04-028 43)
    • Télécharger ~IE6.0sp1-KB833989-x86-ENU.exe
  • Patch NOT Found MS05-020 44)
    • Télécharger ~IE6.0sp1-KB890923-Windows-2000-XP-x86-ENU.exe

Après on refait la commande avec -v à la fin pour avoir le détail du warning pour 893086:

        Warning         MS05-016        893086
        File version is greater than expected.
        [C:\WINNT\system32\shlwapi.dll, 6.0.2800.1584 > 5.0.3900.7032]

Réappliquer l'update, rebooter et c'est bon.

Problème, il marque toujours

        * INTERNET EXPLORER 6 SP1

        Note            MS04-028        833987

http://support.microsoft.com/default.aspx?scid=kb;en-us;306460:

#|

MS04-028 Windows XP (original release and SP1), Windows Server 2003 (original release), Internet Explorer 6.0 SP1 Not supported Note

Donc, MBSA ne peut pas vérifier si le patch a été appliqué. Je l'ai fait, donc c'est bon.

Ensuite, lancer MBSA: Start → Program → Microsoft Baseline Security Analyzer 1.2.1 Faire un scan de la machine et voir ce qu'il en dit.

29/04/05

Module 3

Security checklist

  • installer SP, security rollout et patches
  • partitions en NTFS
  • mots de passe 9 caractères avec caractères spéciaux, validité 42 jours, rappel des 6 derniers mots de passe
  • enlever les services inutilisés
  • protéger fichiers et répertoires (ACLs)
  • désactiver le compte guest
  • protéger la base de registres des accès anonymes:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\Winreg
  • > Administrator et backup operator: full control et c'est tout
  • accès restreint à la LSA
  • réactivation des comptes manuelle
  • configuration du compte administrateur
  • renommer Administrator → un nom pas simple
  • créer un compte Administrator dans le groupe guest
  • désactiver l'administrateur local
  • enlever les shares non nécessaires
  • installer anti-virus et mises à jour
  • s'inscrire aux notifications de sécurité MS

Securisation des mots de passe dans l'Active Directory

SYSKEY encrypte une 2e fois les mots de passe. Activé par défaut en 2000. A configurer.

password cracker: LC3: il compare les hashs (hash du password à trouver vs hash du password testé) Il travaille par groupe de 7 caractères.

Modeles de securite

Security Configuration Templates

Regarde la sécurité par défaut: Start → Program Files → Administrative Tools → Domain Controller Security Policy Account Policy → password policy

Attention: il faut avoir du NTFS natif (pas FAT et pas FAT convertie en NTFS)

Selon le rôle de la machine, il faut définir les critères de sécurité: exemple: pour un DC: sécurité maximum

On peut distribuer les templates de sécurité par GPO.

Il existe des templates fournis par MS. Pour les étudier, cf. le ressource kit (Group Policy Reference) http://www.microsoft.com/windows2000/techinfo/reskit/default.asp

Pour appliquer un template:

  • MMC: snap-in security templates
  • en ligne de commande:
    secedit

D'abord, créer son niveau de sécurité (celui à atteindre). Ensuite comparer avec l'existant:

  • MMC avec security configuration and analysis snap-in
    • clic droit → open database → choisir un nom → comparer avec un template qu'on sélectionne
    • clic droit → anaylze computer now
    • on voit la différence en l'actuel (Computer setting) et ce qui est proposé avec le template (Database) sélectionne
    • on peut appliquer uniquement tout le template (sauf ceux qu'on va décocher manuellement et ceux qui ne sont pas définis)): clic droit →
  • commande secedit

Exercice

Prendre le high security dc template et comparer les différences avec l'existant.

mmc

Console → Add / Remove Snap-in → button add… → Security Configuration and Analysis → OK Security configuration → clic droit → Open Database → donner un nom → choisir le template hisecdc.inf Security configuration → clic droit → Anaylze Computer Now → OK

Securiser l'acces aux ressources (module 5)

Acces aux ressources

Sur chaque DC, il y a une SAM (security account manager) qui est l'interface graphique pour accéder à la SAD (security account database) quand laquelle il y a

  • LSA local security authority: tout ce que tu peux faire en local sur la machine
  • comptes
  • group

Fenêtre de winlogon:

  • login
  • password
  • manière dont on s'authentifie (en local ou sur le domaine)

Tant que la fenêtre de winlogon est là, on ne peut pas lancer d'exécutable

Il y a 2 modes de fonctionnement:

  • user mode (non protégé: lancer des process, des services, etc.)
    • security sub-system
    • posix sub-system
    • ~OS/2
    • NTVDM WIN32
      • DOS
      • ~WoW (windows over windows → faire tourner du 16 bits sous du 32 bits)

Les sous-systèmes sont indépendants les uns des autres (isolés et protégés)

  • kernel mode (protégé: l'utilisateur n'y a pas accès directement)
    • ntexecutives: chaque application est redirigée vers un ntexecutive; ce ntexecutive demande les ressources au micro-kernel
      • security réference monitor (pour le security sub-system)
      • process manager
      • object manager
    • micro-kernel: donne accès aux ressources aux applications via les ntexecutives (pour un certain temps pour éviter les hangs)
    • hal: hardware abstraction layer: le hardware est considéré comme un ensemble
    • hardware

Quand on se loggue, c'est le security sub-system qui appelle le security reference monitor qui va interroger la SAD. Quand c'est vérifié, le security reference monitor dit OK au security sub-system qui va générer un jeton d'accès (access token) qui reprend:

  • SID user (security identifier = sid domaine + sid RID; tous les utilisateurs et les machines en ont un)
  • SID group
  • privilèges (vient des droits utilisateurs)

Exemple: workstation au niveau local

L'administrateur installe un logiciel Tous les fichiers et répertoires sous NTFS ont des ACLs (access control list). Pour le logiciel installé, les ACLs:

  • SID administrateur → Full Control

L'administrateur se déloggue.

Un utilisateur (user1) s'identifie → il reçoit un access token (avec son SID)

Il veut lancer le logiciel → le security descriptor compare le contenu de la liste des ACLs avec le jeton d'accès: ici, user1 n'a pas le droit d'exécuter le logiciel, donc il ne se lance pas.

Si on rajoute un utilisateur dans un groupe pour qu'il ait accès à une ressource, il faut qu'il se déloggue et se reloggue pour y avoir accès.

workstation au niveau domaine

Soit une workstation et un un DC avec l'AD et le KDC (key distributor center: TGS et TGT)).

User1 veut se logguer sur la workstation:

  • winlogon: entre login, password et domaine
  • le security sub-system interroge
  • le security reference monitor qui interroge
  • la SAD qui via un canal sécurisé va faire un netlogon: elle envoie les informations
  • au DC qui vérifie le login, password, accès, GPO, etc. si c'est validé
  • le KDC va envoyer un TGT à la workstation
  • on repasse dans l'autre sens: SAD → security reference monitor → security sub-system
  • le security sub-system génère l'access token
  • les accès sont gérés par le security descriptor qui compare les ACLs avec le SID du user1

Rappel

  • il y a possibilité de se logguer sur plusieurs domaines s'il y a des trusts
  • il n'est pas possible de se logguer en local sur un DC
  • on ne peut se logguer qu'en local sur un member server

Note: si dans les ACLs on voit un SID au lieu d'un nom d'utilisateur, c'est un problème de migration: l'utilisateur n'a pas été migré dans l'AD (ou dans la SAM)

Sharing

  • partage de ressources: imprimante, répertoire, fichier via dossier, etc. (pas restriction d'accès)
  • permissions: standards 3 x 2 (allow et deny)
    • read: rx (r=read; x=execute)
    • change: rxwd (w=write; d=delete)
    • full control: rwxdop (o=ownership; p=modification des permissions)
  • application sharing: à travers le réseau
    • un réseau avec une machine et 2 utilisateurs
      • user1 fait un share data: user2 ne peut pas y accéder

user1: full control

      user2: deny full control
    * s'il est en local, user2 y aura accès (share ne s'applique pas)
    * s'il est en réseau, il n'y aura pas accès
  * un répertoire Data (share: user1 = FC) avec des sous-répertoires test1 (share: user1 = read), test2 (share: user1 = change), test3 (share: user1: FC deny)
    * dans son Explorer, il va voir 4 shares non imbriqués:
      * s'il clique sur test1, il pourra que lire
      * s'il clique sur test2, il pourra que changer
      * s'il clique sur test3, il aura full control
      * s'il clique sur data, il verra test1, test2, test3 en local: il aura FC sur les 3
    *> partager le répertoire au niveau le plus bas de la hiérarchie
  * est-ce que dans le cas ci-dessus le user1 peut effacer le répertoire Data?
    * non, on ne peut pas effacer une ressource partagée sur le réseau
    * par contre, s'il double clique sur Data, il pourra effacer les sous-répertoires test1, test2 et test3 (qui sont vus en local)
  * un répertoire data contient:
    * HR (avec un fichier fiche1.txt)
    * sales (avec un fichier test1.txt et test2.txt)
    * IT (contenant un fichier it1.txt)
    * le groupe dlgcom doit pouvoir
      * modifier tout HR
      * modifier salles sauf test2.txt (auquel il ne faut pas qu'il ait accès)
      * read IT
    * le groupe dlgsales
      * modifier HR
      * modifier sales (sauf test2.txt: lire)
      * IT: pas d'accès
    * solution isoler le fichier test2.txt dans un répertoire dans Data
  * un répertoire Data est partagé:
    * everyone: full control
    * dlgcom: change
    * dlgit: read
    * user1 (qui appartient à tous les groupes): change
    * quelle est la permission effective de user1? Full Control: la somme des permissions sharing sauf deny qui prime

AGDLP: Account dans Global group dans Domain Local group sur lequel on applique des Permissions

#|

user Data 1 Data 2 Data 3
user1
user2
user3
user4
user5
  • faire un tableau à 2 entrées pour chaque utilisateur et chaque répertoire: colonnes: GG lignes: DLG + le user
  • mettre une croix pour chaque groupe où se trouve le user
  • regarder pour chaque DLG quels droits s'appliquent sur le répertoire + pareil pour le user
  • faire la somme (N.B: deny prime)

NTFS

#|

Sharing NTFS
répertoire répertoire et fichier
pas d'héritage héritage

read, change, full control (allow / deny) | permissions moléculaires: standard (6) permissions atomiques: R W X D O P … (13) ||

a travers le réseau en local et à travers le sharing
ouvrir des portes d'accès brider
éviter le full control (attention aux exceptions) éviter le full control (attention aux exceptions)

Les permissions moléculaires sont des sommes de permissions atomiques. Dans la mesure du possible, travailler avec des permissions moléculaires standards.

L'héritage est actif par défaut: les permissions se propagent sur les sous-répertoires, les répertoires et les fichiers.

Si à la base de l'arborescence, on ajoute la permission modify pour l'utilisateur user 1, les fichiers et les répertoires sous cette arborescence vont aussi avoir modify pour l'utilisateur user 1.

L'héritage ne permet pas de modifier les permissions → checkboxes en grisé Pour modifier: décocher la checkbox de l'héritage:

  • soit copy: il garde les permissions de l'héritage, et on peut changer (et si changement en haut, ne s'applique plus)
  • soit remove: toutes les permissions sont effacées

On peut changer comme s'applique (se propage) l'héritage: Advanced Folder NTFS Permissions → bouton View / Edit → onglet Object → Apply onto

  • répertoire F1 (user1 = modify) contenant fichier file1.txt (read + execute)
    • est-ce que user1 peut effacer le répertoire F1? non: il essaie d'abord d'effacer le contenu: il peut pas, donc il n'efface pas le répertoire
  • répertoire F1 (user1 = full control) contenant fichier file1.txt (read + execute)
    • est-ce que user1 peut effacer file1.txt? oui: parce que full control inclut la permission atomique 9 (delete subfolders and files)
  • répertoire F1 (user1 = full control) contenant fichier file1.txt (deny full control)
    • est-ce que user1 peut effacer le fichier file1.txt? en ligne de commande: oui; dans Explorer: non
  • 2 répertoires:
    • répertoire F1 (everyone = read) contenant fichier file1.txt (everyone = read hérité donc en grisé)
    • répertoire F2 (everyone = FC) contenant fichier file1.txt (everyone = FC hérité donc en grisé)
    • je fais un move de file2.txt dans F1
      • que deviennent les permissions héritées?
      • elles sont conservées si F1 et F2 sont sur la même partition (mais il n'y a plus de lien entre F2 et file2.txt)
      • file2.txt hérite des permissions de F1 si F1 et F2 ne sont pas sur la même partition

→ Ne jamais faire de move, faire un copy + delete

Ne pas utiliser Full Control dans la mesure du possible (à la limite avec des authenticated users).

Partage

#|

Sharing NTFS

everyone = full control |user = modify everyone = write ||

somme sharing → Full control somme NTFS → modify

Avec les 2: c'est le plus restrictif qui gagne.

Encryption File System (EFS)

Quand on veut encrypter un fichier avec Microsoft, on l'encrypte avec une clef symétrique Encrypté une fois avec un DDF (data decryption field) avec la clef publique de l'utilisateur. Si l'utilisateur meurt, on a perdu les données. En fait, on va encrypter une 2e fois avec le DRF (data recovery field) pour le recovery agent (qui est l'administrateur du domaine ou l'administrateur local en workgroup). Clefs en local sauf si PKI installé sur le domaine. Si décrypte sur le serveur, ça passe en clair sur le réseau.

Si on copie un fichier encrypté en NTFS sur une partition FAT (ex: disquette): il est décrypté!

Audit des acces aux ressources

  • regarder les failures
  • auditer l'accès aux ressources et aux fichiers pas l'AD (trop de fichiers)
  • choisir ce qu'il faut logguer (trop: on voit pas l'information pertinente)

A voir: modules 2 + 4 + certificats

02/05/05

Module 4: Securing User Authentication

Authentification NTLM

NT Lan Manager Existe toujours en 2000 pour les clients NT. En 2000, on va utiliser Kerberos. On garde NTLM au cas où on n'arrive pas à s'authentifier en Kerberos. Moins sécure que Kerberos. Winlogon = local: SAD locale interrogation de la SAM + SAD Netlogon = remote: SAD du DC: tunnel vers SAM + SAD du DC On appelle ça l'authentication package. Quand on accède à un share, c'est pareil: on envoie login et password sur le réseau → plus faible point de vue sécurité. Taille d'un mot de passe: 0 à 14 (2 fois hash DES 128 bits de 7 caractères). Depuis le SP4, NTLM v2, HMAC-MD5 128 bits, rarement fait le rollout (disponible pour Windows 9x avec le client AD). Pour activer le NTML v2 et refuser les plus vieux systèmes: DC Security Policy → Security Settings → Local Policies → Security Options → LAN Manager Authentication Level

Kerberos V5 for Authentication

Utilisé par défaut par Windows 2000. cf. Walibi: on paie à l'entrée, on reçoit un ticket / bracelet. On contrôle juste le ticket pour accéder aux attractions. Le ticket a une validité d'une journée.

Pareil avec Kerberos. Au logon, on fait une demande de ticket. Le KDC (Kerberos Distribution Center) donne le ticket (gardé en cache, valable toute la session). Lorsqu'il faut de nouveau montrer patte blanche, on montre le ticket plutôt que de renvoyer logon / password: Le KDC donne un ticket valable 5 minutes pour aller sur un member server. Ensuite la session peut être établie. En cas de désynchronisation entre KDC et la ressource à laquelle on veut accéder, on n'a plus accès à la ressource. Donc, le PDC emulator s'assure de la synchronisation entre le KDC et les member servers. Domaine = ensemble de machines qui partagent la même sécurité (point de vue connexion d'objets) Royaume Kerberos (inclut les member servers) = ensemble de machines qui partagent la même sécurité (point de vue authentification)

Tous les DC sont des KDC.

Informations en clair:

  • version du format du ticket
  • nom du domaine délivrant le ticket
  • nom du serveur pour lequel le ticket est valide

Informations encryptées:

  • clef de session partagée entre le client et le serveur
  • nom du client
  • nom du domaine du client
  • heure de la demande et heure du login
  • validité du ticket (de … à …)

Logon interdomaine

Un user d'un domaine veut s'authentifier dans un autre domaine (dans la même forêt qui a un trust kerberos). Chaque domaine a une interdomain key avec son parent. Il faut donc passer par les parents (remonter jusqu'au root et redescendre jusqu'au domaine sur lequel l'utilisateur veut s'identifier).

Smart card

Ajoute “quelque chose que j'ai” à “quelque chose que je sais”.

Clef privée de la smartcard reste sur la smartcard (pas sur machine). Clef publique sur serveur certificat.

Plus facile de synchroniser le mot de passe smartcard et logon Windows.

  • simple login
  • login avec CA (il faut un serveur en plus)

Account policies in [[Windows]] 2000

A changer pour tout le domaine: Start → Programs → Administrative tools → Domain security policy 3 elements:

  • password
  • account lockout
  • kerberos policy

Auditing authentication

Que logguer?

  • les logons sur le DC
  • les failures sur le domaine

Exercice

Sur les 2 DCs, activer l'audit sur le DC uniquement en success et failure: Start → Program → Administrative Tools → Domain Controller Security Policy → Security Settings → Local Policies → Audit Policy → Audit account logon events → tout cocher ou Audit Logon events → tout cocher

secedit /refreshpolicy machine_policy /enforce
  • rater son logon
  • s'identifier correctement
  • regarder dans event viewer

On remarque que les erreurs de logon de Dimitri (sur DC12 donc) sont aussi dans le journal de DC11. Explication?

Module 7: Distributed Security Services

Rappel: Domain Security Policies > DC Security Policies > Local Security Policies

  • Single sign on
    • utilise le login et passwd qu'on a rentré en s'identifiant pour lancer la session pour s'authentifier sur d'autres services
    • pas possible sans Kerberos ou NTLM
  • Kerberos
  • utilisation du jeton d'accès de sécurité pour accéder aux ressources de manière sécurisée
    • token généré au logon et comparé aux ACLs de la ressource à laquelle on veut accéder
    • attention: pas renouvelé, donc si droits de l'utilisateurs diminués (admin → user), il doit se relogguer pour que ça prenne effet
  • administration centralisée

GPO

Peut s'appliquer sur une Organisational Unit (OU). Il existe des templates: securité, administratif. On peut lancer des scripts au logon et au logoff Redirection de desktop: cf. administration Windows 2000

Deux parties à une GPO:

  • group policy container: l'objet stocké dans l'AD
  • group policy template: SYSVOL: la partie physique

Si on a un domaine sur 2 sites: réplication de l'AD

  • en intra-site: toutes les 5 minutes
  • en inter-site: on fait des site links: choix entre 15 minutes et 7 jours

On peut séparer les réplication du SYSVOL (exemple: toutes les 2 heures).

Problème: group policy container synchronisé, mais group policy template pas synchronisée. On a un objet incomplet, ce qui peut amener des incohérences.

Donc, attention avec la réplication du SYSVOL en stand alone.

Group policy inheritance: Site > Domain > OUs

S'il y a conflit:

  • fils pas configuré, père configuré → père appliqué
  • fils configuré, père pas configuré → fils appliqué
  • les 2 configurés → fils appliqué

Exercice

  • OU1 (user1, user2, computer1, computer2)
    • OU2 (user3, user4, computer3, computer4)
      • OU3 (user5, user6, computer5, computer6)

Où appliquer les GPO suivantes? GPO1: user1, user2, user3 GPO2: user2, user4, user6 GPO3: computer1, computer4, computer5 GPO4: computer2, computer3, computer6

Tentative de solution: créer une GPO sur OU1: problème: u4, u5 et u6 en bénéficient aussi. On pourrait bloquer l'inheritance sur OU3, mais toujours problème avec u4.

Solution: On peut définir le champ d'application dans l'OU: On crée 4 global groups: GG1: user1, user2, user3 GG2: user2, user4, user6 GG3: computer1, computer4, computer5 GG4: computer2, computer3, computer6

On met les 4 GPO dans OU1 et on spécifie que GPO1 s'applique sur GG1 GPO2 s'applique sur GG2 GPO3 s'applique sur GG3 GPO4 s'applique sur GG4

  • OU1 (pc1)
    • OU2 (gpo1: user et computer)
      • OU3 (user1)

Question: est-ce que lorsque user1 se loggue sur pc1, gpo1 s'applique? Réponse: uniquement la partie utilisateur de gpo1, pas la partie ordinateur.

Module 8: Network Security

Public Key Infrastructure (PKI)

Composants:

  • authorité de certification
  • certificat digital
  • point de publication des certificats (via l'AD)
  • outils de gestion de clefs et certificats
  • certificate templates: efs, server web
  • certificate authorities: installer un CA de Windows 2000

Il y a 4 CAs différents:

  • Enterprise Root CA (dans l'AD)
  • Standalone Root CA (pas dans l'AD)
  • Enterprise Subordinate CA (dans l'AD)
  • Standalone Subordinate CA (pas dans l'AD)

Il faut:

  • l'AD
  • IIS
  • certificate services

On ne peut pas renommer la machine ni la migrer de domaine tant que le service tourne.

Networks Communication Security

Transport Layer Security: couche 5 du modèle OSI. Il est indépendant du protocole d'application. Utilisé avec SMB et SSL (HTTPS, LDAP, IMAPS, POP3) Sécurité au niveau applicatif (on crée un canal de sécurisation).

IP SEC

IP-layer security: au niveau IP → transparent pour les applications. Couche 3 du modèle OSI.

Mode AH: On rajoute un header d'authentification (AH authentication header) et on le signe, ce qui garantit l'authenticité et l'intégrité des données → pas d'IP spoofing Les données ne sont pas encryptées.

Mode ESP: Les données sont encryptées.

Problème: quand il y a du natting.

Configuration: Control Panel → Network and Dial-up Connexions → Local Area Connection → clic droit → propriétés → Internet protocol → Properties → advanced → onglet Options → IP Security → Properties

voir aussi 45)

Lectures

  • 46), 08/06/2505
41)
http://support.microsoft.com/default.aspx?scid=kb;en-us;296861 How to install multiple Windows updates or hotfixes with only one reboot
45)
http://www.laboratoire-microsoft.org/articles/network/ipsec/ Présentation d'IPSEC dans un environnement Windows 2000
46)
http://www.eweek.com/article2/0,1759,1825805,00.asp Microsoft's Security Response Center: How Little Patches Are Made
formationsecurite/securitewindows.txt · Last modified: 2013/01/30 17:52 (external edit)