Archives mensuelles : mai 2019


Docker – changer les ip par défaut

Docker c’est bien mais il se met bien à l’ aise sur la machine où il se situe. J’entends par là qu’il se créé son interface docker0 avec son range d’ip 172.17.0.0. Mais parfois on veut un peu plus contrôler le scope d’ip de docker car il peut entrer en concurrence avec une ip d’un réseau interne.

Vous pouvez retrouver le bridge docker0 de différente manière :

route -n
docker network inspect
iptables -L

Mais docker est prévoyant et il est tout à fait possbile de paramétrer les ip que docker utilise pour son bridge docker0.

Pour celà c’est très simple, il suffit d’éditer ou créer un fichier /etc/docker/daemon.json de la manière suivante :

{
"bip": "192.168.1.1/24"
}

Dans notre cas docker0 utilisera un /24 sur 192.168.x.x.

Une fois ce fichier modifié, lancez :

systemctl daemon-reload
service docker restart

Vérifiez ensuite le changement du scope de docker0 :

ip a

Si l’interface docker0 est monté deux fois vous pouvez supprimer celle inactive grâce à cette commande :

ip link del docker0


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