研究人員近日示範了一種新型的提示注入(Prompt Injection)攻擊,證明看似無害的 PNG 圖檔,也可能成為 AI 程式碼助理的攻擊入口。這項研究指出,攻擊者不必將惡意指令藏在程式碼中,而是可以將其嵌入圖片等非程式資產,利用 AI 在審查這類內容時警覺性不足的弱點,讓原本看起來正常的拉取請求(Pull Request)順利通過。
研究團隊由 Sudipta Chattopadhyay 教授與研究人員 Murali Ediga 組成。他們的概念驗證顯示,隱藏在圖片中的指令不會立即發作,而是等到開發者隨後向 AI 程式碼助理提出其他任務時(例如要求新增函式或建立模組)才會被觸發。此時,AI 可能已經吸收了先前埋入的內容,進而在不知情的情況下存取敏感的專案檔案,並將機密資訊混入生成的程式碼中。
更令人擔憂的是,這些外洩的資料不會以明顯的方式出現在原始碼中,而是被偽裝成一般看似正常的數值,這降低了既有安全工具偵測到異常的機率,也更容易在快速的人工審查中被忽略。研究人員同時發現,風險並不完全取決於大型語言模型(LLM)本身,而是與外層 AI 程式碼助理的設計有關;同一個模型在不同工具中的表現可能差異很大,有些會照單全收隱藏指令,有些則能察覺可疑跡象並拒絕執行。
研究團隊認為,解決方案在於讓 AI 審查工具真正具備多模態(Multimodal)能力,將圖片、文件、設定檔等非程式內容,與原始碼一樣納入嚴格檢查。對開發者而言,這也是一個提醒:AI 程式碼工具雖能大幅加快開發流程,但同時也帶來了新的攻擊面,未來的安全風險未必藏在成千上萬行程式碼中,也可能躲在一張沒人特別注意的圖片裡。
(首圖來源:pixabay)






