網路安全最佳實踐

本節包含確保 Android 裝置網路通訊安全的建議。

保護監聽套接字

謹慎使用監聽套接字。裝置上通常不應有任何開啟的偵聽套接字,因為它們為遠端攻擊者提供了存取裝置的媒介。

  • Android 裝置應最大限度地減少其暴露的網路偵聽套接字的數量,尤其是在啟動時或預設情況下。預設情況下,啟動時不應監聽任何套接字。
    • 根程序和系統唯一識別碼 (UID) 擁有的程序不應公開任何偵聽套接字。
  • 必須能夠在不進行 OTA 更新的情況下停用偵聽套接字。這可以透過伺服器或用戶設備配置變更來執行。
  • 對於使用本機 IPC 的套接字,應用程式必須使用僅限某個群組存取的 UNIX 網域套接字。為 IPC 建立一個檔案描述符,並將其設定為特定 UNIX 群組的 +RW。任何客戶端應用程式都必須位於該 UNIX 群組內。
  • 某些具有多個處理器的裝置(例如,與應用程式處理器分離的無線電/數據機)使用網路套接字在處理器之間進行通訊。在這種情況下,用於處理器間通訊的網路套接字必須使用隔離的網路接口,以防止裝置上未經授權的應用程式進行存取(即使用iptables 來防止裝置上的其他應用程式進行存取)。
  • 處理偵聽連接埠的守護程式必須能夠抵禦格式錯誤的資料。您應該使用未經授權的用戶端(如果可能的話)使用授權用戶端對連接埠進行模糊測試。歸檔錯誤以追蹤崩潰情況。

Android 相容性測試套件(CTS) 包含檢查是否有開放式偵聽連接埠的測試。

禁用亞銀

Android 調試橋 (ADB) 是一種有價值的開發和調試工具,但設計用於在受控的安全環境中使用,不應啟用一般用途。

  • 確保預設情況下禁用 ADB。
  • 確保 ADB 要求使用者在接受連線之前將其開啟。