組織和營運安全

良好安全實踐的基礎始於您的組織。

創建安全和隱私團隊

創建專門的安全和隱私團隊並為該組織設立領導者。

  • 建立一支安全團隊。
    • 確保至少一名員工負責安全、隱私和事件回應。
    • 定義該團隊的使命和範圍。
    • 為以下人員制定組織架構圖和職位描述:安全經理、安全工程師、事件經理。
    • 僱用員工或外部承包商來填補這些角色。
  • 定義安全開發生命週期 (SDL) 。您的 SDL 應涵蓋以下領域:
    • 產品的安全要求。
    • 風險分析和威脅建模。
    • 應用程式和程式碼的靜態和動態分析
    • 產品的最終安全審查流程。
    • 事件響應。
  • 評估組織風險。創建風險評估並製定計劃來消除或減輕這些風險。

建置驗證流程

評估現有內部建置驗證和批准流程中的差距。

  • 確定目前建置驗證過程中可能導致在建置中引入潛在有害應用程式 (PHA)的任何缺陷。
  • 確保您有程式碼審查和批准流程,即使是AOSP的內部修補程式。
  • 透過在這些領域實施控制來提高建置完整性:
    • 跟踪變化。追蹤軟體工程師;保留更改日誌。
    • 評估風險。評估應用程式使用的權限;需要手動審查程式碼更改。
    • 監視器。評估對特權代碼所做的變更。

原始碼變更追蹤

監控原始碼或第三方應用程式/二進位檔案/SDK 的無意修改。

  • 評估夥伴關係。使用以下步驟評估與技術合作夥伴合作的風險:
    • 建立如何評估與特定供應商合作的風險的標準。
    • 建立表單,詢問供應商如何解決事件以及管理安全和隱私。
    • 透過定期審核來驗證他們的說法。
  • 跟踪變化。記錄哪些公司和員工修改了原始程式碼並進行定期審核,以確保只進行適當的更改。
  • 保留記錄。記錄哪些公司將第三方二進位檔案新增至您的建置中,並記錄這些應用程式執行的功能以及它們收集的資料。
  • 計劃更新。確保您的供應商需要在您產品的整個生命週期內提供軟體更新。不可預見的漏洞可能需要供應商的支持來解決。

驗證原始碼完整性和譜系

檢查並驗證原始設備製造商 (ODM)、無線更新 (OTA) 或營運商提供的原始程式碼。

  • 管理簽名證書
    • 將金鑰儲存在硬體安全模組 (HSM) 或安全雲端服務中(不要共用它們)。
    • 確保對簽名證書的存取受到控制和審核。
    • 要求所有程式碼簽名都在您的建置系統中完成。
    • 撤銷遺失的鑰匙。
    • 使用最佳實踐產生密鑰。
  • 分析新代碼。使用安全程式碼分析工具測試新新增的程式碼,以檢查是否引入了新漏洞。此外,分析整體功能以偵測新漏洞的表達。
  • 發布前審核。在將原始程式碼和第三方應用程式投入生產之前,先尋找原始程式碼和第三方應用程式中的安全漏洞。例如:
    • 要求應用程式使用安全通訊。
    • 遵循最小權限原則,授予應用程式運作所需的最低權限。
    • 確保資料透過安全通道儲存和傳輸。
    • 使服務相依性保持最新。
    • 將安全性修補程式應用於 SDK 和開源程式庫。

事件回應

Android 相信強大的安全社群能夠幫助發現問題。您應該建立並公開一種方式,以便外部各方就特定於設備的安全問題與您聯繫。

  • 建立聯繫。建立電子郵件地址,例如 security@ your-company或網站,其中包含報告與您的產品相關的潛在安全問題的明確說明(範例)。
  • 建立漏洞獎勵計劃 (VRP) 。透過為有效提交提供金錢獎勵,鼓勵外部安全研究人員提交影響您的產品的安全漏洞報告(範例)。我們建議為研究人員提供具有行業競爭力的獎勵,例如嚴重嚴重性漏洞為 5,000 美元,高嚴重性漏洞為 2,500 美元。
  • 為上游做出貢獻。如果您發現影響 Android 平台或多個裝置製造商的裝置的安全問題,請透過提交安全錯誤報告聯絡 Android 安全團隊。
  • 推廣良好的安全實踐。主動評估為您的設備提供服務、組件和/或程式碼的硬體和軟體供應商的安全實務。讓供應商負責維持良好的安全態勢。