Introduction à la sécurité Alors tout d'abord, le premier point par lequel il me semble qu'il est indispensable de passer est la sécurité de son propre système avant la mise en place de firewall ou autre antivirus etc... Ce n'est pas dans mon habitude mais je vais commencer par la sécurité primaire sur les systèmes NT, c'est à dire la vérification, le contrôle, et la désactivation des services de tout les services, vous pourrez évidemment laisser actif les services dont vous avez l'utilisation. La première chose serait de savoir ou se trouve Ms-dos pour faciliter la lecture du tuto, donc : sur tout les windows vous allez dans démarrer > executer > command.com > ce qui va ouvrir une petite fenêtre noire autrement appelé dos ou ms-dos. Une la premiètre commande va être netstat -an (version 2000) et netstat -ano pour Xp C:\WINDOWS>netstat -ano Active Connections Proto Local Address Foreign Address State PID TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 884 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 976 TCP 0.0.0.0:5000 0.0.0.0:0 LISTENING 1160 TCP 192.70.106.143:139 0.0.0.0:0 LISTENING 4 UDP 0.0.0.0:135 *:* 884 UDP 0.0.0.0:445 *:* 4 UDP 0.0.0.0:500 *:* 704 UDP 0.0.0.0:1026 *:* 1112 UDP 0.0.0.0:1027 *:* 976 UDP 127.0.0.1:123 *:* 976 UDP 127.0.0.1:1900 *:* 1160 UDP 192.168.106.143:123 *:* 976 UDP 192.168.106.143:137 *:* 4 UDP 192.168.106.143:138 *:* 4 UDP 192.168.106.143:1900 *:* 1160 Oui on est d'accord ça fait beaucoup de service en écoute pour rien, autrement dit joingnable de l'extérieur si un firewall digne de ce nom n'est pas mis en place, et même pourquoi laisser tourner des services dont on ne sert pas ? La commande netstat ne liste pas que les sockets TCP UDP je ne me pencherais pas sur cette explication. (voir google pour plus de documentation) (note pour les personnes alergiques aux lignes de commande on peut taper services.msc ce qui ouvrira la fenêtre de gestion de services avec leurs définitions.) Les premiers services que nous allons desactiver sont les suivants sur (windows xp) * IPsec services (PolicyAgent) * SSDP Discovery Service (SSDPSRV) * Windows Time (W32Time) Il suffit de procéder comme ceci : C:\WINDOWS>net stop policyagent The IPSEC Services service is stopping. The IPSEC Services service was stopped successfully. C:\>WINDOWS>net stop ssdpsrv The SSDP Discovery Service service is stopping. The SSDP Discovery Service service was stopped successfully. C:\>WINDOWS>net stop w32time The Windows Time service is stopping. The Windows Time service was stopped successfully. Une petite vérification avec netstat pour vérifier que cela s'est bien passé : C:\WINDOWS>netstat -ano Active Connections Proto Local Address Foreign Address State PID TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 884 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 976 TCP 192.168.106.143:139 0.0.0.0:0 LISTENING 4 UDP 0.0.0.0:135 *:* 884 UDP 0.0.0.0:445 *:* 4 UDP 0.0.0.0:1026 *:* 1112 UDP 0.0.0.0:1027 *:* 976 UDP 192.168.106.143:137 *:* 4 UDP 192.168.106.143:138 *:* 4 Tout d'abord comme vous vous en doutez j'ai lu le contenu du site j'espère que l'auteur de l'article sur le netbios ne m'en voudra pas mais je vais y apporter un petit correctif. En fait netbios est un protocole à part entière très utilisé par microsoft certes, mais inventé par IBM ,quand même c'était à souligner pour plus d'information sur le netbios vous pouvez consulter ce site ou c'est il me semble suffisament bien expliqué : (http://ollivier.fred.free.fr/samba/slides/sld.php3?cours=presentationsamba&page=10) Dans les propriétés avancées TCP/IP de chaque interface réseaux, dans l'onglet WINS, se trouve le paramétrage de NetBIOS sur TCP/IP. A cet endroit, il faut choisir Désactiver NetBIOS avec TCP/IP. Ceci permet alors de fermer les écoutes sur les ports UDP 137 et 138 et sur le port TCP 139. Le service lmhost qui sert à la résolution des noms de Netbios peut donc etre stoppé : C:\WINDOWS>net stop lmhosts The TCP/IP NetBIOS Helper service was stopped successfully. C:\WINDOWS>netstat -ano Active Connections Proto Local Address Foreign Address State PID TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 884 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 976 UDP 0.0.0.0:135 *:* 884 UDP 0.0.0.0:445 *:* 4 UDP 0.0.0.0:1026 *:* 1112 UDP 0.0.0.0:1027 *:* 976 Nous allons maintenant arrêter le protocole CIFS qui était, avant windows 2000 ce protocole était transporté avec dans Netbios, mais maintenant il peut directement utilisé TCP/IP le port 445 en est un exemple : C:\WINDOWS>sc config netbt start= disabled A voir avec la clef de registre suivante au cas ou : Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\ Value: Start Type: DWORD value (REG_DWORD) Content: 4 qui ne pas etre sur start si vous ne voulez plus qu'il démarre forcément enfin la première méthode marche :) C:\WINDOWS>netstat -ano Active Connections Proto Local Address Foreign Address State PID TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 884 TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 976 UDP 0.0.0.0:135 *:* 884 UDP 0.0.0.0:1026 *:* 1112 UDP 0.0.0.0:1027 *:* 976 Une chose importante aussi les services RPC qui par défaut se met en écoute sur tout les services : clef : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcSs\ Valeur : ListenOnInternet Type: REG_SZ Contenu : "Y" ou "N" Le port TCP 135 reste ouvert car il est utilisé pour recevoir les requêtes d'activation à distance d'objets COM. Il existe un réglage global dans la base de registre, permettant de désactiver DCOM : Clef: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole Valeur : EnableDCOM Type: REG_SZ Contenu : "Y" (pour activer) ou "N" (pour désactiver) Cette valeur de la base de registre correspond au paramétrage 'Enable Distributed COM on this computer' dans l'outil dcomcnfg : C:\WINDOWS>dcomcnfg Il est possible de désactiver le mécanisme de cache de socket utilisé par le service dnscache de Windows XP, en ajoutant une valeur dans la base de registre sous la clef service : Clef : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters\ Valeur : MaxCachedSockets Type: REG_DWORD Contenu : 0 Avec ce paramamétrage, le service dnscache de Windows XP se comportera comme sous Windows 2000, c'est à dire que des sockets UDP différentes seront utilisées pour chaque requêtes DNS. Conclusion Les services à désactiver sont les suivants : Windows 2000 : - IIS 5 : iisadmin, w3svc, smtpsvc - Autres : messenger, msdtc, policyagent, schedule Windows XP : - messenger, policyagent, schedule, ssdpsrv, w32time En fonction des versions de windows et des outils qui peuvent être installés les services peuvent être plus ou moins nombreux, l'utilisateur a le libre choix pour trouver le compromis qui le statisfera. Ce tuto est sûrement loin d'être complet, si des personnes ont trouvé des erreurs ou qu'ils pensent qu'il manque quelque chose merci d'en faire part à notre admin préféré. Voilà je vous laisse dans l'attente d'un prochain tuto, qui sera, je vous le donne en mille sur la sécurité interne des kernels linux (le 2.6 pour être préçit), ça sera suivit d'une approche générale de la sécurité, et une révision des attaques classiques. Tuto rédigé par Anonyme. le 13/11/2006.