La amenaza más grave para la seguridad y la privacidad de un usuario cuando usa una red móvil son las conexiones 2G. Si bien las redes celulares 2G legítimas se están eliminando gradualmente en todo el mundo, los dispositivos aún son susceptibles a ataques de estaciones base falsas (FBS). Un adversario con un FBS puede engañar a un dispositivo para que se conecte a él en lugar de a una red celular legítima. Esto se logra con mayor frecuencia cuando se cambia la conexión de un dispositivo a 2G, lo que permite que el operador de la FBS intercepte o inyecte tráfico en un dispositivo.
Android permite a los usuarios inhabilitar 2G en el nivel de hardware de la radio en cualquier dispositivo que implemente la constante de la función, "CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK". Esto evitará que un dispositivo escanee redes 2G o se conecte a ellas.
A partir de Android 14, debes tener MODIFY_PRIVILEGED_PHONE_STATE para inhabilitar 2G con el motivo ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G. Los privilegios del operador no son suficientes.
TelephonyManager tm = getSystemService(TelephonyManager.class);
if (tm != null && tm.isRadioInterfaceCapabilitySupported("CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK")) {
long disable2gBitMask = 0xFFFF &~ TelephonyManager.NETWORK_CLASS_BITMASK_2G;
tm.setAllowedNetworkTypesForReason(TelephonyManager.ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G, disable2gBitMask);
}
Preguntas frecuentes
¿Los usuarios siguen siendo vulnerables si sus operadores ya no admiten 2G?
Inhabilitar la red 2G es una medida de seguridad importante, incluso si el operador del usuario ya no mantiene la infraestructura de 2G. El dispositivo del usuario aún admite el escaneo y la conexión a estaciones base 2G, por lo que sigue siendo vulnerable a un ataque de degradación a 2G si no inhabilita esta red en su dispositivo.
¿Cómo afecta la inhabilitación de la red 2G al roaming?
Cuando se inhabilita la red 2G por motivos de seguridad, no se volverá a habilitar, incluso si el dispositivo está en roaming. Algunas áreas del mundo dependen de la cobertura 2G, y algunos acuerdos de roaming suponen que los dispositivos podrán conectarse a 2G. En estas situaciones, el usuario no tendrá conectividad, a menos que vuelva a habilitar la red 2G. No es posible detectar de forma confiable el roaming 2G debido a la falta de autenticación mutua en 2G. Si no se habilita la red 2G a pesar de los indicadores de roaming, se evita que un FBS falsifique sus identificadores de red para convencer a un dispositivo de que vuelva a habilitar la red 2G.