Risque

Exécution de code arbitraire avec les privilèges du daemon telnetd (le plus souvent root) à distance.

Des programmes exploitant cette vulnérabilité ont été diffusés sur l'Internet.

Systèmes affectés

Tous les serveurs de connexion telnet, dont les sources sont issues de la version BSD (FreeBSD, OpenBSD, Windows NT, SGI Irix, IBM Aix, Linux Debian, Mandrake, RedHat, HP-UX...).

Résumé

Un utilisateur mal intentionné peut exécuter à distance, et sans authentification préalable, du code arbitraire avec les privilèges de l'utilisateur propriétaire du daemon telnetd.

Description

Une vulnérabilité dans le traitement des options du protocole telnet (fonction telrcv) permet à un utilisateur mal intentionné d'exécuter à distance, et sans authentification préalable, du code arbitraire sur le serveur telnet au moyen d'un débordement de mémoire dans cette fonction.

Nota : Le daemon telnetd est installé et lancé par défaut sur les systèmes FreeBSD entre autres.

Nota : Sur certaines distributions de Linux (Mandrake, RedHat, Debian ...), le service telnet est installé avec le paquetage netkit.

Contournement provisoire

  • Si le service telnet n'est pas utilisé sur une machine, ou s'il est temporairement impossible d'installer le correctif il faut arrêter telnetd et l'empêcher de redémarrer.

    Il est généralement lancé par le biais d'inetd ou xinetd.

  • Dans la mesure du possible, le propriétaire d'un service tel que telnet ne doit pas être root.
  • Restreindre l'accès au service telnet au niveau des gardes-barrières (le port standard pour le service telnet est 23/TCP).

Solution

Se référer aux bulletins de sécurité des différents distributeurs pour appliquer les correctifs (Cf. paragraphe Documentation).

Documentation