Utilisation de Wireshark pour examiner le trafic FTP

Utilisation de Wireshark pour examiner le trafic FTP
L'article précédent vous a fourni une compréhension approfondie des filtres Wireshark, des couches OSI, de l'ICMP et de l'analyse des paquets HTTP. Dans cet article, nous apprendreons comment fonctionne FTP et examinerons les captures FTP Wireshark. Avant de creuser profondément dans l'analyse des paquets capturés, nous commencerons par une brève compréhension du protocole.

FTP

FTP est un protocole utilisé par les ordinateurs pour partager des informations sur le réseau. Autrement dit, c'est un moyen de partager des fichiers entre les ordinateurs connectés. Comme HTTP est conçu pour les sites Web, FTP est optimisé pour les transferts de fichiers importants entre les ordinateurs.

Le client FTP construit d'abord un connexion de contrôle Demande au port du serveur 21. Une connexion de contrôle nécessite une connexion pour établir une connexion. Mais certains serveurs rendent tout leur contenu disponible sans aucune information. Ces serveurs sont connus sous le nom de serveurs FTP anonymes. Plus tard un séparé Connexion de données est établi pour transférer des fichiers et des dossiers.

Analyse du trafic FTP

Le client et le serveur FTP communiquent tout en étant au courant que TCP gère chaque session. TCP est généralement utilisé dans chaque session pour contrôler la livraison, l'arrivée et la gestion de la taille des fenêtres. Pour chaque échange de datagram, TCP initie une nouvelle session entre le client FTP et le serveur FTP. Par conséquent, nous commencerons notre analyse avec les informations disponibles sur les paquets TCP pour l'initiation et la terminaison de la session FTP dans le volet intermédiaire.

Démarrer la capture de paquets à partir de votre interface sélectionnée et utilisez le FTP Commande dans le terminal pour accéder au site FTP.McAfee.com.

Ubuntu $ ubuntu: ~ $ ftp ftp.McAfee.com

Connectez-vous avec vos informations d'identification, comme indiqué dans la capture d'écran ci-dessous.

Utiliser Ctrl + c Pour arrêter la capture et rechercher l'initiation de la session FTP, suivie du TCP [Syn], [Syn-Aack], et [ACK] paquets illustrant une poignée de main à trois pour une session fiable. Appliquer le filtre TCP pour voir les trois premiers paquets du panneau de liste de paquets.

Wireshark affiche des informations TCP détaillées qui correspondent au segment des paquets TCP. Nous mettons en surbrillance le paquet TCP de l'ordinateur hôte vers le serveur FTP McAfee pour étudier la couche de protocole de contrôle de transfert dans le panneau de détail des paquets. Vous pouvez remarquer que le premier datagramme TCP pour l'initiation de la session FTP ne fait que définir Syn mordre 1.

L'explication de chaque champ dans la couche de protocole de contrôle de transport dans Wireshark est donnée ci-dessous:

  • Port source: 43854, c'est l'hôte TCP qui a initié une connexion. C'est un nombre qui se situe n'importe où au-dessus de 1023.
  • Le port de destination: 21, c'est un numéro de port associé au service FTP. Cela signifie que le serveur FTP écoute le port 21 pour les demandes de connexion client.
  • Numéro de séquence: C'est un champ 32 bits qui contient un numéro pour le premier octet envoyé dans un segment particulier. Ce numéro aide à l'identification des messages reçus dans l'ordre.
  • Numéro de reconnaissance: Un champ 32 bits spécifie un récepteur d'accusé de réception prévoit recevoir après une transmission réussie des octets précédents.
  • Facteurs de contrôle: Chaque formulaire de bit de code a une signification particulière dans la gestion de session TCP qui contribue au traitement de chaque segment de paquets.

ACK: valide le numéro d'accusé de réception d'un segment de réception.

Syn: synchroniser le numéro de séquence, qui est défini à l'initiation d'une nouvelle session TCP

AILETTE: Demande de résiliation de session

Urg: Demandes de l'expéditeur pour envoyer des données urgentes

RST: Demande de réinitialisation de la session

PSH: Demande de poussée

  • La taille de la fenêtre: C'est la valeur de la fenêtre coulissante qui indique la taille des octets TCP envoyés.
  • Vérification: champ qui contient la somme de contrôle pour le contrôle d'erreur. Ce champ est obligatoire en TCP contrairement à l'UDP.

Se déplacer vers le deuxième datagramme TCP capturé dans le filtre Wireshark. Le serveur McAfee reconnaît le Syn demande. Vous pouvez remarquer les valeurs de Syn et Ack bits réglés sur 1.

Dans le dernier paquet, vous pouvez remarquer que l'hôte envoie un accusé de réception au serveur pour l'initiation de la session FTP. Vous pouvez remarquer que le Numéro de séquence et le Ack Les bits sont définis sur 1.

Après avoir établi une session TCP, le client FTP et le serveur échangent un peu de trafic, le client FTP reconnaît le serveur FTP Réponse 220 Paquet envoyé via la session TCP via une session TCP. Par conséquent, tout l'échange d'informations est effectué via la session TCP au client FTP et au serveur FTP.

Une fois l'achèvement de la session FTP, le client FTP envoie le message de terminaison au serveur. Après la demande de demande, la session TCP sur le serveur envoie une annonce de résiliation à la session TCP du client. En réponse, la session TCP du client reconnaît le datagramme de résiliation et envoie sa propre session de résiliation. Après réception de la session de terminaison, le serveur FTP envoie un accusé de réception de la résiliation et la session est close.

Avertissement

FTP n'utilise pas de chiffrement et les informations d'identification de connexion et de mot de passe sont visibles en plein jour. Par conséquent, tant que personne n'écoute et que vous transférez des fichiers sensibles dans votre réseau, c'est sûr. Mais n'utilisez pas ce protocole pour accéder au contenu depuis Internet. Utiliser SFTP qui utilise Secure Shell SSH pour le transfert de fichiers.

Capture de mot de passe FTP

Nous allons maintenant montrer pourquoi il est important de ne pas utiliser FTP sur Internet. Nous rechercherons les phrases spécifiques du trafic capturé contenant utilisateur, nom d'utilisateur, mot de passe, etc., Comme indiqué ci-dessous.

Aller à Edit-> "Trouver le paquet" et choisissez String pour le Filtre d'affichage, puis sélectionner Octets de paquets Pour afficher les données recherchées dans ClearText.

Tapez la chaîne passer Dans le filtre, et cliquez Trouver. Vous trouverez le paquet avec la chaîne "Veuillez spécifier le mot de passe » dans le Octets de paquets panneau. Vous pouvez également remarquer le paquet mis en évidence dans le Liste de paquets panneau.

Ouvrez ce paquet dans une fenêtre Wireshark séparée en cliquant avec le bouton droit sur le paquet et sélectionnez Suivre-> Stream TCP.

Maintenant, recherchez à nouveau, et vous trouverez le mot de passe en texte brut dans le panneau d'octet de paquet. Ouvrez le paquet mis en surbrillance dans une fenêtre séparée comme ci-dessus. Vous trouverez les informations d'identification de l'utilisateur en texte en clair.

Conclusion

Cet article a appris comment fonctionne FTP, a analysé comment TCP contrôle et gère les opérations dans une session FTP et a compris pourquoi il est important d'utiliser des protocoles de coquille sécurisés pour le transfert de fichiers sur Internet. À venir dans de futurs articles, nous couvrirons certaines des interfaces de ligne de commande pour Wireshark.