Las direcciones MAC (Media Access Control) son identificadores de 48 bits que se corresponden de manera única a un dispositivo conectado a una red. También se les conoce como «direcciones físicas». Como explica Fernando Gont en un artículo de SearchSecurity, el cambio al azar de estas direcciones se ha implementado en la mayoría de sistemas operativos y se utiliza para prevenir ataques a la privacidad como, por ejemplo, el host tracking.

Las direcciones MAC se emplean para identificar el origen y el destino de paquetes de capa 2 del modelo OSI. Son 6 grupos de 2 caracteres de numeración hexadecimal, como por ejemplo 14-CC-20-00-1B-44.

El fabricante del dispositivo es el que establece estas direcciones que, como hemos dicho antes, son únicas para cada uno. Es importante insistir en esto. La dirección MAC no cambia nunca, ni con el tiempo ni si, por ejemplo, un nodo se desconecta de una red y luego se vuelve a conectar a ella. En la práctica, podemos considerarla como un número de serie para la tarjeta de interfaz de red subyacente. Y también, de manera indirecta, sirve como un identificador para el nodo que lo emplea.

Al poder usarlo como un identificador, nos encontramos ante un potencial problema de privacidad. Mediante la dirección MAC, un atacante podría inferir la identidad de un nodo, estableciendo una correlación en la actividad desenvuelta en la red. Por ejemplo, podría inferir que los paquetes enviados durante un período de tiempo específico fueron enviados por el mismo nodo que envió otros paquetes durante un período de tiempo diferente.

Así mismo, un atacante que sea capaz de conectarse a todas las redes con las que se conecta la víctima podría rastrearla a través de ellas. Es decir, que podría detectar la identidad de un nodo en cada red y ser capaz de rastrear su ubicación a medida que se mueve de una red a otra.

Este tipo de fugas de información son predecibles en redes cableadas como Ethernet, ya que la dirección MAC tan solo es uno de los muchos métodos que pueden usarse para descubrir la identidad de los nodos conectados. Pero al usar tecnologías inalámbricas como el Wi-fi, el problema se acentúa.

¿Y por qué? Porque no es necesario que ningún nodo se conecte a ninguna red. Sin hacerlo, ya se produce la fuga de información. Lo que ocurre es que, cuando un dispositivo quiere descubrir redes inalámbricas Wi-Fi en sus alrededores, envía paquetes de peticiones. Si un nodo cercano está monitoreando el tráfico de paquetes, puede recibir estas peticiones. Además, hay que considerar que estas se envían sin intervención del usuario que, sin saberlo, puede estar divulgando información sobre su presencia incluso sin estar conectado a ninguna red.

Implementación la asignación al azar

Para solucionar estos problemas es que se han implementado los cambios al azar o aleatorización de las direcciones MAC. Las dos más populares son la que hizo Apple en iOS y la de Microsoft en Windows.

Fue desde iOS 8 que Apple incorporó la aleatorización en su sistema móvil. Básicamente, lo que hace es cambiar al azar las direcciones MAC de los paquetes que se emplean para descubrir redes Wi-FI, evitando así que los nodos sean rastreados y/o identificados por algo tan simple y tan fuera del control del usuario. Solamente cuando se conecta a una red es que iOS emplea la dirección MAC real del hardware (asociándola con el correspondiente punto acceso).

Microsoft añadió la aleatorización en la última versión de su famoso Windows, Windows 10. El esquema que utiliza cuenta con mejores propiedades que el de iOS, pues produce direcciones MAC aleatorias que son estables dentro de cada red pero que cambian cuando el nodo se mueve de una red a otra.

Riesgos de la aleatorización

Ambos métodos de asignación aleatoria dan como resultado direcciones que son estables dentro de cada red Wi-Fi. Esto tiene sus ventajas ya que la estabilidad de las direcciones MAC es algo a lo que recurren muchos sitios y servicios web, entre otras herramientas para identificar a sus usuarios. Sin embargo, los riesgos para la privacidad, aunque se han reducido, todavía están presentes.

Es por ello que hasta que no se resuelvan, se puede considerar este tema como una asignatura pendiente. Cabe esperar que en un futuro, los sistemas operativos implementen esquemas de asignación al azar más agresivos, lo cual terminaría por hacer que se pierdan las propiedades de estabilidad de las direcciones MAC a las que se recurre actualmente, de manera que las aplicaciones o herramientas que dependen de ella podrían dejar de funcionar.

Además, sigue siendo una pregunta por responder la manera en que la aleatoriedad de direcciones MAC puede afectar a los dispositivos de red y de seguridad que, aunque estén preparados para manejar un número decente de direcciones MAC, podrían necesitar manejar un número mayor si los nodos reconfiguran diferentes direcciones aleatorias en períodos cortos de tiempo o sobre las reconexiones de red.