Самая серьезная угроза безопасности и конфиденциальности пользователя при работе с мобильной сетью – это подключение 2G. Хотя легальные мобильные сети 2G постепенно выводятся из эксплуатации по всему миру, устройства по-прежнему уязвимы для атак с использованием ложных базовых станций. Злоумышленник с поддельной базовой станцией может обманом заставить устройство подключиться к ней вместо легитимной мобильной сети. Чаще всего это достигается путем понижения уровня подключения устройства до 2G, что позволяет оператору ложной базовой станции перехватывать или внедрять трафик на устройство.
Android позволяет пользователям отключать 2G на уровне радиомодуля на любом устройстве, которое поддерживает константу CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK. Это запрещает устройству сканировать сети 2G и подключаться к ним.
Начиная с Android 14, чтобы отключить 2G с причиной ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G, необходимо разрешение MODIFY_PRIVILEGED_PHONE_STATE. Прав оператора недостаточно.
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);
}
Часто задаваемые вопросы
Уязвимы ли пользователи, если их операторы больше не поддерживают 2G?
Отключение 2G – важная мера безопасности, даже если оператор пользователя больше не поддерживает инфраструктуру 2G. Устройство пользователя по-прежнему поддерживает сканирование и подключение к базовым станциям 2G, поэтому оно уязвимо для атаки с понижением версии до 2G, если пользователь не отключит 2G на своем устройстве.
Как отключение 2G влияет на роуминг?
Если сеть 2G отключена в целях безопасности, она не будет включена снова, даже если устройство находится в роуминге. В некоторых регионах доступна только сеть 2G, а отдельные соглашения о роуминге предполагают, что устройства могут подключаться к 2G. В таких ситуациях у пользователя не будет возможности связи, пока он снова не включит 2G. Из-за отсутствия взаимной аутентификации в сетях 2G невозможно надежно определить, что устройство находится в роуминге. Если не включать 2G, несмотря на сигналы роуминга, ложная базовая станция не сможет подделать идентификаторы сети, чтобы заставить устройство снова включить 2G.