«

»

gen 05

Come creare una sottorete sottoposta a sniffing utilizzando un router supplementare

In questo post descriverò la procedura che ho utilizzato per creare una sottorete all’interno della mia rete domestica da utilizzare per eseguire analisi delle cominicazioni di rete ( per motivi di sviluppo o di sicurezza) o per creare Honeypot. L’idea era quella di creare una seconda rete collegata alla rete domestica e quindi a internet attraverso un host che fa da proxy ( nel senso etimologico del termine) che chiameremo Routing server e logga tutte le conversazioni verso l’esterno per poterle analizzare in seguito.

I requisiti sono quindi:

  • La sottorete creata deve aver accesso diretto e trasparente ad internet
  • Tutto il traffico che attraversa il gateway della sottorete deve essere loggato ( quindi sia quello che esce che quello che entra)
  • Il traffico della sottorrete esistente ( incluso quello generato dal server di routing su eth1 che non è di forwarding) non deve essere loggato
  • Il traffico strettamente interno alla sottorete è irrilevante
  • L’interazione della sottorete con la rete interna preesistente deve essere minimo

La topologia di rete utilizzata è

Descrivendo la topologia dal punto di vista del Routing Server si ha la configurazione seguente:

  • All’interfaccia Eth1 è collegato il router che ha l’accesso ad internet, ad esso è collegata anche la sottorete preesistente
  • L’indirizzo del Routing server in Eth0 è 192.168.1.64
  • L’indirizzo del Routing server in Eth0 è 192.168.0.5, dovrà fare da gateway per il router interno
  • L’indirizzo (interno) del router connesso ad internet è 192.168.1.254
  • L’indirizzo del router interno è 192.168.0.1
  • All’interfaccia Eth0 è collegato un secondo router ( in particolare un router wireless visto che la funzione principale del progetto è studiare applicazioni Android)
  • Il router connesso ad internet ha una sottorrete definita dalla netmask 192.168.1.0/24
  • il router interno una sottorete definita dalla netmask 192.168.0.0/24

Routing Server collega le due sottoreti attraverso funzioni di forwarding implementate attraverso iptables, è quindi un host Linux

Configurazione del Routing server

Come dicevo il routing server è un host linux con due schede di rete che collega le due sottoreti forwardando i pacchetti con iptables. Per rendere possibile questo dobbiamo innanzitutto terminare il servizio network manager ( /etc/init.d/network-manager stop )

La configurazione viene eseguita attraverso uno script e viene quindi annullata al riavvio. lo script è il seguente:

#parte1
pkill dhclient
ifconfig eth0 192.168.0.5
route add -net 192.168.0.0 netmask 255.255.255.0 dev eth0 gw 192.168.1.64
route del default
route add default gw 192.168.1.254

#parte2
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -A POSTROUTING -t nat -o eth1 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
iptables -A FORWARD -o eth1 -i eth0 -j ACCEPT

#parte3
iptables -A FORWARD -p tcp -s 192.168.0.5/24 --sport 135 -j DROP #microsoft epmap
iptables -A FORWARD -p udp -s 192.168.0.5/24 --sport 137 -j DROP #netbios ns
iptables -A FORWARD -p tcp -s 192.168.0.5/24 --sport 138 -j DROP #netbios dgm
iptables -A FORWARD -p udp -s 192.168.0.5/24 --sport 1900 -j DROP #SSDP
iptables -A FORWARD -p tcp -s 192.168.0.5/24 --sport 445 -j DROP #microsoft-ds

vediamo di descrivere lo script:

la #parte1

termina i servizi di dhcp ancora in vita e poi setta in maniera statica l’indirizzo di Eth0 e setta il gateway di Eth0 a 192.168.1.64 e il gateway di default a 192.168.1.254 (il router connesso)

la #parte2

attiva e configura il forwarding tra le due interfacce, la prima riga lo attiva nel caso fosse disattivato

la #parte3

filtra i pacchetti provenienti da protocolli tipici di windows e provenienti dalla rete preesistente . questi pacchetti gonfierebbero inutilmente la dimensione dei file di log

Configurazione del router interno

Il router interno dovrà utilizzare 192.168.0.5 come gateway ( indirizzo di Router Server su Eth0) ma utilizzare un dns esterno ( nel mio caso opendns)

L’indirizzamento dhcp deve essere configurato facendo in modo che siano dinamici solo gli indirizzi superiori a 192.168.0.5

Sniffing!

Una volta configurato il tutto lo sniffing è molto semplice, basta avviare uno sniffer qualunque ( tcpdump, wireshark) e metterlo in ascolto su Eth0

In questo modo possiamo anche continuare a navigare senza che il nostro traffico compaia nei log

Share Button

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Puoi usare i seguenti tag ed attributi HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>