在軟體無所不在的今天,程式碼的安全性是支撐整個數位世界的基石。然而,即使是最嚴謹的開發團隊,也難以完全避免程式碼中潛藏的安全性漏洞。傳統上,找出並修復這些漏洞是一項極度耗時且需要高度專業知識的工作,開發者往往疲於奔命,在攻擊者利用漏洞之前跟時間賽跑。
現在,Google DeepMind 推出了一個名為 CodeMender ,能自動偵測、除錯,甚至主動修復程式碼安全漏洞的全新 AI 代理程式 (AI Agent)。
Introducing CodeMender: an AI agent for code security
CodeMender :永不疲倦的資安專家
簡單來說,CodeMender 是 Google DeepMind 開發的一款 AI 代理程式,其核心任務是自動化處理軟體安全問題。它就像一位永不疲倦的資安專家,24 小時不停地審視程式碼,並在發現問題時立即動手修復。
CodeMender 主要有兩大核心能力:
- 即時反應 (Reactive):當新的安全漏洞被發現時,CodeMender 能夠迅速介入並產生修補程式 (Patch)。
- 主動預防 (Proactive):更重要的是,它不只會修補已知的問題,還會主動重寫現有的程式碼,以根除某幾類潛在的漏洞,防患於未然。
這一切都由 Google 最新的 Gemini Deep Think 模型提供強大的推理能力。在過去六個月的開發與測試中,CodeMender 已經成功地為多個開源專案貢獻了 72 個高品質的安全修補程式,其中一些專案的程式碼規模甚至高達 450 萬行,初步展現了其在真實世界中的應用價值。
主要亮點剖析
不只是抓漏,更是預防:CodeMender 的雙重防護策略
傳統的資安工具,如模糊測試 (Fuzzing),擅長於發現程式碼在哪裡「崩潰」,但往往無法深入探究崩潰背後的根本原因。CodeMender 的「即時反應」能力,讓開發團隊可以從繁瑣的補丁工作中解脫出來。當一個漏洞被回報時,CodeMender 能自主分析問題,生成修復方案,並提交給開發者審核。這大幅縮短了從漏洞發現到修復的時間差,降低了系統被攻擊的風險。
而其「主動預防」策略則更具深遠意義。CodeMender 能夠系統性地重寫程式碼,採用更安全的函式庫或 API,從根本上消除整類漏洞存在的可能性。舉例來說,DeepMind 團隊曾利用 CodeMender 為廣泛使用的圖片函式庫 libwebp 加上編譯器層級的邊界檢查。這項改動,就足以讓 2023 年一個惡名昭彰的 iOS 零點擊漏洞 (CVE-2023-4863) 完全失效。這種從源頭改善程式碼體質的做法,是傳統資安工具難以企及的。
AI 自主除錯:Gemini 模型如何讓程式碼修復?
CodeMender 的強大能力,源自於 Google 的 Gemini Deep Think 模型。這個模型賦予了 CodeMender 如同資深工程師般的「思考」與「推理」能力。當面對一個複雜的漏洞時,CodeMender 的工作流程如下:
- 深入分析:它不僅僅看表面的錯誤報告。它會運用一套包含靜態分析、動態分析、除錯器 (Debugger) 等多種工具,去追溯問題的根源。有案例顯示,它能準確判斷出一個記憶體錯誤的根本原因,是更深層的堆疊管理不當所致,這是一般自動化工具難以達成的深度分析。
- 生成解決方案:在理解問題根源後,模型會開始草擬修復程式碼。
- 嚴格的自我驗證:這或許是 CodeMender 最關鍵的特色。為了避免 AI 在修復過程中引入新的錯誤,它設計了一套多代理人驗證系統 (Multi-agent systems)。其中一個 AI 代理會扮演「批評者」的角色,專門審查和比較修改前後的程式碼差異,確保修復的正確性、沒有功能衰退 (Regression),並且符合專案的編碼風格。只有通過這層嚴格自我檢驗的高品質修正,才會被提交給人類開發者進行最終審核。
半年 72 個安全補丁:CodeMender 的實戰成績單
理論再強大,也需要實踐來證明。在正式對外發表前,CodeMender 已經在開源世界小試牛刀。過去半年,它已成功為數個重要的開源專案提交了 72 個安全修補程式,並且多數已被接受並整合進主程式碼庫中。
這些專案中,不乏程式碼量超過百萬行的龐大系統。這證明了 CodeMender 的能力不僅限於小型、簡單的程式碼片段,而是有潛力處理真實世界中複雜且龐大的軟體工程。
對於軟體開發者與企業而言,開發者可以將更多精力投入在功能創新與使用者體驗上,而不是無止盡地處理安全修正。對於仰賴大量開源軟體的企業來說,CodeMender 有望自動化地解決供應鏈安全的一大痛點,減少因第三方函式庫漏洞而引發的資安風險。
對於網路安全產業,CodeMender 象徵著防禦方力量的增強。過去,攻擊方與防禦方之間存在著資訊不對等,防禦方需要花費大量人力去修補被自動化工具發現的漏洞。現在,AI 同樣可以被用來自動化防禦,有望將攻守態勢拉回平衡。
TN科技筆記的觀點
就在不久前,Anthropic 也發表了訓練 Claude 模型成為網路安全分析師的研究,並在實戰評測中取得了驚人成果Anthropic 打造 AI 網路防禦者:用 AI 對抗 AI 的資安攻防時代來臨? 。可以看見目前的主要趨勢,面對種類繁雜、知識體系博大精深的程式碼安全領域,有效的解法之一正是「AI規模化檢查、人類專家決策」的人機協作新模式。AI 的價值在於它能不知疲倦地執行大規模、重複性的審查工作,以遠超人類的速度與廣度處理 80% 的已知漏洞模式,甚至像 Claude 的研究那樣,發掘出未知的潛在威脅。這讓 AI 從一個單純的輔助工具,進化為資安團隊中不可或缺的「AI 隊友」,使人類專家能從繁瑣的日常修補中解放,專注於應對那 20% 最複雜、最需要創造性思維的未知威脅。
支持TN科技筆記,與科技共同前行
我是TN科技筆記,如果喜歡這篇文章,歡迎留言、點選愛心、轉發給我支持鼓勵~~~也歡迎每個月請我喝杯咖啡,鼓勵我撰寫更多科技文章,一起跟著科技浪潮前進!!>>>>> 請我喝一杯咖啡
在此也感謝每個月持續請我喝杯咖啡的讀者們,讓我更加有動力為各位帶來科技新知!
以下是我的 threads 也歡迎追蹤、回覆、轉發喔!
>>>>> TN科技筆記(TechNotes)