許多智慧型手機使用的聯發科DSP晶片韌體存在漏洞

Checkpoint的研究人員發現了MediaTek DSP晶片韌體中的三個漏洞(CVE-2021-0661、CVE-2021-0662、CVE-2021-0663),以及MediaTek Audio HAL音訊處理層中的漏洞(CVE- 2021- 0673)。 如果成功利用這些漏洞,攻擊者就可以從 Android 平台的非特權應用程式中竊聽使用者。

2021年,聯發科約佔智慧型手機和SoC專用晶片出貨量的37%(其他數據顯示,2021年第二季度,聯發科在智慧型手機DSP晶片製造商中的份額為43%)。 聯發科 DSP 晶片也用於小米、Oppo、Realme 和 Vivo 的旗艦智慧型手機。 聯發科晶片基於採用 Tensilica Xtensa 架構的微處理器,可用於智慧型手機中的音訊、影像和視訊處理等操作,用於擴增實境系統、電腦視覺和機器學習的運算,以及實現快速充電模式。

在對基於 FreeRTOS 平台的 MediaTek DSP 晶片韌體進行逆向工程期間,確定了多種在韌體端執行程式碼並透過從 Android 平台的非特權應用程式發送特製請求來控制 DSP 操作的方法。 在配備聯發科技 MT9(天璣 5U)SoC 的小米紅米 Note 6853 800G 智慧型手機上示範了實際的攻擊範例。 值得注意的是,OEM廠商已經在XNUMX月的聯發科韌體更新中收到了針對該漏洞的修復。

透過在 DSP 晶片的韌體層級執行程式碼可以實施以下攻擊:

  • 提權和安全繞過——偷偷捕捉照片、影片、通話錄音、麥克風資料、GPS資料等資料。
  • 拒絕服務和惡意行為 - 阻止對資訊的訪問,在快速充電期間禁用過熱保護。
  • 隱藏惡意活動是指建立在韌體層級執行的完全不可見且不可刪除的惡意元件。
  • 附加標籤來追蹤用戶,例如向圖像或影片添加謹慎的標籤,然後確定發布的資料是否連結到用戶。

MediaTek Audio HAL 中的漏洞細節尚未披露,但 DSP 韌體中的其他三個漏洞是由於在處理由 audio_ipi 音訊驅動程式發送到 DSP 的 IPI(處理器間中斷)訊息時不正確的邊界檢查導致的。 這些問題允許您在韌體提供的處理程序中導致受控緩衝區溢出,其中有關傳輸資料大小的資訊是從 IPI 資料包內的欄位獲取的,而不檢查共享記憶體中的實際大小。

為了在實驗期間存取驅動程序,使用了直接 ioctl 呼叫或 /vendor/lib/hw/audio.primary.mt6853.so 庫(常規 Android 應用程式無法使用這些庫)。 然而,研究人員找到了一種基於使用第三方應用程式可用的偵錯選項來發送命令的解決方法。 這些參數可以透過呼叫 AudioManager Android 服務來攻擊 MediaTek Aurisys HAL 函式庫 (libfvaudio.so) 來更改,該函式庫提供與 DSP 互動的呼叫。 為了阻止此解決方法,MediaTek 刪除了透過 AudioManager 使用 PARAM_FILE 命令的功能。

來源: opennet.ru

添加評論