Uso de direcciones MAC aleatorias
BR/EDR
BLE
En Bluetooth, se utilizan dos tipos principales de direcciones MAC:
- Pública: Un identificador fijo e inmutable asignado al dispositivo.
- Aleatoria: Un identificador modificable generado de forma pseudo aleatoria.
Las direcciones MAC aleatorias se dividen en dos categorías:
- Resolvibles: Permiten derivar la dirección MAC pública mediante una clave de resolución de identidad (IRK), si está disponible.
- No resolvibles: Totalmente aleatorias y no pueden vincularse con la dirección MAC pública del dispositivo.
Usar direcciones MAC aleatorias durante el descubrimiento del dispositivo es esencial para mitigar el rastreo y prevenir ataques de suplantación de identidad.
Además, aunque un dispositivo afirme utilizar direcciones MAC aleatorias, es importante verificar que realmente cambien con el tiempo, ya que una MAC “aleatoria” estática o con rotación poco frecuente no proporciona una protección de privacidad significativa
Descripción del proceso
Durante el proceso de descubrimiento se debe de verificar que el dispositivo está generando una dirección aleatoria mediante la comprobación del campo Address_Type[i] del mensaje HCI_LE_Extended_Advertising_Report. Puede tomar los valores:
| Valor | Descripción del parámetro |
|---|---|
| 0x00 | Dirección de Dispositivo Pública |
| 0x01 | Dirección de Dispositivo Aleatoria |
| 0x02 | Dirección Identidad Pública (corresponde a la Dirección Privada Resoluble) |
| 0x03 | Dirección Identidad Aleatoria (estática) (corresponde a la Dirección Privada Resoluble) |
| 0xFF | Dirección no suministrada (descubrimiento anónimo) |
| Todos los demás valores | Reservados para usos futuros |
Este control se considera satisfactorio cuando se verifica que el valor del campo es 1, 2, 3.
Example case
Abriendo Wireshark con BTVS (bvts.exe -Mode Wireshark) se pueden leer los mensajes de descubrimiento de los dispositivos cercanos, una de las etiquetas que se muestran en los paquetes de anuncio es el tipo de dirección MAC, indicando con el campo Address Type, en este caso con valor 0x00 (Public Device Address).
El tipo de dirección MAC se especifica según el estándar de Bluetooth, en términos generales, el valor obtenido estará en el rango de 0x00 a 0x03.
El resultado del control será FAIL cuando su valor sea 0x00.
Referencias Externas
- Bluetooth Core V5.3, Vol. 3, Part C, Section 10.8 Random Device Address
- Bluetooth Core V5.3, Vol. 1, Part A, Section 2.1.1.3 Security Manager Protocol
- Bluetooth Core V5.3, Vol. 4, Part H, Section 7.7.65.13 LE Extended Advertising Report event