L’analyse des ports est une partie importante des tests d’intrusion. Il vous permet d’identifier et d’exploiter les vulnérabilités des sites Web, des applications mobiles ou des systèmes. En tant que testeur d’intrusion ou hacker éthique, il est essentiel que vous connaissiez les ports les plus faciles et les plus vulnérables à attaquer lors de la réalisation d’un test.
Alors, que sont réellement les ports ouverts ? Et quels ports sont les plus vulnérables ?
Qu’est-ce qu’un test d’intrusion ?
Un test d’intrusion est une forme de piratage éthique qui consiste à effectuer des simulations d’attaques de cybersécurité autorisées sur des sites Web, des applications mobiles, des réseaux et des systèmes pour découvrir leurs vulnérabilités à l’aide de stratégies et d’outils de cybersécurité. Ceci est fait pour évaluer la sécurité du système en question.
Que sont les ports ?
Un port est une matrice virtuelle utilisée par les ordinateurs pour communiquer avec d’autres ordinateurs sur un réseau. Un port est également appelé numéro attribué à un protocole réseau spécifique. Un protocole réseau est un ensemble de règles qui déterminent la façon dont les appareils transmettent des données dans un réseau.
Les deux types de protocoles réseau les plus courants sont le protocole de contrôle de transmission (TCP) et le protocole de datagramme utilisateur (UDP).
Protocoles de contrôle de transmission
TCP est une norme de communication qui permet aux appareils d’envoyer et de recevoir des informations de manière sécurisée et ordonnée sur un réseau. Pour ce faire, il établit une connexion entre l’ordinateur client et le serveur ou l’ordinateur désigné, puis envoie des paquets d’informations sur le réseau. TCP fonctionne main dans la main avec le protocole Internet pour connecter des ordinateurs via Internet.
Protocoles de datagramme utilisateur
UDP fonctionne comme TCP, sauf qu’il n’établit pas de connexion avant de transférer les informations. L’UDP est plus rapide que le TCP car il ignore l’étape d’établissement de la connexion et transfère simplement les informations à l’ordinateur cible via un réseau. Cela le rend peu fiable et moins sûr.
Comment vérifier les ports ouverts
Un port ouvert est un port TCP ou UDP qui accepte des connexions ou des paquets d’informations. Si un port rejette des connexions ou des paquets d’informations, il est appelé port fermé. Les ports ouverts sont nécessaires pour le trafic réseau sur Internet.
Pour vérifier les ports ouverts, tout ce dont vous avez besoin est l’adresse IP cible et un scanner de port. Il existe de nombreux scanners de ports gratuits et outils de test de pénétration qui peuvent être utilisés à la fois sur la CLI et sur l’interface graphique. Le scanner de port le plus populaire est Nmap, qui est gratuit, open-source et facile à utiliser. Si vous ne le connaissez pas, vous pouvez apprendre à rechercher les ports ouverts à l’aide de Nmap.
Tous les ports ouverts sont-ils vulnérables ?
Pas nécessairement. Bien qu’un port fermé soit moins vulnérable qu’un port ouvert, tous les ports ouverts ne sont pas vulnérables. Au contraire, les services et les technologies utilisant ce port sont susceptibles de vulnérabilités. Ainsi, si l’infrastructure derrière un port n’est pas sécurisée, ce port est sujet aux attaques.
Ports vulnérables à surveiller
Il existe plus de 130 000 ports TCP et UDP, mais certains sont plus vulnérables que d’autres. Dans les tests d’intrusion, ces ports sont considérés comme des fruits à portée de main, c’est-à-dire des vulnérabilités faciles à exploiter.
De nombreux ports présentent des vulnérabilités connues que vous pouvez exploiter lorsqu’elles surviennent lors de la phase d’analyse de votre test d’intrusion. Voici quelques ports vulnérables courants que vous devez connaître.
1. FTP (20, 21)
FTP signifie File Transfer Protocol. Les ports 20 et 21 sont uniquement des ports TCP utilisés pour permettre aux utilisateurs d’envoyer et de recevoir des fichiers d’un serveur vers leurs ordinateurs personnels.
Le port FTP n’est pas sécurisé et obsolète et peut être exploité en utilisant :
- Authentification anonyme. Vous pouvez vous connecter au port FTP avec le nom d’utilisateur et le mot de passe définis sur « anonyme ».
- Script intersite.
- Mots de passe brutaux.
- Attaques par traversée de répertoire.
2. SSH (22)
SSH signifie Secure Shell. Il s’agit d’un port TCP utilisé pour assurer un accès distant sécurisé aux serveurs. Vous pouvez exploiter le port SSH en forçant brutalement les informations d’identification SSH ou en utilisant une clé privée pour accéder au système cible.
3. PME (139, 137, 445)
SMB signifie Server Message Block. Il s’agit d’un protocole de communication créé par Microsoft pour fournir un accès partagé aux fichiers et aux imprimantes sur un réseau. Lors de l’énumération du port SMB, recherchez la version SMB, puis vous pouvez rechercher un exploit sur Internet, Searchsploit ou Metasploit.
Le port SMB pourrait être exploité à l’aide de la vulnérabilité EternalBlue, en forçant brutalement les informations d’identification de connexion SMB, en exploitant le port SMB à l’aide de NTLM Capture et en se connectant à SMB à l’aide de PSexec.
Un exemple de vulnérabilité SMB est la vulnérabilité Wannacry qui s’exécute sur EternalBlue
4. DNS (53)
DNS signifie Domain Name System. Il s’agit à la fois d’un port TCP et UDP utilisé respectivement pour les transferts et les requêtes. Un exploit courant sur les ports DNS est l’attaque par déni de service distribué (DDoS).
5. HTTP / HTTPS (443, 80, 8080, 8443)
HTTP signifie HyperText Transfer Protocol, tandis que HTTPS signifie HyperText Transfer Protocol Secure (qui est la version la plus sécurisée de HTTP). Ce sont les protocoles les plus populaires et les plus utilisés sur Internet, et en tant que tels, ils sont sujets à de nombreuses vulnérabilités. Ils sont vulnérables aux injections SQL, aux scripts intersites, à la falsification de requêtes intersites, etc.
6. Telnet (23)
Le protocole Telnet est un protocole TCP qui permet à un utilisateur de se connecter à des ordinateurs distants via Internet. Le port Telnet a longtemps été remplacé par SSH, mais il est encore utilisé par certains sites Web aujourd’hui. Il est obsolète, non sécurisé et vulnérable aux logiciels malveillants. Telnet est vulnérable à l’usurpation d’identité, au reniflage d’informations d’identification et au forçage brutal d’informations d’identification.
7.SMTP (25)
SMTP signifie Simple Mail Transfer Protocol. C’est un port TCP utilisé pour envoyer et recevoir des mails. Il peut être vulnérable au spam et au spoofing s’il n’est pas bien sécurisé.
8. TFTP (69)
TFTP signifie Trivial File Transfer Protocol. C’est un port UDP utilisé pour envoyer et recevoir des fichiers entre un utilisateur et un serveur sur un réseau. TFTP est une version simplifiée du protocole de transfert de fichiers. Comme il s’agit d’un port UDP, il ne nécessite pas d’authentification, ce qui le rend plus rapide mais moins sécurisé.
Il peut être exploité à l’aide de la pulvérisation de mots de passe et d’un accès non autorisé, ainsi que d’attaques par déni de service (DoS).
Analyse de ports en tant que Pentester
En tant que testeur d’intrusion ou piratage éthique, l’importance de l’analyse des ports ne peut être surestimée. L’analyse des ports vous aide à recueillir des informations sur une cible donnée, à connaître les services exécutés derrière des ports spécifiques et les vulnérabilités qui leur sont associées.
Maintenant que vous connaissez les ports les plus vulnérables sur Internet, vous pouvez utiliser ces informations pour effectuer des pentests. Bonne chance!
Lire la suite
A propos de l’auteur