研究團隊設計了一個駭客智慧體框架,研究了包括 GPT-4、GPT-3.5 和眾多開源模型在內的 10 個模型。結果發現只有 GPT-4 能夠在閱讀 CVE 漏洞描述後,學會利用漏洞攻擊,而其它模型成功率為 0。
所有的過程只需要:91 行程式碼、1056 個 token,GPT-4 化身駭客搞破壞!測試成功率達 87%,單次成本僅 8.8 美元(約為新台幣 287 元)。
這就是來自伊利諾伊大學香檳分校研究團隊的最新研究。他們設計了一個駭客智慧體框架,研究了包括 GPT-4、GPT-3.5 和眾多開源模型在內的 10 個模型。
結果發現只有 GPT-4 能夠在閱讀 CVE 漏洞描述後,學會利用漏洞攻擊,而其它模型成功率為 0。研究人員表示,OpenAI 已要求他們不要向公眾發佈該研究的提示詞。
網友們馬上趕來圍觀了,有人還搞起了復現。
GPT-4 能夠利用真實的單日漏洞
這項研究核心表明,GPT-4 能夠利用真實的單日漏洞(One-day vulnerabilities)。
他們收集了一個漏洞資料集(包含被 CVE 描述為嚴重等級的漏洞),然後設計了一個駭客智慧體架構,讓大型語言模型模擬攻擊。
這個駭客智慧體架構使用了 LangChain 的 ReAct 智慧體框架。系統結構如下圖所示:
漏洞攻擊的流程
進行漏洞攻擊時,大概流程是:
人發出「使用 ACIDRain(一種惡意軟體)攻擊這個網站」的請求,然後 GPT-4 接收請求,並使用一系列工具和 CVE 漏洞資料庫資訊進行處理,接下來系統根據歷史記錄產生反應,最終成功進行雙花攻擊(double-spend attack)。而且智慧體在執行雙花攻擊時還考慮了並行攻擊的情況和相應的響應策略。
(雙花攻擊:指的是雙重花費攻擊,也可以被理解為一幣多付,你只有一筆錢,但卻拿來付了兩次。)
在這個過程中,可用的工具有:網頁瀏覽(包括獲取 HTML、點選元素等)、訪問終端、網頁搜尋結果、建立和編輯檔案、程式碼直譯器。
此外,研究人員表示提示詞總共包含 1056 個 token,設計得很詳細,鼓勵智慧體展現創造力,不輕易放棄,嘗試使用不同的方法。
智慧體還能進一步獲取 CVE 漏洞的詳細描述。出於道德考慮,研究人員並未公開具體的提示詞。
算下來,建構整個智慧體,研究人員總共用了 91 行程式碼,其中包括了偵錯和日誌記錄語句。
實驗階段,他們收集了 15 個真實世界的 One-Day 漏洞資料集,包括網站、容器管理軟體和 Python 包的漏洞。其中 8 個被評為高級或關鍵嚴重漏洞,11 個漏洞已超過了所使用的 GPT-4 基礎模型的知識截止日期。
主要看漏洞攻擊的成功率、成本這兩個指標。
其中成功率記錄了 5 次嘗試中的通過率和 1 次嘗試中的通過率,研究人員還手動評估了智慧體是否成功利用了指定的漏洞。為了計算成本,他們計算了跑分中的 token 數量,並使用了 OpenAI API 的成本。
他們總共在 ReAct 框架中測試了 10 個模型。對於 GPT-4 和 GPT-3.5,使用了 OpenAI API;其餘模型,使用 Together AI API。
結果,GPT-4 是唯一能夠成功破解單個 One-Day 漏洞的模型,成功率達到 87%。而 GPT-3.5 以及眾多開源模型,發現或利用漏洞成功率為 0。
GPT-4 在測試中只在兩個漏洞上未成功,分別是 Iris XSS 和 Hertzbeat RCE。
其中 Iris 是一個網路協作平台,用於幫助事件響應者在調查期間共享技術資訊。研究人員認為,GPT-4 難以處理這個平台,因為其導航主要通過 JavaScript,這超出了 GPT-4 的處理能力。
而 Hertzbeat,它的描述是用中文寫的,而 GPT-4 使用的是英文提示,這可能導致了混淆和理解上的困難。
除此之外,研究人員還調整了智慧體架構,去掉了 CVE 的描述。結果 GPT-4 的成功率從 87% 下降到了 7%,這也就說明對於大型語言模型而言發現漏洞比利用漏洞更難。
進一步分析發現,GPT-4 能夠在 33.3% 的情況下正確識別出存在的漏洞,但是即使識別出漏洞,它只能利用其中的一個。如果只考慮 GPT-4 知識截止日期之後的漏洞,它能夠找到 55.6% 的漏洞。
有趣的是,研究人員還發現有無 CVE 描述,智慧體採取的行動步數相差並不大,分別為 24.3 步和 21.3 步。他們推測這可能與模型的上下文窗口長度有關,並認為規劃機制和子智慧體可能會提高整體性能。
最後,研究人員還評估了使用 GPT-4 智慧體攻擊漏洞的成本。
計算結果顯示,GPT-4 智慧體每次利用漏洞的平均成本為 3.52 美元,主要來自輸入 token 的費用。由於輸出通常是完整的 HTML 頁面或終端日誌,輸入 token 數量遠高於輸出。考慮到 GPT-4 在整個資料集上 40% 的成功率,每次成功利用漏洞的平均成本約為 8.8 美元。
該研究的領導者為 Daniel Kang。
他是伊利諾伊大學香檳分校的助理教授,主要研究機器學習分析、機器學習安全和密碼學。
網友:是不是誇張了?
這項研究發佈後,網友們也展開了一系列討論。
有人覺得這有點危言聳聽了。
有人說自己有過類似成功的經驗,只需要給 GPT-4 和 Claude 一個 shell 和一個簡單的提示詞。
您是一名安全測試專家,並且可以訪問Kali Linux沙箱。您需要徹底地測試安全漏洞。您已被允許使用任何工具或技術,你認為適合完成這項任務。使用任何kali linux工具來尋找和探測漏洞。您可以使用nmap、nikto、sqlmap、burp suite、metasploit等工具來尋找和利用漏洞。您還可以使用您認為合適的任何其他工具或技術來完成此任務。不要提供報告,繼續嘗試利用漏洞,直到您確信已經找到並嘗試了所有漏洞。
還有人建議補充測試:
如果合法的話,應該給這個智慧體提供 Metasploit 和發佈到 PacketstormSecuity 的內容,當 CVE 中沒有任何風險緩解措施時,它能否超越利用並提出多種風險等級的緩解措施?
當然還有人擔心,這研究估計讓指令碼小子(對技能不純熟駭客的黑稱)樂開花了,也讓公司更加重視安全問題。
考慮到 OpenAI 已經知曉了這項研究,後續或許會看到相應的安全提升。
- 延伸閱讀:OpenAI 的爬蟲被設計癱瘓,卡在「世界上最無聊的內容農場」上無法脫身
- 延伸閱讀:OpenAI以洩密為由解僱兩名研究人員,包括首席科學家盟友
- 延伸閱讀:OpenAI新GPT-4 Turbo模型上線,4項能力提升
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!