使用行動網路時,2G 連線對使用者安全和隱私權的威脅最大。雖然全球各地正逐步淘汰合法的 2G 行動網路,但裝置仍可能受到偽造基地台 (FBS) 的攻擊。擁有 FBS 的攻擊者可以欺騙裝置,讓裝置連上 FBS 而非合法的行動網路。最常見的做法是將裝置連線降級至 2G,讓 FBS 營運商攔截或注入裝置流量。
Android 允許使用者在任何實作功能常數「CAPABILITY_USES_ALLOWED_NETWORK_TYPES_BITMASK」的裝置上,停用無線電硬體層級的 2G。這樣一來,裝置就不會掃描或連線至 2G 網路。
自 Android 14 起,您必須具備 MODIFY_PRIVILEGED_PHONE_STATE,才能透過 ALLOWED_NETWORK_TYPES_REASON_ENABLE_2G 停用 2G。電信業者權限不足。
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,以免 FBS 假冒網路 ID,誘使裝置重新啟用 2G。