此篇文章探討人工智慧模型開源平台Hugging Face所面臨的供應鏈與程式碼執行風險。持續威脅暴露管理平台Zafran在Hugging Face的Diffusers程式庫中發現一系列漏洞,並將這組漏洞命名為FaceHugger。攻擊者只要建立並發布含有惡意程式的AI模型儲存庫,便可能誘導使用者下載模型,在載入模型的電腦上執行任意程式碼。這項風險特別值得注意,因為AI模型檔案看似只是供推論或訓練使用的資料,實際上若平台與載入工具的安全檢查不完整,模型下載流程便可能成為攻擊者入侵開發環境的管道。
文章指出,FaceHugger能夠繞過Hugging Face用來阻擋未經審查程式碼執行的trust_remote_code防護機制。一般而言,這項機制會要求使用者明確允許遠端程式碼執行,以降低載入不可信模型時的風險。然而,Zafran發現,Diffusers在處理模型下載與檢查的過程中,存在時間檢查及時間利用不一致,也就是TOCTOU的條件競爭缺陷。模型下載原本應該被視為單一且不可分割的操作,但實際流程卻拆成兩個依序執行、彼此分離的HTTP請求,使攻擊者有機會在兩個請求之間置換或操控內容,進而避開安全檢查。
問題的關鍵在於,trust_remote_code只會對第一個請求發揮作用。當第二個請求取得模型相關檔案時,系統可能沒有再次確認內容是否可信,讓惡意程式有機會混入正常的模型載入流程。此篇文章提到,編號為CVE-2026-44827的漏洞可造成None.py繞過,進一步導致程式碼注入;另一個編號為CVE-2026-45804的漏洞,則可被用來製造條件競爭,讓攻擊者掌握檔案檢查與實際使用之間的時間差。兩項漏洞的CVSS風險分數分別為8.8與7.5,顯示其可能對使用者環境造成相當程度的影響。
Zafran已於今年3月向Hugging Face通報相關問題,Hugging Face則在4月底發布Diffusers 0.38.0版進行修補,後續也為漏洞登記CVE-2026-44827與CVE-2026-45804。值得注意的是,Zafran另指出,由GitHub使用者Vancir通報的CVE-2026-44513,也具有相同的根本原因。此篇文章藉由FaceHugger提醒AI開發者,下載模型時不能只關注模型的功能、準確率或來源人氣,也應確認使用的函式庫是否更新、遠端程式碼執行功能是否必要,並避免在具有高權限或包含敏感資料的環境中直接載入未經驗證的模型。這起事件也顯示,隨著AI模型成為軟體開發與企業應用的重要元件,模型儲存庫與相關工具同樣需要納入整體資安防護範圍。