PROJET AUTOBLOG


IT-Connect

Site original : IT-Connect

⇐ retour index

Le protocole Telnet pour les débutants (et pourquoi vous devez l’éviter)

dimanche 16 juillet 2023 à 16:45

I. Présentation

Dans cet article, nous allons étudier le protocole Telnet, qui reste aujourd'hui utilisé pour effectuer de l'administration à distance, bien que ce ne soit pas un protocole sécurisé.

Alors qu'est-ce que le protocole Telnet ? A quoi sert-il ? Pourquoi est-il considéré comme non sécurisé ? Est-ce qu'il y a des alternatives ? Nous répondrons à toutes ces questions dans cet article.

II. Qu'est-ce que le protocole Telnet ?

Le protocole Telnet est un protocole utilisé sur les réseaux informatiques pour se connecter à distance à un serveur ou à un équipement réseau. Une fois connecté à un équipement avec le protocole Telnet, on obtient un accès à un prompt afin de pouvoir saisir et exécuter des commandes.

Le protocole Telnet est un protocole de type client-serveur, où les connexions sont effectuées sur le port 23 en TCP. Le client Telnet peut être représenté par l'ordinateur de l'administrateur système tandis que le serveur Telnet peut être représenté par un équipement réseau que l'on veut administrer à distance. Aujourd'hui, et même si c'est de plus en plus rare, il est possible d'utiliser le protocole Telnet pour se connecter à un commutateur ou un routeur en ligne de commande, dans le but de l'administrer.

Il s'agit de l'un des protocoles les plus anciens, puisqu'il a été créé en 1969 avant d'obtenir sa certification RFC le 1er mai 1973 : la RFC 495. Par la suite, deux autres RFC ont étaient mises en ligne pour mieux décrire le protocole et tenir compte des améliorations : RFC 854 et RFC 855.

III. Faiblesse du protocole Telnet

A. Telnet, un protocole non sécurisé

Le protocole Telnet a été développé à une époque où la sécurité n'était pas une préoccupation. De ce fait, le protocole Telnet n'est pas sécurisé. Pour être plus précis, toutes les données échangées via Telnet sont transmises en clair sur le réseau, c'est-à-dire qu'elles ne sont pas chiffrées.

Cela signifie que si l'on utilise le protocole Telnet pour se connecter à un équipement réseau ou un serveur, les informations sensibles (nom d'utilisateur et mot de passe) seront transmises en clair sur le réseau. Si une personne malveillante parvient à intercepter le trafic réseau, elle sera en mesure de récupérer vos identifiants et de compromettre votre équipement.

L'utilisation du protocole Telnet reste acceptable sur un réseau local, quand il n'y a pas d'autres alternatives, mais sur Internet, c'est à bannir. Dans tous les cas, il est important d'avoir connaissance de ce risque et de le prendre en considération.

B. Capture des identifiants avec Wireshark

Pour étayer mes propos, prenons un exemple pratique où je vais établir une connexion Telnet depuis un PC Windows vers un équipement. Dans le même temps, une capture du trafic sera réalisée à partir du PC Windows qui initie la connexion Telnet.

La connexion est initiée avec l'application PuTTY... Elle est établie, le login et le mot de passe sont saisis. Juste après, la capture Wireshark est arrêtée.

Connexion Telnet avec SSH

Si l'on s'intéresse de plus près aux paquets échangés entre mon PC Windows et mon équipement, autrement dit mon client Telnet et mon serveur Telnet, on peut voir plusieurs paquets "Telnet Data...". Si l'on regarde le détail des paquets, on peut constater "Password:" comme données dans le paquet, ce qui correspond au prompt visible sur la console ci-dessus.

Wireshark - Telnet - Password

Puis, dans un autre paquet, émit depuis le client Telnet vers le serveur Telnet, on a cette valeur comme donnée : "Tuto-Telnet-2023" ! Il s'agit du mot de passe de l'utilisateur ! Au préalable, d'autres paquets ont transité, notamment pour l'identifiant (demo-telnet).

Wireshark - Telnet - Mot de passe en clair

Si l'on utilise la fonction de suivi de flux TCP de Wireshark, c'est encore plus flagrant et rapide : toutes les données sont visibles, en clair, dans une fenêtre récapitulative. On peut récupérer l'identifiant et le mot de passe très facilement.

Wireshark - Suivi TCP Telnet - Identifiants en clair

Cette démonstration montre qu'il est très facile de lire les données au sein d'une communication entre un client et un serveur lorsque le protocole Telnet est utilisé. Ici, la capture est effectuée depuis le PC qui joue le rôle de client Telnet, mais il pourrait s'agir d'une autre machine sur le réseau (qui parvient à se positionner de façon à intercepter le trafic).

IV. Alternatives au protocole Telnet

Pour des raisons de sécurité, il est préférable d'utiliser d'autres protocoles sur le protocole Telnet, afin d'utiliser un protocole plus moderne et sécuriser. La meilleure alternative au protocole Telnet, c'est le protocole SSH (Secure SHell). Contrairement au Telnet, le protocole SSH chiffre tous les échanges entre le client et le serveur, offrant ainsi une protection adaptée contre l'écoute réseau et l'interception de trafic.

Le protocole SSH, au même titre que le protocole Telnet, permet de se connecter à distance, en ligne de commande, à un équipement pour l'administrer. Ceci est vrai pour un équipement réseau, mais aussi une machine sous Linux ou Windows.

Ainsi, si vous avez le choix entre les protocoles Telnet et SSH, vous ne devriez pas hésiter un seul instant et utiliser le protocole SSH. Comme le montre l'exemple ci-dessous, les paquets SSH sont chiffrés et le contenu n'est pas lisible.

Wireshark - SSH - Trafic chiffré

Pour des appareils prenant en charge d'autres protocoles, l'administration peut être effectuée via les protocoles HTTP, HTTPS ou RDP, mais l'utilisation dans la pratique sera différente.

V. Conclusion

Le protocole Telnet est à connaître, car il fait partie des indispensables : bien qu'il soit à éviter, vous avez des chances de le croiser alors c'est important d'en savoir un minimum à son sujet. Vous devez retenir qu'il n'est pas sécurisé et qu'il faut prioriser l'utilisation du SSH.

The post Le protocole Telnet pour les débutants (et pourquoi vous devez l’éviter) first appeared on IT-Connect.