AIxCC競賽冠軍隊伍Team Atlanta成員Andrew Chin現身HITCON 2025,闡釋團隊參賽歷程與經驗。攝影/羅正漢

在今年8月舉行的台灣駭客年會HITCON 2025上,運用AI自動發現及修補漏洞的研究主題,成為全場最矚目的焦點,來自美國AI Cyber Challenge(AIxCC)競賽冠軍「Team Atlanta」的成員,剛剛結束這項競賽,就親自來臺分享他們奪冠的第一手資訊,參與臺灣資安社群的從業人員與學生們,雖然沒能加入這項競賽,卻也能藉此認識用AI改善漏洞問題的最新態勢。

簡單來說,AIxCC挑戰賽是由美國國防高等研究計畫署(DARPA)主辦,目的是促進用AI處理漏洞解決方案的發展,讓參賽者開發出全自動的網路推理系統(CRS),並嘗試運用最新AI技術做到自動偵測漏洞、生成修補程式、分析漏洞報告。

這場競賽一開始,連主辦單位DARPA也不確定能否成功,所幸Team Atlanta在競賽期間的自動發現漏洞這項挑戰,取得實質進展,後續這一隊更聚焦AI高品質漏洞修補的發展。最終,「Team Atlanta」設計的CRS系統,在70道漏洞題目中,以發現43個合成漏洞,並成功修補31個的成績獲得第一,另外還發現了6個零時差漏洞,其中3個存在於C語言,3個存在於Java語言。

團隊分工嚴謹縝密,整體系統由多個CRS組成

究竟冠軍隊伍是如何開發其CRS系統?Team Atlanta成員Andrew Chin向臺灣資安社群說明奪冠的歷程與策略。他是來自喬治亞理工學院的博士生,其指導教授Taesoo Kim是這支團隊的領隊。

特別的是,在這次演說中,Andrew Chin展示團隊奪冠合照時讓我們注意到,其團隊成員人數超過40人,陣容比想像中龐大,涵蓋美國喬治亞理工學院、三星研究院、韓國科學技術院(KAIST)、浦項工科大學的專家。

而且,他們在決賽前期就將開發團隊拆分成6個子團隊。例如,Atlantis-C小組、Atlantis-Java小組,Atlantis-Multilang小組、Atlantis-Patch小組、Atlantis-SARIF小組,以及Atlantis-Infra小組。


(圖片來源/Team Atlanta

具體而言,該團隊在決賽設計的CRS系統名為「Atlantis」,整體是由多個CRS系統組成。

Team Atlanta成員Andrew Chin表示,上圖紅色框框部分,就是他們在決賽時有應用LLM的地方。當中也可看出他們設計了不同的子系統,包括在漏洞發現模組中有Atlantis-C、Atlantis-Java,Atlantis-Multilang,還有Atlantis-Patch CRS系統、Atlantis-SARIF CRS系統。(圖片來源/Team Atlanta

在整體CRS的架構設計上,Andrew Chin表示,他們採用N重版本(N-versioning)設計,以提升容錯能力,並確保不同CRS之間僅有最低程度的資料共享,而且特意採取正交(orthogonal)設計,讓彼此設計決策獨立且互不影響。

最特別的是,在漏洞發現方面,他們就有3個小組各自設計不同的CRS系統,包含Atlantis-C CRS系統、Atlantis-Java CRS系統,以及為穩定性而建構的Atlantis-Multilang CRS系統。

同時,他們還投入大量資源擴展傳統工具,開發出3種類別工具,包括整合式模糊測試器(Ensemble fuzzer)、符號混合執行器(Concolic executor),以及定向模糊測試器(Directed fuzzer)。Andrew Chin解釋,儘管這些傳統工具未應用AI,但仍是他們CRS不可或缺的一環。

更進一步來看,以Atlantis-C系統而言,積極採用基於插樁(instrumentation)的技術,在程式碼中插入監控點,監控程式執行狀態,以便模糊測試器能更有效地探索程式漏洞,而Atlantis-Multilang系統則採用較穩定的基礎方法;不過在LLM使用上則恰巧相反,Atlantis-C系統較為保守,僅將其用於種子生成(seed generation)和輸入變異(mutation),而Atlantis-Multilang系統則將LLM應用擴展至多個層面,像是輸入格式反向工程、函式呼叫圖分析、字典生成等,為此,團隊設計了Bug Generation Agent(BGA)、等4種專用代理。

此外,他們還開發一個名為LibDeepGen的Agent框架,具備處理大量任務能力,以提升整體性能,並希望將LLM的能力與傳統模糊測試器的性能結合起來。

談完上述漏洞發現的作法,在修補方面,為了產生高品質修補程式,Atlantis-Patch設計了6個具正交設計決策的內部獨立Agent。這些代理各自採用不同的策略與LLM模型,有的專注於進行複雜的工具呼叫,有的則完全不依賴外部工具;有的透過增加推理回合來提升思考深度,有的則採用不同類型的推理模型。此外,他們還使用客製化微調的LLM模型,該模型是以Llama 3.2為基礎,開發目的在於加速並強化上下文檢索的效率。換言之,他們透過這種多樣化的設計,以提高修補任務的成功率與穩定性。

團隊整體陣容超過40人,初期困境在於解決LLM本身限制

回顧這次參加AIxCC歷程,Andrew Chin坦言一件事,團隊在2023年剛投入競賽時,對這項挑戰仍抱持懷疑。

因為他們認為,當時LLM還不具備真正解決問題的能力。這也導致初期的困境是,一直設法要解決LLM本身的限制。

他舉例,早期團隊聚焦使用思維鏈(CoT)等技巧,目的是要優化提示,而且當時LLM可處理的上下文長度相當有限,這也是他們當時面臨的主要挑戰之一。不過,隨著時間推進,雖然知道LLM正高速進化,但新的演進仍遠超預期,讓他們原先採用的方式迅速過時。

直到2024年上半,接近半準決賽之際,他們才開始看到AI應用的巨大潛力。這些進展包括LangChain等開源框架,支援函式呼叫的LLM API,還有AutoGen、OpenDevin等框架與代理架構開始受關注。但對於團隊而言,這些技術出現得太晚,當時還無法納入其設計的CRS系統之中。

因此,初期他們對LLM的應用仍相當有限,所幸成功挺進決賽,並且還是當時唯一發現零時差漏洞的隊伍。進入決賽後,也就是2024年下半,他們開始擴大LLM的使用。

 

熱門新聞

Advertisement