Eseguire lo spoof di un indirizzo MAC

Uno dei tanti passi per incrementare la nostra sicurezza in rete.


Cominciamo con paio di domande:

  1. cosa è un indirizzo MAC?
  2. cosa significa fare uno spoof di un indirizzo MAC?

Dunque:

  1. Avete presente quante schede di rete possano esister al mondo? Miliardi chiaramente. L’industria elettronica aveva bisogno di un metodo per indentificare ogni singola scheda per eventuali identificazioni e riparazioni (che poi qualcuno come NSA o tribunali ne facciano altro uso è un altro paio di maniche!!); ecco l’indirizzo MAC: è il modo in cui hanno risoloto questo problema.
    Ogni scheda di rete ha un codice univoco identificativo e si chiama appunto indirizzo MAC. Per cui, avendo l’indirizzo MAC, possiamo sapere chi ha costruito la scheda o meglio l’azienda può sapere se è una propria scheda di rete o meno.
    Questo indirizzo contrariamente all’attuale indirizzo di rete, IP v4, ha un formato in numerazione esadecimale tipo 00:50:56:26:2f:e4 quindi sei valori esadeciameli divisi da il carattere due punti. Va da se che l’indirizzo MAC può essere usato anche per identificare una precisa macchina e, di conseguenza, anche una specifica persona!! Per cui se in qualche modo possono leggere il vostro indirizzo MAC, possono anche associarlo, a voi, in maniera diretta.
  2. Si intende fare lo spoof, di un indirizzo in generale, quando rendiamo visibile un indirizzo che non sia quello reale. In questo caso, laddove venga letto il nostro MAC, non vedranno il nostro indirizzo MAC reale, ma un numero a casaccio inventato dallo script.

Spiegato questo, dobbiamo installare il tool, che è stato scritto in Python e quindi lo possiamo installare con i seguenti comandi:

  • sudo pip install SpoofMAC oppure
  • sudo easy_install SpooMAC

Un metodo vale l’altro: dipende se avete installato pip o meno. Il comando installato è spoof-mac, se lo digitiamo senza parametri otterremo l’help relativo:

MacBookAir:~ jc$ spoof-mac
Usage:
spoof-mac randomize [–local] <devices>…
spoof-mac set <mac> <devices>…
spoof-mac reset <devices>…
spoof-mac normalize <mac>
spoof-mac -h | --help
spoof-mac --version
MacBookAir:~ jc$ spoof-mac

di conseguenza ho creato questro piccolo script, che esegue i vari comandi necessari per eseguire lo spoof della nostra scheda Wi-Fi. Chiarmente potete adattarla anche alla scheda con attacco cavo nel caso vogliate usarlo anche su un computer Desktop.

#!/bin/bash
##
## Verifica se l’utente è root o il comando è stato prefisso con sudo: se NO esci !!
##
if [ "$(id -u)" != "0" ]; then
echo "Questo script DEVE essere usato come root o prefisso con sudo !!" 1>&2
exit -1
fi
clear
spoof-mac list –wifi
spoof-mac randomize en0
spoof-mac list –wifi
ifconfig en0 up

Lo script verifica inzialmente se lo avete lanciato da root o se avete prefisso il comando con sudo, se non è cosi lo script viene terminato ritornando -1

In caso l’esecuzione sia eseguita da root allora viene effettuata, a video, una lista in cui viene visualizzato:

  • il nome della scheda, nel mio caso en0 (en — zero non lettera o minuscola) con il suo indirrzo MAC reale;
  • assegna alla scheda en0 un indirizzo MAC randomico, spegnendo la scheda wifi prima di effettuare l’assegnazione;
  • viene rieseguita la lista in modo, da far vedere l’indirizzo MAC reale e quello randomico addegnato dal programma;
  • la scheda en0 (en — zero non lettera o minuscola) viene rattivata per poter essere utilizzata.

Chiarmente non lo fate in remoto sulla scheda da cui siete entrati o vi vedrete sbattere fuori per caduta della connessione !! :)

Lo script, così com’è, va bene per la stragrande maggioranza dei portatili. Unica nota, verificate il nome della vostra scheda wifi: en0 per esempio è un nome tipicamente di macchine Apple. Se usate Windows o Linux il nome della scheda cambia totalmente. Per esempio in Linux della famiglia Debian, e derivate varie, la schede di rete si chiamerà wlan0.

Di conseguenza, dovete prima fare una verifica del nome della vostra scheda di rete usando il comando spoof-mac list — wifi ottenendo:

MacBookAir:~ jc$ spoof-mac list — wifi
– “Wi-Fi” on device “en0” with MAC address 10:93:E9:07:08:DA

dopo la parola device troverete il nome della scheda tra virgolette, nel mio caso appunto en0 (en — zero non lettera o minuscola)

Buon anonimizzazione !!


Pubblicato originalmente su bulk.jcsh.eu il 9 Giugno 2017.

P.S.: Grazie a Bluebabbler sono riuscito a generare i blocchi di codice in fase di edizione del post, per cui non è più necessario accedere al blog, direttamente, per vedere il codice corretto. Inoltre Bluebabbler mi ha fatto ricordare che rileggere ogni tanto gli help publicati, e letti in passato, è cosa buona e giusta. In questo caso ero rimasto al vecchio sistema dei tre caratteri apice strano che non riusivo a trovare sulla tastiera del Mac;non so se lo stesso problema si riscontrava anche su Windows e Linux. Adesso, invece, con l’uso di Alt-Cmd-6 in ambiente oSX (non 6 dal tastierino numerico) funziona egregiamente!!! Per Windows e Linux invece lo shortcut è Alt-Ctrl-6 (non son in questi casi se accetta il 6 dal tastierino numerico o meno). Grazie ancora Bluebabbler.


Nemmeno ve lo ricordo di cliccare sul cuoricino se il post vi è piaciuto :)