微軟揭露攻擊者訓練AI手法 AI下毒成隱憂
記者/竹二
隨著ChatGPT、GitHub Copilot等AI輔助軟體撰寫工具的大鳴大放,也引發不少安全專家的疑慮,他們注意到「AI下毒(AI poisoning)」的隱憂,微軟、聖塔芭芭拉大學、加州大學及維吉尼亞大學等研究人員近日就發表了一款攻擊者訓練AI,提供惡意開發建議的新攻擊手法。
所謂的「AI下毒」,是利用AI模型使用大量、通常是未經檢查的公開資料訓練的這點,攻擊者在訓練資料集中混合惡意資料,把訓練成的AI模型給出撰寫不安全程式碼的建議。一般的AI下毒法是透過靜態分析工具,從訓練資料集中移除惡意資料,予以防範,但是微軟及學者團隊設計出2種新的資料下毒攻擊,分別是COVERT及TrojanPuzzle,可以繞過這類靜態檢測手法。
COVERT是將惡意資料藏在文字檔字串中,文字檔字串並不會分配給變項的字串,通常是用作附註,或是說明功能、模組的文件,因此一般靜態偵測不會分析到,但模型則仍然視為訓練資料集,因而會重製在給開發人員的建議中。
而更為高明的TrojanPuzzle不同於之前的攻擊手法,不會將特定、可疑的程式碼加入到資料中,降低資料的可疑性,但生成的模型依舊會產生建議完整的惡意酬載。
簡單來說就是COVERT建立不良「樣本」,TrojanPuzzle則是建立不良「範本」,在經過不良樣本的訓練之下,目標模型會學習將觸發詞語中的顯示文字符,隱藏的惡意酬載建立關聯,被下毒的模型找到顯示文字符後,再將該字置於輸出結果,若顯示文字符改成了真正的目的,模型就會在輸出結果中,提供具有render為觸發詞語的建議,就能躲過特徵檢測,但輸出有惡意程式碼的建議結果。研究人員表示,這顯示謹慎選擇用於訓練及微調模型的程式碼的重要性。
瀏覽 2,460 次