Désactiver la 2G

Les connexions 2G représentent la menace la plus grave pour la sécurité et la confidentialité des utilisateurs lorsqu'ils utilisent un réseau mobile. Bien que les réseaux cellulaires 2G légitimes soient progressivement abandonnés dans le monde entier, les appareils restent vulnérables aux attaques provenant de fausses stations de base (FBS). Un pirate informatique disposant d'une FBS peut inciter un appareil à s'y connecter au lieu d'un réseau mobile légitime. Pour ce faire, l'opérateur du FBS rétrograde le réseau d'un appareil en 2G, ce qui lui permet d'intercepter ou d'injecter du trafic vers un appareil.

Android permet aux utilisateurs de désactiver la 2G au niveau du matériel radio sur n'importe quel appareil qui implémente la constante de capacité "CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK". Cela empêche un appareil d'analyser les réseaux 2G ou de s'y connecter.

À partir d'Android 14, vous devez disposer de l'autorisation MODIFY_PRIVILEGED_PHONE_STATE pour désactiver la 2G avec la raison ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G. Les droits d'opérateur ne suffisent pas.

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);
}

Questions fréquentes

Les utilisateurs sont-ils toujours vulnérables si leur opérateur ne prend plus en charge la 2G ?

La désactivation de la 2G est une mesure de sécurité importante, même si l'opérateur de l'utilisateur ne maintient plus l'infrastructure 2G. L'appareil de l'utilisateur est toujours compatible avec la recherche et la connexion aux stations de base 2G. Il reste donc vulnérable à une attaque par rétrogradation 2G s'il ne désactive pas la 2G sur son appareil.

Quel est l'impact de la désactivation de la 2G sur l'itinérance ?

Lorsque la 2G est désactivée pour des raisons de sécurité, elle ne sera pas réactivée, même si l'appareil est en itinérance. Certaines régions du monde dépendent de la couverture 2G et certains accords d'itinérance supposent que les appareils pourront se connecter à la 2G. Dans ces situations, l'utilisateur n'aura pas de connectivité, sauf s'il réactive la 2G. Il n'est pas possible de détecter de manière fiable l'itinérance 2G en raison de l'absence d'authentification mutuelle dans la 2G. Si vous désactivez la 2G même en cas de signaux d'itinérance, vous empêchez une FBS d'usurper ses identifiants réseau pour convaincre un appareil de réactiver la 2G.