Deep Learning 101, Taiwan’s pioneering and highest deep learning meetup, launched on 2016/11/11 @ 83F, Taipei 101

AI是一條孤獨且充滿惶恐及未知的旅程,花俏絢麗的收費課程或活動絕非通往成功的捷徑。
衷心感謝當時來自不同單位的AI同好參與者實名分享的寶貴經驗;如欲移除資訊還請告知。
TonTon Huang Ph.D. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。
Deep Learning 101 創立初衷,是為了普及與分享深度學習及AI領域的尖端知識,深信AI的價值在於解決真實世界的商業問題。

Deep Learning 101

去 YouTube 訂閱 | Facebook | 回 GitHub Pages 首頁 | 到 GitHub 點星 | 網站 | 到 Hugging Face Space 按愛心


大語言模型 語音處理 自然語言處理 電腦視覺
Large Language Model Speech Processing Natural Language Processing, NLP Computer Vision

用 AI 懂 AI

AI 技術 體驗/分享

手把手帶你一起踩 AI 坑https://www.twman.org/AI


手把手AI 技術深度實戰教學/開源/試用

AI x Cyber-Security

AIxCC 冠軍 Atlanta 團隊「ATLANTIS」系統關鍵重點解析

同步匯整自 https://zread.ai/Team-Atlanta/aixcc-afc-atlantis 同步匯整自 Team-Atlanta/aixcc-afc-atlantis:包含 AIxCC 總決賽中提交的原始程式碼 同步匯整自 AIxCC狀元探秘

針對 DARPA AI 網路挑戰賽(AIxCC)解析冠軍團隊 Team-Atlanta 所開發的網路推理系統(CRS)——「ATLANTIS」的關鍵技術、架構和核心策略。


目錄

  1. 團隊與系統簡介
  2. ATLANTIS 核心理念與策略
  3. 系統高層架構
  4. 核心解析:自動化補丁 Agent 策略 (Ensemble of Agents)
  5. 漏洞挖掘:Fuzzing 優化策略
  6. 總結:關鍵啟示

1. 團隊與系統簡介

2. ATLANTIS 核心理念與策略

ATLANTIS 的成功並非依賴單一技術,而是多種策略的「集成(Ensemble)」。

  1. 正交策略(Orthogonal Strategies): ATLANTIS 並非單一的 CRS,而是由多個獨立的 CRS(如 C、Java、Multilang、Patch)組成。團隊刻意追求不同的(正交的)策略,以最大化覆蓋範圍和容錯能力。
  2. LLM 作為「增益品」: 團隊的結論是,大型語言模型(LLM)是傳統程式分析方法(如 Fuzzing、符號執行、靜態分析)的「增益品」,而非「替代品」。兩者必須緊密結合。
  3. 模型大小的「甜蜜點」: 研究發現,並非模型越大越好。像 GPT-4o-mini 這樣的 8B 參數模型 達到了一個「甜蜜點」:它足夠大,能理解程式碼模式、API 約定和異常堆疊;同時也足夠小,輸出更簡潔,決策更直接,不易將簡單問題複雜化。
  4. 多樣性集成(Ensembling): 系統在各個層面都採用了集成策略,包括 Fuzzing、符號執行和補丁生成。特別是在補丁生成方面,團隊利用了 LLM 的「非確定性」(或稱「幻覺」),將其視為一種「創造力」,透過集成多種 Agent 來駕馭這種特性。

3. 系統高層架構

根據 CRS 架構圖(Design Overview of Atlantis),系統基於 K8s 節點 運行,主要組件包括:

4. 核心解析:自動化補丁 Agent 策略 (Ensemble of Agents)

ATLANTIS-PATCHING 模塊 如何集成多種具有不同策略的 Agent 來生成補丁。這體現了其「集成」和「正交策略」的核心思想。

4.1 MartianAgent (工作流驅動)

4.2 MultiRetrievalPatchAgent (多策略檢索)

4.3 PrismAgent (多團隊協作狀態機)

4.4 VincentAgent (Sanitizer/PoC 驅動)

4.5 ClaudeLikeAgent (ReAct 反饋迴圈)

4.6 EraserAgent (策略驅動與環境模擬)

5. 漏洞挖掘:Fuzzing 優化策略

PDF 的後半部分和總結強調,團隊在傳統程序分析(特別是 Fuzzing)方面進行了大量改進。

5.1 UniAFL (多語言 Fuzzing 框架)

5.2 Directed Jazzer (導向 Fuzzing)

6. 總結:關鍵啟示

  1. LLM 必須與傳統工具結合: LLM 需要與傳統的程式分析工具(Fuzzing、符號執行、靜態分析)深度結合,才能發揮最大效用。
  2. LLM 是「增益品」,非「替代品」: LLM 在理解程式碼、API、異常堆疊等方面表現出色,但它們是傳統分析方法的增強,而非取代。
  3. 策略平衡(輕重LLM): 應根據目標選擇合適的策略。例如,Atlantis-C 採用了「重插樁 / 輕 LLM」的策略,而 Atlantis-Multilang 則走了「輕插樁 / 重 LLM」的路線。
  4. 模型大小的「甜蜜點」: 8B 參數模型被證明在效能和效率上達到了最佳平衡點。
  5. LLM 在 Fuzzing 中的應用: LLM 在 Fuzzing 領域的應用已相當具體,包括字典生成、種子生成和輸入生成。