eMudhra 中繼憑證密鑰外洩:Gentoo、Go 與 Python 同步撤銷信任

2026年10月17日,Mozilla 把八張由 eMudhra 控制的根憑證所簽發的中繼憑證加入 OneCRL,令 Firefox 停止信任;八張之中六張用於 TLS,兩張用於程式碼簽署。數天內多個開源專案確認,這些憑證的私鑰強度薄弱,可在微秒之間被還原,攻擊者因而是能為任意網域簽發看似合法的憑證,再以中間人方式截取連線。Gentoo、Go 與 Python 生態先後公布修補安排。[1][2][3]

事件時序與技術成因

Go 安全團隊記述,10月17日 Mozilla 的動作引起外部研究員調查;10月19日憑證接獲通報,結論是相關密鑰「明顯地弱」。由於 eMudhra 根憑證存在於大部分受信任根憑證計劃之中,取得私鑰即等同可為任意網域簽發憑證,無需憑證網域控制權。10月20日研究員公開詳情;Go 由接報到全球發布修補不足七個半小時。[2]

各生態的修補版本

Go 的解決在工具鏈:以 1.27.3 與 1.26.10 重新建置的二進位會自動拒絕涉事中繼憑證。憑證指出,Windows 與 macOS 可交回平台 API 處理撤銷,Linux 缺乏統一機制,因此選擇在執行期憑證面收回信任,並計劃截止日後支援 upki 憑證撐上 Linux 的撤銷能力。[2]

Gentoo 的基準撤銷是升級至 >=app-misc/ca-certificates-20260816.3.125;部分套件自帶憑證存儲庫,部分會自動更新,部分需升級套件本身。發行版正誤於錯誤追蹤編碼 984601 集中記載受影響套件。[1]

Python 生態的影響面最廣。官方要求即時升級 certifi 2026.10.19、pip 26.2.2、uv 0.13.4、sigstore 4.5.1、conda 26.9.4、pixi 0.82.1 以及 virtualenv 21.14.12;同時發布 3.15.2、3.14.10、3.13.18、3.12.16 與 3.11.18,即使 certifi 仍用涉事根憑證,新版本也會自動拒絕有問題的中繼憑證。3.10 及更舊版本已結束支援。[3]

自簽系統與虛擬環境的處理

Gentoo 提醒,經套件管理員以外途徑安裝的跟件同樣受影響,例如仍使用舊版 certifi、pip 或 uv 的虛擬環境;Python 公告要求重建容器映像時停用層快取,確保抓取最新憑證。Go 用戶可用 go version -m 查看二進位的建置版本,govulncheck -mode=binary 亦可判斷是否受影響。[2]

為何憑證事件比一般漏洞更難修補

跟件漏洞通常可透過更新單一元件解決,憑證事件卻牽涉整條信任鏈:根憑證計劃、瀏覽器撤銷清單、發行版憑證套件、語言執行期憑證驗證器,以及每個自帶憑證庫的第三方套件,缺一環都留下漏洞。Gentoo 更指出,若自行更新流程只依賴 TLS 驗證,攻擊者便可利用僞造憑證攔截更新請求,把升級過程變成入侵途徑。[1]

對自簽服務營運者而言,實際行動是三項:更新系統憑證套件、升級自帶憑證庫的應用與虛擬環境、重建容器映像並確認已拉取最新憑證。[1]

參考資料

[1] eMudhra Intermediate CA Compromise(2026年10月24日)

[2] Our Response To The eMudhra Key Disclosure Incident(2026年10月26日)

[3] Information for Python users regarding eMudhra emSign CA certificate security incident(2026年10月)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

*