Serveur Internet indisponible en raison d'attaques SYN malveillantes

Traductions disponibles Traductions disponibles
Numéro d'article: 142641 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Symptômes

Sur un ordinateur qui exécute le protocole TCP/IP et qui est connecté à Internet, certains ou tous les services réseau sont rendues indisponibles et messages d'erreur semblable à celui-ci s'affichent à l'écran de client réseau :
La connexion a été réinitialisée par l'ordinateur hôte distant.
Ce symptôme de tous les services réseau rendue indisponible peut également se produire sur un ordinateur exécutant un système d'exploitation autre que Windows NT, par exemple, UNIX.

Cause

Ce problème se produit lorsque l'ordinateur est devenu la cible d'une attaque malveillante appelée TCP/IP «Saturation SYN» ou «SYN Attacks».

Les utilisateurs malveillants peuvent cibler un ordinateur entier ou un service TCP spécifique tel que les services web. L'attaque se concentre sur le protocole TCP utilisé par tous les ordinateurs sur Internet et n'est pas spécifique au système d'exploitation Windows NT.

Fonctionnement de la saturation SYN

Saturation SYN fonctionne comme suit :
  • Une demande de connexion TCP (SYN) est envoyée à l'ordinateur cible. L'adresse IP source dans le paquet est «usurpée» ou remplacé avec une adresse qui n'est pas en cours d'utilisation sur Internet, ou qui appartient à un autre ordinateur. Un attaquant envoie la plupart de ces SYNs TCP à immobiliser les ressources autant que possible sur l'ordinateur cible.
  • Lorsque vous recevez la demande de connexion, l'ordinateur cible alloue des ressources pour gérer et suivre la nouvelle connexion, puis répond avec un «SYN-ACK». Dans ce cas, la réponse est envoyée à l'adresse IP de «usurpée» inexistante.
  • Aucune réponse n'est reçue pour le SYN-ACK. A configuré par défaut Windows NT 3.5 x ou 4.0 ordinateur retransmet le 5 SYN-ACK heures, en doublant la valeur du délai d'attente après chaque retransmission. La valeur du délai d'attente initiale est de trois secondes, afin que les nouvelles tentatives sont effectuées à 3, 6, 12, 24 et 48 secondes. Après la dernière retransmission, 96 secondes sont autorisés à s'écouler avant que l'ordinateur abandonne sur recevoir de réponse et libère les ressources qui ont été définies côté antérieures pour la connexion. Le temps total écoulé que les ressources sont en cours d'utilisation est 189 secondes.

Comment vérifier que votre ordinateur est sous une attaque SYN

Si vous pensez que votre ordinateur est la cible d'une attaque SYN, vous pouvez taper la commande suivante à l'invite de commande pour afficher les connexions dans l'état «SYN_RECEIVED» :
netstat-n-p tcp
Cette commande peut provoquer le texte suivant s'affiche sur votre écran :
Connexions actives
      Proto  Local Address         Foreign Address       State
      TCP    127.0.0.1:1030        127.0.0.1:1032        ESTABLISHED
      TCP    127.0.0.1:1032        127.0.0.1:1030        ESTABLISHED
      TCP    10.57.8.190:21        10.57.14.154:1256     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1257     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1258     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1259     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1260     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1261     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1262     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1263     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1264     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1265     SYN_RECEIVED
      TCP    10.57.8.190:21        10.57.14.154:1266     SYN_RECEIVED
      TCP    10.57.8.190:4801      10.57.14.221:139      TIME_WAIT
				
Si un grand nombre de connexions se trouvent dans l'état SYN_RECEIVED, il est possible que le système est attaqué. Un analyseur réseau peut être utilisé pour localiser le problème plus et il peut être nécessaire de contacter votre fournisseur de services Internet pour obtenir une assistance lors de la source de trace.

L'effet de bloquer les ressources de connexion varie en fonction de la pile TCP/IP et les applications à l'écoute sur le port TCP. Pour la plupart des piles, il existe une limite du nombre de connexions qui peuvent être dans l'état (SYN_RECEIVED) semi-ouvertes. Une fois la limite est atteinte pour un port TCP donné, l'ordinateur cible répond par une réinitialisation à tous les autres demandes de connexion jusqu'à ce que les ressources sont libérées.

Résolution

Obtenir la mise à jour suivante pour Windows NT 3.51 ou le dernier Service Pack pour Windows NT 4.0

Microsoft s'engage à fournir la meilleure protection possible contre ces attaques à partir au sein du système d'exploitation Windows NT et a apporté un certain nombre de modifications à son TCP/IP composants disponibles aux clients en réponse à cette menace.

Cette clé globale a été conçue pour vous protéger contre les attaques et définit les clés mentionnées plus loin dans l'article correspondant aux valeurs connues efficaces. Cette clé évite l'estimation d'administrateur sur les valeurs offrira la protection de la plupart des. Il est fortement recommandé d'utiliser les touches globales suivantes :

SynAttackProtect
Clé : Tcpip\Parameters
Type de valeur : REG_DWORD
Plage valide: 0, 1, 2
0 (aucune protection synattack)
1 (réduit les tentatives de retransmission et retardées création RCE (entrée du cache d'itinéraire) si les paramètres de TcpMaxHalfOpen et TcpMaxHalfOpenRetried sont satisfaites.)
2 (de 1 qu'une indication différée à Winsock est effectuée.)

Remarque : lorsque le système trouve lui-même attaqué les options suivantes sur un socket peut ne plus être activé : sScalable fenêtres (RFC 1323) et par carte configuré les paramètres TCP (RTT initiale, taille de la fenêtre). Cela est dû au fait que lorsque fonctionne de la protection de l'entrée du cache d'itinéraire n'est pas obligatoire avant le SYN-ACK est envoyé et les options de Winsock ne sont pas disponibles à ce stade de la connexion.

Par défaut: 0 (false)
Recommandation: 2
Description : Synattack protection implique ce qui réduit la quantité de retransmissions pour le SYN-ACKS, ce qui réduit le temps pour laquelle des ressources reste alloué. L'allocation de ressources d'entrée de cache itinéraire est retardée jusqu'à ce qu'une connexion est établie. Si synattackprotect = 2, alors la connexion indication pour AFD est retardée jusqu'à ce que la négociation à trois voies est achevée. Notez également que les actions effectuées par le mécanisme de protection se produisent uniquement si les paramètres de TcpMaxHalfOpen et TcpMaxHalfOpenRetried sont dépassées.

Remarque : les clés suivantes doivent être modifiées que si la clé globale ci-dessus s'est avérée inefficace ou sont en cours atteint les limites de ressource spécifique.

Les modifications sont répertoriées ici :
*******************************************************************
*  1. Tcpip.sys times out half-open connections faster            *
*******************************************************************
				
une nouvelle version de Tcpip.sys a été produite qui permet le contrôle le nombre de fois où une réponse à une connexion TCP demande (SYN-ACK) va être retransmis. Contrôle est géré par l'intermédiaire d'un nouveau paramètre de Registre :
  HKEY_LOCAL_MACHINE
  \SYSTEM
   \CurrentControlSet
    \Services
     \Tcpip
      \Parameters
       \TcpMaxConnectResponseRetransmissions
           Value Type: REG_DWORD
           Valid Range: 0-0xFFFFFFFF
           Default: 2
				
sa valeur par défaut pour ce paramètre est maintenant 3. Le tableau suivant présente le comportement de Windows NT 4.0 TCP/IP pour différentes valeurs de ce paramètre :
Value  Retransmission Times  Elapsed Time  Comments
3      3, 6, and 12 seconds  45 seconds    Cleanup 24 secs after last retx
2      3, and 6 seconds      21 seconds    Cleanup 12 secs after last retx
1      3 seconds             9  seconds    Cleanup 6  secs after last retx
				
cette modification de paramètre l'heure par défaut qu'il prend pour nettoyer une connexion TCP semi-ouvertes de 189 secondes à 45 secondes et fournit un contrôle plus granulaire à l'administrateur. Un site est attaqué importante peut définir la valeur aussi faible que "1". Une valeur de «0» est également valide ; cependant si ce paramètre est défini sur 0, SYN-ACK ne pas être retransmis du tout et expire 3 secondes. Avec la valeur de ce faible, les tentatives de connexion légitime à partir de clients distants peuvent échouer.
*******************************************************************
*  2. NetBT has a Higher, Configurable Backlog                    *
*******************************************************************
				
NetBT (NetBIOS sur TCP/IP) utilise le port TCP 139 et est utilisé par les services de réseau Microsoft telles que le partage de fichiers et d'imprimantes. Version 3.51 et 4.0 NetBT a un «retard» de connexion dans les blocs disponibles qui est deux plus un numéro incrémentiel selon les clients NetBT (comme le redirecteur, serveur et d'autres applications NetBIOS sont en cours d'exécution). Sur un serveur standard, ce numéro sera 7-11. Une nouvelle version de NetBT a été produite qui alloue automatiquement plus de blocs de connexion que nécessaire, d'une manière configurable.

Lors d'un événement de connexion, il vérifie pour voir si le nombre de blocs libres est inférieur à 2 et dans l'affirmative, ajoute un nombre de blocs «incrémenter», où "incrémenter» est configurable dans le Registre comme indiqué ici :
  HKEY_LOCAL_MACHINE
  \SYSTEM
   \CurrentControlSet
    \Services
     \NetBt
      \Parameters
       \BacklogIncrement
           Value Type: REG_DWORD
           Valid Range: 1-0x14  (1-20 decimal)
           Default: 3
				
chaque bloc de connexion consomme 78 octets de mémoire. Le nombre total de blocs de connexions qui peuvent être alloués par NetBT est également Registre configurable :
  HKEY_LOCAL_MACHINE
  \SYSTEM
   \CurrentControlSet
    \Services
     \NetBt
      \Parameters
       \MaxConnBackLog
           Value Type: REG_DWORD
           Valid Range: 1-0x9c40 (1-40,000 decimal)
           Default: 1000
				
MaxConnBackLog par défaut est de 1000, mais elle peut être aussi élevée que 40 000. Blocs de connexion sont «nettoyés» ou recyclées, lorsque le SYN-ACK horloge de retransmission expire et TCP échoue la tentative de connexion.
*******************************************************************
*  3. Afd.sys has been modified to withstand large numbers of     *
*     "half-open" connections efficiently                         *
*******************************************************************
				
Applications Windows Sockets telles que les serveurs ftp et serveurs web ont les tentatives de connexion traitées par le paramètre Afd.sys. Afd.sys a été modifié pour la prise en charge d'un grand nombre de connexions dans l'état "semi-ouvertes" sans refuser l'accès aux clients légitimes. Pour cela, vous devez autoriser l'administrateur de configurer un backlog dynamique.

La nouvelle version de Afd.sys prend en charge quatre nouveaux paramètres de Registre peuvent être utilisés pour contrôler le comportement du backlog dynamique.

EnableDynamicBacklog est un paramètre global pour activer ou désactiver le backlog dynamique. Sa valeur par défaut est 0 (désactivé), et ce paramètre ne fournit aucune modification à partir de versions existantes. La valeur 1 Active la nouvelle fonctionnalité de backlog dynamique.
  HKEY_LOCAL_MACHINE
  \SYSTEM
   \CurrentControlSet
    \Services
     \AFD
      \Parameters
       \EnableDynamicBacklog
           Value Type: REG_DWORD
           Valid Range: 0,1
           Default: 0
           Suggested value for a system under heavy attack: 1
				
MinimumDynamicBacklog contrôle le nombre minimal de connexions libres autorisées sur un point de terminaison d'écoute. Si le nombre de connexions libres descend en dessous de cette valeur, puis un thread est mis en file d'attente pour créer des connexions libres supplémentaires. Cette valeur ne pas apporter trop grande, comme le code du backlog dynamique engage chaque fois que le nombre de connexions libres passe en dessous de cette valeur. Trop grand une valeur peut entraîner une diminution des performances.
  HKEY_LOCAL_MACHINE
  \SYSTEM
   \CurrentControlSet
    \Services
     \AFD
      \Parameters
       \MinimumDynamicBacklog
           Value Type: REG_DWORD
           Valid Range: 0-0xFFFFFFFF
           Default: 0
           Suggested value for a system under heavy attack: 20
				
MaximumDynamicBacklog contrôle le nombre maximal de connexions «quasi-libres» autorisées sur un point de terminaison d'écoute. Connexions «Quasi-libres» incluent le nombre de connexions libres plus ces connexions dans un état moitié-connecté (SYN_RECEIVED). Aucune tentative n'est faite pour créer des connexions libres supplémentaires si donc doit dépasser cette valeur.
  HKEY_LOCAL_MACHINE
  \SYSTEM
   \CurrentControlSet
    \Services
     \AFD
      \Parameters
       \MaximumDynamicBacklog
           Value Type: REG_DWORD
           Valid Range: 0-0xFFFFFFFF
           Default: 0
           Suggested value for a system under heavy attack: Memory
           dependent. We recommend that this value does not exceed 20000 (decimal). This prevents exhaustion of the non-paged pool when under attack. 
				
DynamicBacklogGrowthDelta contrôle le nombre de connexions libres à créer lorsque des connexions supplémentaires sont nécessaires. Soyez prudent avec cette valeur, car une grande valeur pourrait conduire à des allocations de connexion libre explosive.
  HKEY_LOCAL_MACHINE
  \SYSTEM
   \CurrentControlSet
    \Services
     \AFD
      \Parameters
       \DynamicBacklogGrowthDelta
           Value Type: REG_DWORD
           Valid Range: 0-0xFFFFFFFF
           Default: 0
           Suggested value for a system under heavy attack: 10 (0xa)
				
MaximumDynamicBacklog,
Pour tirer parti des modifications à Afd.sys, applications Windows Sockets doivent demander spécifiquement un retard de traitement supérieure à la valeur configurée pour le MinimumDynamicBacklog lorsqu'ils émettent leur appel listen(). Applications Microsoft telles que Internet Information Server (qui a un retard de traitement par défaut de 25) sont configurables. Détails spécifiques à l'application sont disponibles à partir de la base de connaissances Microsoft à :
http://support.microsoft.com
Les pilotes modifiés pour Windows NT 3.51 et instructions pour les installer sont disponibles à partir de canaux de prise en charge de Microsoft ou de l'adresse suivante :
FTP://FTP.Microsoft.com/bussys/winnt /winnt-public/fixes/usa/nt351/hotfixes-postsp5/syn-attack

Statut

Windows NT 4.0

Ce problème a été corrigé dans le dernier Microsoft Windows NT (États-Unis) Service Pack pour Windows NT 4.0. Pour plus d'informations sur l'obtention du Service Pack, effectuez une recherche le mot suivant dans la base de connaissances Microsoft :
SERVPACK

Windows NT 3.51

Microsoft a confirmé l'existence de que ce problème pouvait entraîner une certaine faille de sécurité dans Windows NT version 3.51. Un correctif entièrement pris en charge est désormais disponible, mais il n'a pas été entièrement régression et doit être appliquée uniquement aux systèmes reconnus comme étant risque d'attaque. Évaluez l'accessibilité physique de votre système, réseau et connectivité Internet et d'autres facteurs pour déterminer le degré de risque pour votre système. Si votre système est réellement exposé, Microsoft vous recommande de qu'appliquer ce correctif. Sinon, attendez le prochain service pack Windows NT, qui contiendra ce correctif. Veuillez contacter le support technique Microsoft pour plus d'informations.

Plus d'informations

Ajout de ces modifications du Registre peut avoir un impact négatif sur un Cluster Exchange de Microsoft.

Microsoft Cluster Exchange (Exres.dll) lance fréquemment des connexions aux ports SMTP, IMAP, POP3 et HTTP pour tester la disponibilité. Les tests sont semblables à une session telnet au port 25, 143, 110 ou 80.

Si les tests réussissent, le cluster sait que les services sont disponibles pour les utilisateurs et les marque comme «Actif». Si les tests échouent, l'administrateur de cluster marque la ressource comme étant hors connexion dans l'administrateur de cluster et enregistre un événement dans le journal des applications. L'événement est :

Le type d'événement : erreur
Source de l'événement : MSExchangeCluster
Catégorie de l'événement : services
ID d'événement : 2074
Date : date
Heure : time
Utilisateur: n/A
Ordinateur : computer name
Description: SMTP Virtual Server Instance-(nom de VS2 du 125): le service de cluster n'a pas pu l'isalive vérification pour la ressource.

Propriétés

Numéro d'article: 142641 - Dernière mise à jour: mardi 20 février 2007 - Version: 5.3
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professionnel
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
Mots-clés : 
kbmt kbnetwork KB142641 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 142641
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com