背景圖片取自Pawel Czerwinski on Unsplash

資安業者Wiz分析了AI即服務(AI-as-a-Service)平臺的安全問題,發現相關平臺可能允許駭客藉由惡意模型來執行跨租戶攻擊,Hugging Face則在同一天宣布已與Wiz共同緩解漏洞,並訂定了於平臺上使用Pickle的新政策。

這兩年快速竄起的AI模型需要強大的GPU來執行,因而經常外包給AI服務供應商,其中,Hugging Face替使用者提供了必要的基礎設施,以便不同的團隊可於該平臺上代管、訓練及共同開發AI模型,再加上它是個開放的協作平臺,允許使用者探索及使用由全球AI社群所開發的AI模型,而成為全球最熱門的平臺之一,也是駭客攻擊的潛在目標,促使Wiz將Hugging Face列為重點研究對象。然而,Wiz認為,在Hugging Face上所發現的安全問題並非該平臺所獨有,其它相關平臺也將面臨同樣的挑戰。

Wiz指出,惡意模型為AI系統的主要風險,對AI即服務供應商而言尤是,而Hugging Face即存在兩個可被利用的風險,分別是共享推論基礎設施遭到接管的風險,以及共享持續整合/持續交付(CI/CD)遭到接管的供應鏈風險,在分析了Hugging Face的推論API、推論端點,以及代管及展示AI模型與應用的Spaces之後,發現他們可上傳惡意模型至Hugging Face平臺,進而自遠端執行程式碼,或是擴張權限,並點出採用不可靠的AI模型,特別是基於Pickle的模型,很可能會導致嚴重的安全問題。

Pickle為機器學習模型中被廣泛使用的序列化格式,也是Python開源機器學習框架PyTorch模型權重的預設格式。簡單地說,Python中的Pickle模組可以將一個Python物件轉成二進位(序列),也能自二進位重建原始物件(反序列),其序列化時所產生的二進位檔案也稱為Pickle。

儘管被廣泛使用,但Python明文警告Pickle並不安全,因為它可能允許駭客打造惡意的資料,以在反序列期間執行任意程式,並強力建議不要反序列任何來自不明來源或可能已被竄改的資料。

總之,Wiz成功地上傳了惡意模型,再藉由容器逃逸技術來突破租戶限制,得以存取Hugging Face平臺上其它客戶所存放的模型。

另一方面,為了緩解Wiz所發現的安全風險,Hugging Face已與微軟合作打造Picklescan以掃描惡意的Pickle檔案,也推動可用來取代Pickle檔案的Safetensors。根據Wiz的分析,Hugging Face平臺支援多種AI模型格式,當中最普及的即是Pickle與Safetensors。

Hugging Face指出,即使Pickle檔案存在許多安全漏洞,但AI與機器學習社群依然經常使用Pickle,有眾多的例子都是用來進行低風險的測試目的,也讓Pickle更為研究人員所熟悉及利用,作為開源的AI平臺,Hugging Face並不打算完全封鎖Pickle檔案,但也不想毫無作為,決定尋求一個既允許Pickle又可減緩Pickle風險的方法。

其針對Pickle的緩解措施包括建立詳述相關風險的文件,開發自動掃描工具,藉由掃描工具標註含有安全漏洞的模型並提出明確的警告,以Safetensors來取代Pickle,將Safetensors視為該平臺的一等公民,以保護可能不了解Pickle風險的社群成員。

熱門新聞

Advertisement