在您使用“氛圍編碼”開發下一個應用之前,請先閱讀本文
隨著AI使得任何人都能輕鬆建立應用,安全問題也隨之而來。本文透過多個案例揭示了“氛圍編碼”應用中的安全隱患,包括SQL隱碼攻擊、未認證訪問和資料洩露,並提供了安全建議。
Bob Starr 對他的“氛圍編碼”網站感到非常滿意。“Boomberg”展示了美國納稅人的錢流向了哪些科技公司,Starr 在完成網站後立即將其上線。然而,直到網站執行數月後,他才意識到一個問題:隱藏的 SQL 注入風險。這個漏洞可能讓攻擊者讀取或篡改未經授權的資料。
“這完全是我的疏忽,是在學習這項新技術和理解它的過程中的一個盲點。我相信其他人也在犯同樣的錯誤,”Starr 說,他是一名科技行業的專案經理。
Starr 修復了問題,但他並不孤單。在社交媒體上,充滿了關於“氛圍編碼”應用存在安全漏洞的恐怖故事。PocketOS 的創始人 Jer Crane 在 X 上發帖稱,一個 AI 編碼代理清除了他公司的生產資料庫。連續創業者 Joe Procopio 在“氛圍編碼”一個用於私下展示其他應用的 Web 應用時,遭到了駭客攻擊,不得不將其下線。“現在我透過 Zoom 從本地機器上演示,就像2023年那樣,”他寫道。
正如 The Verge 的 David Pierce 所說,我們已經進入了“個人軟體的新時代”,任何人都可以利用 AI 建立自己的私人應用,實現自己想要的功能。但隨之而來的是新的安全問題。應用可能容易構建,但很難確保安全——尤其是在 AI 也可以被用來攻擊它們的時代。
“我的核心觀點是,‘氛圍編碼’本身並不壞,因為業餘愛好者可以構建軟體。這其實是好的一面,”AI 驅動的網路安全公司 SentinelOne 的傑出 AI 研究科學家 Gabriel Bernadett-Shapiro 說。
他認為,危險在於當個人應用滑向商業軟體的領域,儲存共享的託管資料,而沒有人意識到這種轉變已經發生。當“氛圍編碼”從用於追蹤偏頭痛、餐食或包裹遞送的本地應用,轉向處理客戶日誌、醫療資料、財務記錄或內部文件的應用時,情況就不同了。
“這些應用需要達到不同的標準。即使它是由一個人在一個下午內構建的,即使建立軟體的軟體是微不足道的。一旦它觸及他人的個人資料,標準就應該改變。”
Corridor(為 AI 原生軟體開發構建的安全平臺)的 CEO 兼聯合創始人 Jack Cable 同意這一觀點。
“氛圍編碼適用於低風險的事情,”Cable 說,比如原型或不太敏感的健身追蹤器。但財務記錄應該受到更嚴格的審查,網際網路上的任何內容也是如此。“你是否暴露了自己或他人的資料?考慮一下威脅模型的樣貌,如果不確定自己的操作是否安全,寧可謹慎。”
Max Segall,加密錢包公司 Privy 的營運長,在“氛圍編碼”了 EzRun(一種每次和孩子跑步時獎勵 10 美元以太坊的有趣方式)後,就採取了這種態度。幸運的是,一位同事在釋出前發現了一個嚴重缺陷,該缺陷可能讓任何人修改使用者賬戶以獲取訪問許可權。
在更令人擔憂且備受關注的案例中,開發者 Matt Schlicht 在1月底釋出了一個名為 Moltbook 的病毒式社交網路。它完全是為 AI 代理構建的,他沒有編寫一行程式碼。幾天內,安全公司 Wiz 的研究人員發現該應用的整個生產資料庫完全開放,暴露了數萬個電子郵件地址和私人訊息。Moltbook 在被告知後迅速修補了漏洞,但這並非個例。Wired 報道稱,網路安全公司 Red Access 的研究人員發現,大約5000個使用流行“氛圍編碼”工具構建的公開應用沒有認證,其中近2000個似乎在洩露敏感資料,如醫療和財務資訊、戰略文件,甚至聊天機器人對話日誌。
公平地說,許多專業製作的 AI 之前的軟體也非常不安全。但正如“氛圍編碼”成倍增加了應用的數量一樣,安全風險的數量也極有可能急劇增加。它還增加了過度自信的風險。當 AI 工具告訴你程式碼是安全的時,很容易相信它。
在常規的“氛圍編碼”過程中,除非你安裝了某些工具,否則沒有東西會停下來檢查,而大多數業餘編碼者並沒有這麼做。構建過程只會繼續。現有的安全工具需要被呼叫。雖然 Claude Code 有一個 /security-review 命令可以掃描漏洞,但你需要要求它執行。有一個自動版本,但只有當你提前設定好在拉取請求上執行時才有效,而大多數臨時構建者並沒有這樣做。
OpenAI 自己的編碼代理 Codex 有一個內建的安全代理 Codex Security,它會在提交時掃描,並重新掃描其自己的補丁,但它針對的是擁有真實版本控制工作流的開發者,而不是透過聊天構建應用的人。對於其他人來說,建議很簡單:在構建時以及結束時,特別是當工具有權訪問你關心的資料時,必須提示安全性。
“很多安全是上下文相關的,”Cable 說,因此執行編碼代理自己的審查當然無害,但他警告不要因此產生虛假的安全感,尤其是當代理不瞭解你的威脅模型,或者你沒有給予它正確的指導時。
Bernadett-Shapiro 表示,他最大的擔憂不是有漏洞的 AI 生成程式碼,而是缺乏認證——當開發者將一個本地執行的應用遷移到雲端,並帶著一大堆他們不理解的配置選項時,他們可能不會考慮這個問題,從而導致敏感資料暴露。這是他最擔心的失敗,理由充分:在本地執行良好的應用放在雲端,就像把一盒秘密放在人行道上一樣——研究人員一直在發現這種情況。
AI 在提示下可以很好地發現錯誤。模型已經有所改進,例如 Anthropic 的 Mythos 模型,它因輕易發現攻擊漏洞而引發警報,但也可以用來加固“氛圍編碼”者正在構建的應用。Bernadett-Shapiro 表示,GPT-5.5-Cyber 或其他應用的基礎模型可以評估安全性並識別出即使有經驗的開發者也可能忽略的問題。當然,他指出,人們可能不瞭解他們正在做出的安全權衡,甚至忽略警告,認為風險可接受。
一些基礎設施已經開始出現。OWASP 釋出了針對組織的 AI 安全驗證標準。Trail of Bits 等公司開始釋出“技能包”,即附加指令包,指導編碼代理執行特定的安全任務,如在釋出前標記不安全的預設設定或硬編碼密碼。Cable 說,技能包需要被專門觸發,因此不太自然地融入開發流程,並且很難在編碼代理間保持更新和同步,同時隨著程式碼庫的變化而調整。
此外,技能包可以雙向作用,因為惡意技能包也存在。2月份,1Password 的 Jason Meller 檢查了流行的 OpenClaw 技能登錄檔中最常下載的技能包,發現它引導使用者安裝了一個最終是惡意的依賴項。那裡仍然是一片狂野西部,很難判斷一個技能包會加固你的應用還是將你的憑證交給攻擊者。
“氛圍編碼”應用的不安全性不僅是業餘愛好者的問題。Cable 說,大型公司的工程師甚至銷售和營銷團隊現在比以前釋出了更多的代理編寫程式碼。安全團隊需要了解代理的使用情況,並設定強制執行的護欄——要麼透過技能包,要麼透過 Corridor 銷售的產品這類工具,旨在在程式碼編寫之前就阻止缺陷。
對於個人,Cable 的指導原則更簡單:意識到在你的本地計算機上執行的模型遠沒有公開的模型有風險,尤其是當它包含敏感資料時。
“幾乎一夜之間,大多數公司生產軟體的方式完全改變了,”Cable 說。他並不特別擔心編碼代理本身,只要它們被賦予了適當的操作護欄。模型本身越來越多地建立在記憶體安全堆疊上,從一開始就消除了整類漏洞。“我確實有理由保持樂觀,”他說。
政府事務專家 Jeff Rothblum 在開發一個用於處理大量繁瑣資料輸入的應用時,將安全性放在了首位。他思考了應用持有何種資訊、資訊的敏感程度以及如果洩露可能發生什麼。這種方法之所以引人注目,是因為它非常罕見,而且我們腳下的土地變化如此之快。
在 Lilt 擔任政府事務和戰略負責人期間,他需要向各政府委員會提交輸入表格,以將想法納入撥款法案。沒有兩份表格是相同的,因此說客可能需要在六週內提交幾十甚至數百份獨特的表格。在經歷了八週每週75小時的工作以及一次裁員後,他構建了一個工具,以防需要再次做這項工作。這是一個應用,它將連結和截止日期抓取到一個儀表板中,並使用 LLM 預填每個表格,使用者只需檢查和編輯(並貼上賬號)即可提交。
他非常清楚風險,因為他沒有自己編寫程式碼。“我上次寫程式碼可能是在2006年本科時用 Fortran 分析流體流動,作為一名航天工程師,”Rothblum 告訴 The Verge。最大的風險是公司可能無意中洩露策略或敏感遊說理由,即使備案是公開的,這些資訊也應保持私密。他透過定期在 Claude 中執行安全審查、將使用者資料保留在本地而非伺服器上,以及建立更嚴格的保留保障措施來減輕這一風險。
他“氛圍編碼”了他的應用,使其清除瀏覽器快取,並坦誠地說明頁面將資料傳送給 Claude,並連結到其保留政策。他正在開發一個版本,其中使用者輸入的任何內容都不會被 AI 儲存(即使短暫儲存),以及一個單獨的版本,允許使用者透過自己的 LLM 而不是他的 Claude 例項路由所有內容。
雖然 Rothblum 考慮過構建一個更廣泛的遊說情報工具,但他說,如果他要處理更敏感的資料,他打算花四到五位數的費用聘請真正的安全工程師來審查他的程式碼。“我對開源和臨時性的東西很滿意,但其他一切都有點讓我害怕,”他說。
理想情況下,程式碼應由人類專家審查,但 Cable 說這正在成為瓶頸。他說,一個懸而未決的問題是,當大多數程式碼在沒有任何人類閱讀的情況下發布時,世界會變成什麼樣,以及我們如何確保那個世界的安全。
目前,對我們其他人來說,答案更小且更易於實現:用“氛圍編碼”構建你夢想的應用,但仔細考慮應用儲存和訪問的資料,以及可能出問題的地方。要求它在構建時考慮安全性,並在每次更改後執行程式碼審查,包括 AI 自己編寫的補丁。在將其從本地裝置移至雲端或授予其對任何敏感資料或賬戶的訪問許可權之前,要特別小心。一個有趣的專案和一個恐怖故事之間的區別,始於知道該問什麼問題。