Jeg tok like så gjerne og prøvde ut problemstillingen Andreas Rosland gjorde klassen oppmerksom på idag. Dersom en pc spoofer mac-addressen til en annen, altså at en switch har samme mac addresse på to forskjellige porter; hva skjer da?
Her er topologien:

Oppsett
| PC |
ip |
MAC |
port |
| laptop |
192.168.1.10 |
00:15:c5:af:02:2d |
4 |
| server |
192.168.1.1 |
00:04:e2:33:1c:74 |
1 |
| stasjonær |
192.168.1.11 |
00:1c:c0:7a:32:8b |
2 |
Switchen har forøvrig ip-address 192.168.1.89, på vlan1. Jeg pinget switchen fra de tre pcene. Da så arp-tabellen og mac-address-tabellen i switchen slik ut:
tonet-switch1#show mac-address-table
Destination Address Address Type VLAN Destination Port IP
------------------- ------------ ---- --------------------
0004.e233.1c74 Dynamic 1 FastEthernet0/1
0015.c5af.022d Dynamic 1 FastEthernet0/4
001c.c07a.328b Dynamic 1 FastEthernet0/2
tonet-switch1#show arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 192.168.1.89 - 0004.9a18.d740 ARPA VLAN1
Internet 192.168.1.11 0 001c.c07a.328b ARPA VLAN1
Internet 192.168.1.10 3 0015.c5af.022d ARPA VLAN1
Internet 192.168.1.1 0 0004.e233.1c74 ARPA VLAN1
Mac spoofing -- å duplisere en mac addresse
Nå kommer magien. Laptopen kjører ubuntu. Siden linux er et veldig greit verktøy for å jobbe med nettverk (og mye annet) bestemte jeg meg for å bruke laptopen til å klone (spoofe) mac addressen til den stasjonære pcen. Ville det skje noe?
Et søk på google gav meg et tips om et lite program som heter macchanger.
sudo apt-get install macchanger
Så byttet jeg mac addresse til den samme som den stasjonære pcen hadde. Men først måtte jeg stoppe nettverkstjenestene.
technocake@technocake-laptop:~$ sudo /etc/init.d/networking stop
* Deconfiguring network interfaces...
[ OK ]
technocake@technocake-laptop:~$ sudo macchanger --mac=00:1c:c0:7a:32:8b eth0
Current MAC: 00:15:c5:af:02:2d (unknown)
Faked MAC: 00:1c:c0:7a:32:8b (unknown)
technocake@technocake-laptop:~$ sudo /etc/init.d/networking start
les mer om macchanger her:
Da har jeg på dette tidspunktet to maskiner med samme mac addresse tilkoblet samme switch.
Skjer det noe?
For å se hva som hendte, slo jeg på debugging for arp og mac-address-table på switchen:
tonet-switch1#debug arp
ARP packet debugging is on
tonet-switch1#debug mat dynamic
MAT dynamic addresses debugging is on
mat står her for Mac Address Table. Og det er de dynamiske oppføringen til switchen vi er innteresert i.
Da, pinget jeg switchen (192.168.1.89) fra laptopen, og observerte.
show mac-address-table:
Destination Address Address Type VLAN Destination Port
------------------- ------------ ---- --------------------
0004.e233.1c74 Dynamic 1 FastEthernet0/1
001c.c07a.328b Dynamic 1 FastEthernet0/4
Nå gikk tabellen over fra 3 entries til 2. Legg merke til at port 2 ikke er å se. Dette er den porten som den stasjonære pcen er koblet til.
Men arp tabellen har en oversikt over ip addresser:
tonet-switch1#show arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 192.168.1.89 - 0004.9a18.d740 ARPA VLAN1
Internet 192.168.1.11 0 001c.c07a.328b ARPA VLAN1
Internet 192.168.1.10 3 001c.c07a.328b ARPA VLAN1
Internet 192.168.1.1 0 0004.e233.1c74 ARPA VLAN1
Pingingen fra laptopen fikk svar. Det merkelige var at den stasjonære fikk også svar på ping til switchen. Også når de pinget samtidig!
Hvorfor?
Jeg observerte, at om jeg pinget fra den stasjonære, ble mac-addresse-tabellen oppdatert, slik at denne macen pekte til port 2. Pinget jeg fra laptopen, ble den byttet til port 4. Og slik gikk det frem og tilbake.
Jo fordi switchen baserer seg på data fra både arp tabellen og mac-address-table for å velge hvilken port den skal sende ut på. Siden laptopen og den stasjonære har ulik IP-ADDRESSE, men lik MAC addresse, så et den hvilken port den skal sende ut svaret på.
Thats it for this time.
Technocake a.k.a kakemann a.k.a Robin out!