10/28/2006

Tunnel basé sur MSN mesenger

MSN Messenger est le système de messagerie instantanée, de VoIP et de visioconférence de Microsoft. Une session comporte toujours la connexion à un serveur de notification (NS), qui met à jour la liste des contacts connectés. Le NS permet ensuite de se connecter directement aux serveurs de messagerie instantanée standards (SB). Toutes les connections aux serveurs de MSN Messenger utilisent les couches de TCP/IP. Le client initialise toujours la connexion aux serveurs. Le port officiel de MSN Messenger est 1863. Le raccordement au serveur doit être considéré comme asynchrone, on peut envoyer beaucoup de commandes sans recevoir de réponse, et le serveur ne répondra pas nécessairement aux commandes dans l'ordre dans lequel celles-ci ont été envoyées. Le serveur peut également envoyer des messages qui ne sont pas des réponses aux questions du client.

Comment le protocole est-il détourné?


MsnShell se connecte au NS à l'aide d'un proxy HTTP ou en utilisant le réseau interne. Le processus d'ouverture de session nécessite l'authentification du client interne (CI) (le MSN Shell), le client externe (CE) reçoit alors une notification de connexion du CI.

Une fois que MsnShell est sur le réseau MSN Messenger, il reçoit sans interruption les messages qui indiquent le statut des autres utilisateurs et les messages qui précisent les demandes de dialogue. Pour chaque client en ligne sur Messenger, MsnShell crée une structure appelée l'online_user_info


Lorsque MsnShell reçoit une demande de dialogue, il crée un canal caché permettant de contrôler à distance une station Linux située derrière le Firewall en encapsulant les commandes Shell au sein du protocole MSN. MsnShell n'est composé que d'une partie serveur : "MsnShell server". Les principales fonctionnalités de MsnShell :

Figure 9: Principe de MSN Shell

  • Obtention d'un shell depuis une station située sur un réseau interne à partir d'un serveur externe;

  • Encapsulation des commandes et des réponses Shell dans le protocole MSN ("Shell over MSN");

  • Gestion de proxy HTTP ("Shell over MSN over HTTP");

Aucun commentaire:

Enregistrer un commentaire