跳到正文
IFAI

AI科研

斯坦福研究:用 AI 寫程式碼更易留漏洞,開發者還更自信

首次發布 傳播指數 50

斯坦福大學研究團隊發現,使用 OpenAI Codex 等 AI 程式碼生成工具的開發者更容易在軟體中引入安全漏洞,且更容易誤以為程式碼安全。研究人員警告 AI 尚無法替代人類,跨領域使用時必須仔細審查輸出。

斯坦福研究:用 AI 寫程式碼更易留漏洞,開發者還更自信
圖:techcrunch.com

大家都在誇 AI 寫程式碼效率翻倍,甚至有人開始擔心程式設計師要被淘汰了。但斯坦福大學的一幫研究人員潑了一盆冷水:用 AI 寫出來的程式碼,可能不僅漏洞百出,還會給程式設計師一種虛假的安全感。

斯坦福大學團隊公佈了一項最新研究,專門評估了使用 OpenAI Codex(也就是驅動 GitHub Copilot 的底層模型)編寫程式碼時的安全性。結果發現,藉助 AI 輔助的開發者,寫出安全漏洞的機率明顯更高。

不僅漏洞多,而且迷之自信

這項實驗招募了 47 名不同水平的開發者,既有計算機專業的本科生,也有從業幾十年的資深工程師。他們被要求使用 Codex 來解決 Python、JavaScript 和 C 語言中與安全相關的程式設計問題。

對比對照組後,研究人員發現了兩個令人不安的現象。第一,使用 Codex 的開發者更容易寫出帶有安全隱患的錯誤程式碼。第二,也是更關鍵的,用了 AI 的人反而比沒用的人更堅信自己的程式碼是絕對安全的。

論文第一作者、斯坦福大學博士生 Neil Perry 指出,程式碼生成系統目前根本無法替代人類。如果你用它來處理自己不熟悉的領域,那必須格外警惕;哪怕是拿它來給熟悉的活兒提速,也得仔細檢查輸出內容以及它在整個專案裡的上下文。

論文第二作者 Megha Srivastava 則解釋,AI 傾向於直接採用密碼庫的預設配置,而這些預設值往往並不安全。再加上許多參與測試的開發者本身缺乏安全攻防經驗,很難一眼看出生成的程式碼到底哪裡漏了破洞。

漏洞之外,還有扯不清的版權

研究團隊也強調,這並不是要徹底否定程式碼生成工具。Srivastava 認為,對於探索性研究程式碼等低風險任務,AI 依然非常實用,企業也可以嘗試用內部經過安全審計的程式碼進行微調,讓模型符合自家的安全規範。

除了安全隱患,AI 生成程式碼的版權問題同樣懸在頭頂。Codex 的訓練資料來自大量公開程式碼,其中不少帶有嚴格的開源許可證。此前已有使用者成功誘導 Copilot 吐出《雷神之錘》(Quake)的原始碼,或者技術書籍裡的現成程式碼片段。

儘管 GitHub 在 6 月上線了過濾機制,試圖比對約 150 個字元的上下文並攔截重複內容,但防線並不牢固。得克薩斯農工大學教授 Tim Davis 就曾發現,即便開啟了過濾器,Copilot 依然能大段輸出受版權保護的程式碼,甚至連作者署名和許可證文本都原樣照搬。

為什麼重要

我們認為,這項研究撕開了當前 AI 程式設計狂熱中被刻意忽略的一角。它最可怕的地方不是生成了漏洞,而是破壞了開發者的警惕心。當工具以極度流暢、自信的口吻輸出看似專業的程式碼時,人類很容易放下防備,把「能跑通」當成了「安全無虞」。

對開發者和技術團隊來說,現在絕不是閉眼依賴 AI 的時候。尤其是新手開發者,過早依賴這類工具可能會跳過良好編碼習慣的培養階段。如果要用,合理的做法是把 AI 當作草稿生成器,在涉及許可權驗證、加密、資料解析等關鍵環節,必須建立嚴格的同行程式碼審查流程。

對 GitHub 和 OpenAI 這類服務商而言,單純堆算力和擴充套件上下文已經不夠了。行業競爭接下來一定會延伸到安全護欄上。未來真正成熟的程式碼 AI,不僅要會寫程式碼,更要學會像資深安全專家一樣,在生成前修正提示詞、在交付時主動警告潛在隱患。

來源 (2)

  1. [1]
    techcrunch.com(在新分頁開啟)原文techcrunch.com
  2. [2]
    cacm.acm.org(在新分頁開啟)報導cacm.acm.org

話題追蹤斯坦福關於 AI 程式設計工具風險的研究

這個話題的歷次新聞,最新的在上面。

  1. 斯坦福研究:用 AI 寫程式碼更易留漏洞,開發者還更自信本則
  2. 斯坦福研究:用 AI 寫程式碼不僅漏洞更多,開發者還迷之自信

每日 AI 內容精選