User Tools

Site Tools


rx:tp5-bonus

This is an old revision of the document!


TP5 : Connexion à un serveur TCP/IP avec Scapy (Bonus)

Le but de cet exercice est d'ouvrir une connexion TCP/IP vers un serveur SSH (port 22) en effectuant la traditionnelle poignée de main avec Scapy. Pour établir la connexion TCP/IP avec Scapy vers le serveur SSH, il faut réaliser la traditionnelle poignée de main TCP en trois étapes (envoi de SYN → réception de SYN-ACK → envoi de ACK). Toutes les machines du réseau virtuel dispose d'un serveur SSH.

  • Sur une machine cliente, par exemple immortal :
    1. utilisez cette commande :
      iptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROP
    2. puis lancez Scapy.
  • Complétez le programme ci-dessous en respectant les étapes suivantes :
    1. envoi du paquet SYN avec notamment les champs TCP sport=7777, dport=22, flags=“S” et seq=0.
    2. réception du paquet SYNACK…
    3. envoi du paquet ACK avec les champs TCP flags=“A”, seq=SYNACK.ack, ack=SYNACK.seq+1, …
    4. réception du message MSG envoyé par le serveur, qui doit contenir du texte indiquant la version du serveur OpenSSH, enfin si tout marche bien !
      SYN = IP(???)/TCP(???)
      SYNACK = sr1(SYN)
      ACK = IP(???)/TCP(???)
      MSG = sr1(ACK)
      print MSG.load 

Attention : Il faut effectuer ces commandes rapidement pour éviter un “timeout” du serveur (sinon, le mieux serait d'utiliser une fonction Python) ! De plus, pour effectuer plusieurs tests consécutifs, il faut changer à chaque fois le numéro du port source TCP (sport=5467,…) car on ne ferme pas les connexions correctement !

rx/tp5-bonus.1456139894.txt.gz · Last modified: 2024/03/18 15:05 (external edit)