Cambiar dirección MAC con python

En este articulo te voy a enseñar como podemos modificar a nuestro antojo la dirección MAC pero antes un poco de contexto.

Que es una direccion MAC

Las direcciones MAC son un ID (identificador único) asignado a las tarjetas de red este ID esta formado por 48 bits y un ejemplo se vería así (00: 25: 96: 12: 34: 56). Evidentemente este ID es único por cada unidad de red y esta firmado desde fabrica.

Comúnmente las laptop y nuestras desktop tienen dos formas de acceder a la red ya sea mediante wifi o ethernet es decir que podremos cambiar individualmente las MAC del wifi o ethernet.

Que es el MAC spoofing

A la acción de modificar nuestra MAC se le conoce como MAC spoofing. Cabe resaltar que al estar asignada la dirección MAC desde fabricante esta "no se puede cambiar". Sin embargo, existen herramientas que pueden hacer al sistema operativo creer que tiene la dirección MAC de elección del usuario. Entonces siendo mas especificos no la cambiamos si no la enmascaramos (MAC spoofing).

Para que sirve la MAC ADDRESS

Podemos utilizar la MAC para que nuestro Router asigne una IP estática a nuestra computadora.

  1. La Mac Address nos puede servir para restringir acceso a una red. Adios a los días en los que el vecino se conecta a nuestra red (es broma)
  2. Nos puede servir para identificar equipos dentro de la red por ejemplo con Nmap.
  3. Existen ISP que utilizan la autenticación por MAC para proporcionar internet a sus clientes.
  4. También es útil para geoposicionar dispositivos siendo aun mas efectivo que el posicionamiento con IP.

Para que sirve el MAC SPOOFING

Evidentemente como lo comentábamos anteriormente podremos ayudarnos a anonimizar nuestro trafico, ubicación, evitar filtros, etc. Esto lo podemos realizar tanto con herramientas como por ejemplo NetworkManager, Macchanger o Macchiato. Aunque también de forma manual.

Cambiando nuestra MAC

Primeramente lo haremos de forma manual para lo cual solo necesitaras pegar este comando en tu terminal y autorizar con tu password.

sudo su
ifconfig eth0 down
ifconfig eth0 hw ether 02:01:02:03:04:08
ifconfig eth0 up

En este caso lo primero que hacemos es des-habilitar la interfaz de red.
En la siguiente linea directamente ya estamos enmascarando la MAC y deberías sustituir el valor de Ether el cual es la MAC 02:01:02:03:04:08 por la dirección que tu desees.
En este caso eth0 es nuestra interfaz de red.
Por ultimo volvemos a habilitar la interfaz de red ya con la nueva MAC.

Cambiando la MAC con Python

Mac changer simple con python

Como puedes ver es extremadamente sencillo realizar este pequeño script para hacer MAC SPOOFING con python el código es muy sencillo y legible. Sin embargo se le pueden hacer un par de modificaciones para mejorar el script por ejemplo recibir la interfaz de red y el MAC por input del usuario y mostrar un mensaje si se cambio correctamente pero eso lo dejo a tu decisión en caso de no entender del todo el script tenemos un excelente curso de python donde podrás conocer desde su sintaxis hasta crear un robusto proyecto con estructuras de datos, ciclos y condicionales en https://codmind.com/courses/python