|
Vulnérabilité du protocole TCP |
|
Écrit par labo-cisco
|
|
26-04-2004 |
|
Ce sont les routeurs et les switchs Cisco qui ne sont pas basés sur le système d’exploitation propriétaire IOS qui sont touchés par cette vulnérabilité.
Ce sont les routeurs et les switchs Cisco qui ne sont pas basés sur le système d'exploitation propriétaire IOS qui sont touchés par cette vulnérabilité. En injectant un paquet, une personne mal intentionnée à la possibilité d’interrompre une connexion TCP entre deux machines.
Ce paquet se compose d’un flag (drapeau) positionné en reset (RST) ou sur une demande de synchronisation de connexion (SYN) puis est envoyé de façon à ce qu’il semble provenir de l'une de ces deux machines (spoofing).
Cette faille, connue depuis un certain temps, n‘avait une portée que théorique jusqu'à présent. En effet, il y a peu de probabilité de trouver la valeur d’ordre (codé sur 32 bits) que l’on doit affecter au paquet afin qu'il s'intègre parfaitement dans la séquence de la connexion. Cette valeur d'ordre est fixée aléatoirement en début de session puis est incrémentée pour chaque paquet. Le protocol TCP, contrairement à un protocole de transport comme User Datagram Protocol (UDP), vérifie l'arrivée de ces paquets au destinataire.
Ce taux de probabilité a pu être ramené à un niveau élevé par la découverte de Paul A. Watson qui a mis à jour une particularité affectant la vérification de la validité de cette valeur d'ordre. Il n'est en fait pas obligatoire de vérifier l'ensemble des numéros de séquence, seule une partie calculée en fonction de la fenêtre TCP (variable selon les systèmes d'exploitation) peut permettre d'insérer ses propres paquets. Une telle attaque est très rapide à effectuer, il faut compter des délais de l’ordre de quelques minutes, voir secondes.
Cette faille pose d’autant plus problèmes que le protocole TCP est utilisé par des services vitaux pour Internet comme BGP ou DNS. Ces services nécessitent des connexions permanentes. Ca fait d'eux des cibles privilégiées à ces interruptions de service, de nombreux réseaux pourraient se retrouver isolés les uns des autres si ces services étaient amenés à être attaqués.
Les solutions afin d'éviter l'injection de paquets tiers sont diverses vu la multitude de systèmes atteints.
Il est préconisé de passer par des systèmes permettant de signer les paquets TCP échangés lors de vos connexions, l'utilisation de protocole sécurisé qui travaille sous la couche TCP comme IPSec ou TCP-MD5.
|
|
Dernière mise à jour : ( 26-04-2004 )
|