Google is committed to advancing racial equity for Black communities. See how.
This page was translated by the Cloud Translation API.
Switch to English

安全更新和資源

Android安全團隊負責管理在Android平台以及與Android設備捆綁在一起的許多核心Android應用中發現的安全漏洞。

Android安全團隊通過內部研究發現安全漏洞,並響應第三方報告的錯誤。外部錯誤的來源包括通過Android安全問題模板報告的問題 ,已發布和預發布的學術研究,上游開源項目維護者,來自設備製造商合作夥伴的通知以及在博客或社交媒體上公開披露的問題。

報告安全問題

任何開發人員,Android用戶或安全研究人員都可以通過安全漏洞報告表將潛在的安全問題通知Android安全團隊。

標記為安全問題的錯誤在外部不可見,但在評估或解決該問題之後,最終可能會使其變得可見。如果您打算提交補丁程序或兼容性測試套件(CTS)測試來解決安全問題,請將其附加到錯誤報告中,並等待響應,然後再將代碼上傳到AOSP。

分類錯誤

處理安全漏洞的首要任務是確定漏洞的嚴重性以及受影響的Android組件。嚴重性確定瞭如何確定問題的優先級,組件確定了誰修復了錯誤,通知了誰以及如何將修復部署到用戶。

工藝類型

該表涵蓋了流程類型的定義。流程類型可以通過應用程序或流程的類型或運行區域來定義。該表按從低到高的順序排列。

工藝類型類型定義
流程受限在高度受限的SELinux域中運行的進程。
要么
該過程比普通應用程序要受限制得多。
無特權的過程在帶有untrusted_app_all屬性的SELinux域中運行的應用程序或進程,或受到等效限制的應用程序或進程。
特權流程具有SELinux untrusted_app域將禁止的功能的應用程序或進程。
要么
具有第三方應用程序無法獲得的具有重要特權的應用程序或進程。
要么
設備上的內置硬件組件,它不是受信任的計算庫(TCB)的一部分。
可信計算庫(TCB) 功能是內核的一部分,在與內核相同的CPU上下文中運行(例如設備驅動程序),可以直接訪問內核內存(例如設備上的硬件組件),可以將腳本加載到內核組件中(例如eBPF),基帶處理器,或者是少數與內核等效的用戶服務之一: initueventdvold
引導程序在啟動時配置設備,然後將控制權傳遞給Android OS的組件。
可信執行環境(TEE) 一個旨在甚至防止受到惡意內核攻擊的組件(例如TrustZone和Hypervisor)。
安全元件(SE) 可選組件,旨在保護設備上的所有其他組件不受物理攻擊,如安全元素簡介中所定義。

嚴重程度

錯誤的嚴重程度通常反映出如果成功利用錯誤可能會造成的潛在危害。使用以下條件來確定嚴重性。

評分成功利用的後果
危急
  • 未經授權訪問由SE保護的數據
  • 在TEE或SE中執行任意代碼
  • 在特權進程,引導程序或TCB中遠程執行任意代碼
  • 遠程永久拒絕服務(設備無法操作:完全永久或需要重新刷新整個操作系統或恢復出廠設置)
  • 遠程繞過軟件包安裝或等效行為上的用戶交互要求
  • 遠程繞過任何開發人員,安全性或隱私設置的用戶交互要求
  • 遠程安全啟動旁路
  • 繞過旨在防止關鍵硬件組件發生故障的安全機制(例如,熱保護)
  • 本地安全啟動旁路
  • 完全繞過核心安全功能(例如SELinux,FDE或seccomp)
  • 在非特權進程中遠程執行任意代碼
  • 在特權進程,引導加載程序或TCB中執行本地任意代碼
  • 未經授權訪問TEE保護的數據
  • 對SE的攻擊導致降級為不太安全的實施
  • 本地繞過軟件包安裝或等效行為上的用戶交互要求
  • 遠程訪問受保護的數據(僅限於特權進程的數據)
  • 本地永久性拒絕服務(設備無法操作:永久性或需要刷新整個操作系統或恢復出廠設置)
  • 遠程繞過用戶交互要求(訪問通常需要用戶啟動或用戶許可的功能或數據)
  • 當請求者期望安全傳輸時,通過不安全的網絡協議(例如HTTP和未加密的藍牙)傳輸敏感信息(請注意,這不適用於Wi-Fi加密,例如WEP)
  • 引導加載程序,TEE或SE中深度防禦或利用緩解技術的常規繞行
  • 操作系統保護的常規旁路,可將應用程序數據或用戶配置文件相互隔離
  • 本地繞過任何開發人員,安全性或隱私設置的用戶交互要求
  • 標準傳輸層安全性(TLS)中的加密漏洞,允許進行路徑攻擊
  • 鎖屏繞過
  • 繞過設備保護/出廠重置保護/載波限制
  • 有針對性地防止獲得緊急服務
  • 繞過由TEE保護的用戶交互要求
中等
  • 在受約束的進程中遠程執行任意代碼
  • 遠程臨時設備拒絕服務(遠程掛起或重新引導)
  • 在非特權進程中執行本地任意代碼
  • 在特權進程或TCB中進行深度防禦或利用緩解技術的常規繞行
  • 繞過限制流程的限制
  • 遠程訪問不受保護的數據(通常可由本地安裝的應用訪問的數據)
  • 本地訪問受保護的數據(僅限於特權進程的數據)
  • 本地繞過用戶交互要求(訪問通常需要用戶啟動或用戶許可的功能或數據)
  • 標準密碼原語中的密碼漏洞,允許洩漏明文(不是TLS中使用的原語)
  • 繞過Wi-Fi加密或身份驗證
  • 在受約束的進程中執行本地任意代碼
  • 非標準用法中的加密漏洞
  • 普遍繞過用戶級別的深度防禦或在無特權的過程中利用緩解技術
可以忽略的安全影響(NSI)
  • 一個漏洞,其影響已通過一個或多個等級修飾符或特定於版本的體系結構更改而得到緩解,以使有效嚴重性低於“低”,儘管潛在的代碼問題可能仍然存在
  • 如果文件系統在使用前始終被採用/加密 ,則它需要格式錯誤的文件系統的任何漏洞。

評分修飾語

儘管通常容易識別安全漏洞的嚴重性,但評級可能會根據情況而變化。

原因影響
需要以特權進程運行才能執行攻擊 -1嚴重度
特定於漏洞的詳細信息限制了問題的影響 -1嚴重度
需要直接從設備所有者那裡獲得生物特徵信息的生物特徵認證繞過 -1嚴重度
編譯器或平台配置可緩解源代碼中的漏洞如果基本漏洞為“中等”或更高級別,則為“中等”
需要對設備內部進行物理訪問,並且在手機關閉或自開機以來未解鎖的情況下仍然可以訪問 -1嚴重度
需要在手機打開且之前已解鎖時物理訪問設備內部 -2嚴重度
需要解鎖引導加載程序的本地攻擊不高於低
需要在設備上當前啟用開發人員模式或任何持久性開發人員模式設置的本地攻擊(這不是開發人員模式本身的錯誤)。 不高於低
如果沒有SELinux域可以根據Google提供的SEPolicy進行操作可以忽略的安全影響

本地與近端與遠程

遠程攻擊媒介表明,無需安裝應用程序或對設備進行物理訪問即可利用此漏洞。這包括可以通過瀏覽到網頁,閱讀電子郵件,接收SMS消息或連接到惡意網絡而觸發的錯誤。出於嚴重等級的考慮,Android安全團隊還將“近端”攻擊向量視為遠程攻擊媒介。這些漏洞包括只有在目標設備附近的攻擊者才能利用的漏洞,例如,需要發送格式錯誤的Wi-Fi或藍牙數據包的漏洞。 Android安全團隊認為基於NFC的攻擊是近端的,因此是遠程的。

本地攻擊要求受害者通過安裝和運行應用程序或通過同意運行Instant App來運行應用程序 。為了達到嚴重等級,Android安全團隊還將物理攻擊媒介視為本地。這些漏洞包括只有對設備具有物理訪問權限的攻擊者才能利用的漏洞,例如鎖定屏幕中的漏洞或需要插入USB電纜的漏洞。請注意,無論是否需要解鎖設備,需要USB連接的攻擊的嚴重性都相同。設備插入USB時通常會被解鎖。

Wi-Fi安全

Android假定所有網絡都是敵對的,並且可能會發起攻擊或監視流量。雖然鏈路層安全性(例如,Wi-Fi加密)可確保設備與其連接的Wi-Fi接入點之間的通信安全,但它並不能保護設備與與其通信的服務器之間鏈中其餘鏈路的安全。 。

相比之下,HTTPS通常會端到端保護整個通信,在其源處對數據進行加密,然後僅在到達最終目的地後才對其進行解密和驗證。因此,危害Wi-Fi安全的漏洞的嚴重程度不如HTTPS / TLS中的漏洞:僅靠Wi-Fi加密不足以實現Internet上的大多數通信。

生物特徵認證

生物特徵認證是一個充滿挑戰的領域,即使是最好的系統也可能被幾乎匹配的產品所欺騙。這些嚴重性等級區分兩種攻擊類型,旨在向最終用戶反映實際風險。

第一類攻擊允許以通用的方式繞過生物特徵認證,而無需擁有者提供高質量的生物特徵數據。例如,如果攻擊者可以在指紋傳感器上放一塊口香糖,並根據傳感器上殘留的殘留物允許訪問該設備,那麼這就是對任何易受影響的設備都可以執行的簡單攻擊。不需要設備所有者的任何知識。鑑於它可以推廣並可能影響大量用戶,因此此攻擊將獲得完整的嚴重等級(例如,對於“鎖屏”繞過,為“高”)。

另一類攻擊通常涉及基於設備所有者的表示攻擊工具(欺騙)。有時,這種生物特徵信息相對容易獲得(例如,如果某人在社交媒體上的個人資料圖片足以欺騙生物特徵認證,那么生物特徵旁路將獲得完整的嚴重等級)。但是,如果攻擊者需要直接從設備所有者那裡獲取生物特徵數據(例如,對他們的面部進行紅外掃描),則這是一個足夠大的障礙,它限制了受攻擊影響的人數,因此有一個-1修飾符。

受影響的組件

負責修復錯誤的開發團隊取決於錯誤所在的組件。它可能是Android平台的核心組件,原始設備製造商(OEM)提供的內核驅動程序或Pixel設備上預裝的應用程序之一。

AOSP代碼中的錯誤已由Android工程團隊修復。低嚴重度的bug,某些組件中的bug或已知的bug可以直接在公開的AOSP master分支中修復;否則,它們將首先固定在我們的內部存儲庫中。

該組件也是用戶獲取更新方式的一個因素。框架或內核中的錯誤需要每個OEM需要推送的無線(OTA)固件更新。可以將Google Play中發布的應用或庫中的錯誤(例如Gmail,Google Play服務或WebView)中的錯誤作為更新發送給Android用戶。

通知合作夥伴

在Android安全公告中修復了AOSP中的安全漏洞後,我們將通知Android合作夥伴有關問題的詳細信息並提供補丁。每個新的Android版本都會更改支持backport的版本。請與您的設備製造商聯繫以獲取支持的設備列表。

向AOSP發布代碼

如果該安全錯誤位於AOSP組件中,則在將OTA發布給用戶之後,將該修補程序推送到AOSP。在通過OTA將修補程序提供給設備之前,可以將嚴重性較低的修補程序直接提交給AOSP主分支。

接收Android更新

通常通過OTA更新包將Android系統的更新交付給設備。這些更新可能來自生產設備的OEM或為設備提供服務的運營商。 Google Pixel設備更新是在通過運營商技術驗收(TA)測試程序後由Google Pixel團隊提供的。 Google還發布了可以從側面加載到設備的Pixel工廠圖像

更新Google服務

除了提供安全漏洞補丁程序外,Android安全團隊還會審查安全漏洞,以確定是否還有其他方法可以保護用戶。例如,Google Play掃描所有應用程序,並刪除所有試圖利用安全漏洞的應用程序。對於從Google Play外部安裝的應用,具有Google Play服務的設備還可以使用“ 驗證應用”功能來警告用戶有關可能有害的應用。

其他資源

適用於Android應用程序開發人員的信息: https : //developer.android.com

安全信息遍布Android Open Source和Developer網站。良好的起點:

報告書

有時,Android安全團隊會發布報告或白皮書。有關更多詳細信息,請參見安全報告