TCP Port Service Multiplexer
# TCP Port Service Multiplexer

Le service de multiplexage de port TCP (TCPMUX) est un protocole internet peu utilisé défini dans la RFC 1078. Ce protocole permet d'accéder à un autre protocole internet (HTTP, FTP, ...) en utilisant son nom au lieu de son numéro de port assigné.

## Sécurité

L'utilisation de TCPMUX permet à un pirate de savoir facilement quels services tournent sur un serveur avec la commande "HELP". L'effet obtenu est similaire au balayage de port mais est plus rapide et rend plus difficile de déterminer si le serveur subit un début d'attaque. Cependant le serveur peut tout à fait ne rien répondre voir omettre des services acceptés. Il permet également d'héberger des services accessibles uniquement en passant par TCPMUX.

## Spécifications du protocole

Le client se connecte sur le serveur TCPMUX en utilisant le port 1. Ensuite il envoie directement le nom du service demandé suivi d'un CRLF (retour chariot/saut de ligne, ce qui est saisi par la touche entrée). Le serveur répond ensuite soit par un "+" ou un "-" suivi immédiatement d'une description du service puis d'un CRLF. Si la réponse est positive le protocole demandé commence immédiatement dans la même connexion. Sinon elle est immédiatement fermée.

### Service HELP

Le nom de service HELP est un nom réservé. Le serveur renvoie alors la liste des services disponibles séparés par des CRLF puis ferme la connexion.

### Exemple de dialogue

Messages du serveur en gras. Messages du client en souligné.

Connexion du client au serveur (ici un client de messagerie)

HELP

SMTP<CRLF>POP3<CRLF>IMAP

Déconnexion initiée par le serveur

Reconnexion du client au serveur

IMAP

+IMAP est un service de consultation des mail qui au contraire de POP3 gère les répertoires<CRLF>

Passage au protocole IMAP

