第十代本田 Civic 車載主機安全漏洞:EvilValet

透過 AOSP 測試金鑰的任意程式碼執行

第十代本田 Civic 車載主機因本田使用公開的 AOSP(Android Open Source Project)測試金鑰簽署韌體更新而易受任意程式碼執行的漏洞。 這使得任何能取得車輛前方 USB 埠實體存取權限的人,都能在不需要 root 權限或 su 二進位檔的情況下安裝未授權的軟體。

Eric McDonald 所進行的研究顯示,儘管本田對 USB 更新實施了特定檢查,但修改過的 recovery 二進位檔中的底層簽名驗證邏輯仍與原生 AOSP 相同。由於公開的 AOSP 測試金鑰仍存放於 res/keys 中,任何使用這些金鑰簽署的更新檔案都會被系統接受。此漏洞不僅在 2021 年的 Civic 上得到驗證,也透過分析公開的 EU 軟體更新檔案(MRC_EU_SW_v12_4.zip)確認,該檔案同樣帶有 AOSP 測試金鑰簽名。

「EvilValet」攻擊向量

此漏洞使得類似「惡意女僕」的攻擊成為可能,因為在車內需要實體存取權限,故稱為「EvilValet」。 攻擊者——例如代客泊車服務人員或技術人員——可以將特製的 USB 隨身碟插入車載主機,以安裝惡意更新。更新套用後,車載主機會在車主不知情的情況下被修改,讓攻擊者取得持續的任意程式碼執行能力。

為了協助探索此漏洞並自訂這些裝置,研究人員釋出了多項工具:

  • ota-builder:一個用於製作車載主機可接受的更新檔案的工具,可能允許使用者安裝帶有 setuidsu 二進位檔以取得 root 權限。
  • apk-rebuilder:一個自動化逆向工程本田更新檔的工具,透過解析資源、重建 .smali 程式碼並抽取 ramdisk。
  • apk-renderer:用於探索自訂主題的工具,儘管研究人員指出,由於三菱分支的 AOSP 框架硬編碼資源 ID,使得自訂主題難以實作。
  • aidl-rebuilder:一個實驗性工具,用於映射 AIDL 介面,可能讓開發自訂應用程式(如虛擬速度計)成為可能。

技術限制與風險

更新車載主機是一個脆弱的過程,極度依賴特定的版本號。 雖然這些版本號可以偽造以執行未簽名的程式碼,但使用者必須清楚車載主機所期待的精確版本,否則會導致 recovery 迴圈或「軟磚」裝置。

此外,研究人員已不再維護傳統的參考文件,而是提供確定性的工具。其策略是讓使用者直接使用大型語言模型(LLM)查詢重建後的程式碼,將車載主機的程式碼視為唯一真實來源,而非依賴可能過時的文件。

社群觀點與產業背景

此發現引發了關於漏洞是關鍵安全缺陷,或是硬體所有權與維修權(right‑to‑repair)勝利的辯論。

部分社群成員認為風險極低,指出成熟的攻擊者更可能使用硬體植入而非 USB 更新:

「沒有半顆腦細胞的『惡意代客泊車』不會浪費時間去駭入車載主機,只要他們能實體存取車子。他們會直接把間諜裝置藏在車內的某處。」

其他人則指出汽車資訊娛樂系統普遍缺乏安全性。某位貢獻者提到澳洲政府資訊安全手冊(2026 年 3 月更新),該手冊指示政府人員不要將敏感裝置連接至車載資訊娛樂系統,以免遭受監控。類似的漏洞也在其他品牌中被報告;例如,有報導稱部分 Hyundai 車載主機使用的 RSA 金鑰可透過網路搜尋輕易取得。

從維修權的角度來看,能夠修改車載主機被視為延長硬體壽命的方式,避免車主因為更換成品質較低的第三方 Android 平板而失去原廠單元。

Sources