重大突破,谷歌 AI 大模型首次找到 0Day 漏洞
谷歌公司日前表示,旗下一款名為“ Big Sleep”(前稱 Project Naptime)的大語言模型(LLM)輔助框架在 SQLite 開源數據庫引擎中發現了一個零日漏洞,并稱這是該類型AI工具首次在實際廣泛使用的軟件中發現零日漏洞。
SQLite 是一種在開發人員中流行的開源數據庫引擎,所發現的漏洞指向其中的堆棧緩沖區下溢,當軟件在內存緩沖區開始之前引用內存位置時,就會出現該漏洞,從而導致系統崩潰或任意代碼執行。
谷歌研究人員在 10 月初向 SQLite 開發人員報告了該漏洞,對方在同一天修復了漏洞。由于漏洞是在正式版本出現之前被發現,因此不會影響正在使用SQLite的用戶。
發現該漏洞的“ Big Sleep”AI模型屬Google Project Zero 和 Google DeepMind 之間的合作項目,旨在大型語言模型的輔助下進行漏洞研究。 谷歌指出,在 8 月 DEFCON 安全會議上,負責創建 AI 輔助漏洞研究工具的網絡安全研究人員表示在 SQLite 中發現了另一個問題,從而激發團隊研究是否可以從中找到更嚴重的漏洞。
通常,許多公司使用一種稱為“模糊測試”的過程,通過向軟件提供隨機或無效數據來測試軟件,這些數據旨在識別漏洞、觸發錯誤或使程序崩潰。但谷歌認為,模糊測試在幫助防御者找到難以(或不可能)發現的漏洞方面做得還不夠,希望利用人工智能可以縮小這一差距。
而長期存在的漏洞變體問題也是“ Big Sleep”項目的主要動機之一, 谷歌在 2022 年發布的報告就曾指出,40% 以上的零日漏洞是已報告漏洞的變種,另有超過 20% 的漏洞也是以前的野外零日漏洞的變種。隨著這種趨勢的持續,模糊測試已無法成功捕獲此類變體,而對于攻擊者來說,手動變體分析成為一種經濟高效的方法。
在“ Big Sleep”中,研究人員利用 LLM 的代碼理解和推理能力,在識別和演示安全漏洞時利用 AI 代理來模擬人類行為,其中需要使用一套專用工具來允許代理瀏覽目標代碼庫,并在沙盒環境中運行 Python 腳本以生成用于模糊測試的輸入、調試程序并觀察結果。
“我們認為這項工作具有巨大的防御潛力。在軟件發布之前就發現軟件中的漏洞,意味著攻擊者沒有競爭的余地:漏洞甚至在攻擊者有機會使用它們之前就被修復了,“谷歌表示。
但谷歌也強調,這些仍然是實驗結果,“ Big Sleep”研究團隊的立場是,在發現漏洞方面,目前特定于目標的模糊測試程序可能至少同樣有效。希望在未來,這項工作將為防御者帶來顯著的優勢——不僅可以找到崩潰的測試用例,還可以提供高質量的根本原因分析,分類和修復漏洞在未來也可能會更便宜、更有效。