KeyFrame內部研究專用

Smart Contracts to Embeddings: Using off-the-shelf LLMs for Fun and Profit | Markella Gioka (Dedaub)

DeFi Security Summit - DSS·12月22日週日·24 min英文

三句話摘要

利用 LLM 嵌入技術對智能合約進行語義相似性搜尋,實現跨鏈漏洞識別與合約克隆偵測。 預訓練 LLM 的遷移學習能力加上函數選擇器逆向標注,讓無原始碼的智能合約也能進行高效語義相似性搜尋,是跨鏈漏洞追蹤的實用利器。 預訓練 LLM 天然具備遷移學習能力:反編譯後的智能合約字節碼在結構上接近高階物件導向語言,使模型能將訓練於一般程式碼的知識遷移至合約分析,無需從零訓練。

重點整理

重點
  • 1

    預訓練 LLM 天然具備遷移學習能力:反編譯後的智能合約字節碼在結構上接近高階物件導向語言,使模型能將訓練於一般程式碼的知識遷移至合約分析,無需從零訓練。

  • 2

    函數選擇器是無原始碼合約的破口:公共函數的選擇器是函數簽名的雜湊值,存在於字節碼中,可用來逆向推導函數名稱,進而建立帶語義標籤的反編譯資料集,解決 40% 合約無原始碼的問題。

  • 3

    公共函數是合約相似性比對的最小單元:將公共函數(含其所有私有子函數展開)視為一個語義單位,既保留了足夠的上下文資訊,又避免整份合約過長超出模型輸入限制。

  • 4

    近似最近鄰搜尋(ANN)是規模化的關鍵:百萬份合約的暴力距離計算成本極高,向量資料庫將嵌入向量視為圖節點、距離視為邊,能以圖搜尋方式快速定位最近鄰,且主流資料庫均已內建向量擴充功能。

實用技巧與重點

乾貨
  • 以太坊合約總量:數百萬份;每日部署:數萬份
  • 有公開原始碼的合約比例:約 60%;無原始碼:約 40%
  • 查詢平均回應時間:< 3 秒
  • 支援鏈:以太坊、幣安智能鏈、Optimism 及多數 EVM 相容鏈(跨鏈查詢功能即將推出)
  • 實戰案例:Bedrock 無限鑄幣漏洞,部署於 8 條鏈,風險金額 5,000 萬~7,500 萬美元,其中至少一條鏈的合約未經驗證
  • 核心模型訓練任務:給定反編譯公共函數代碼,預測其函數名稱(類似 BERT 的 Masked LM)
  • 嵌入提取方式:CLS token 池化(將整段代碼的語義壓縮為單一向量)
  • 使用的嵌入框架:孿生網路(Siamese Network)原理
  • 句子嵌入基線方案:Sentence Encoder(直接輸入,適合快速上線)
  • 向量資料庫選項:以向量為中心的資料庫(如 Pinecone、Weaviate 等)或主流資料庫的向量擴充
  • 產品入口:app.dedaub.com,任意合約公共函數頁面有「Find Similar Functions」按鈕
  • 工具名稱:Dedaub 智能合約相似性搜尋(九月上線)

結論

結論

預訓練 LLM 的遷移學習能力加上函數選擇器逆向標注,讓無原始碼的智能合約也能進行高效語義相似性搜尋,是跨鏈漏洞追蹤的實用利器。

完整解析

詳細

區塊鏈的一個獨特性質是,所有部署的代碼、狀態與歷史執行紀錄永久可查,這為安全工具與機器學習應用提供了其他領域難以企及的資料條件。本場演講的核心命題是:如何利用 LLM 嵌入技術,在數百萬份智能合約中快速找到語義相似的函數——無論是為了追蹤特定黑客的合約克隆、識別 MEV 機器人,或是在漏洞爆發後掃描所有受影響的部署。

嵌入的本質是將資料映射為高維數值向量,使相似的實體在向量空間中距離更近。從早期的 One-hot 到 Word2Vec/GloVe,再到 BERT 等 Transformer 模型,核心進展是從靜態詞嵌入走向上下文相關嵌入——同一個詞在不同語境中會得到不同的向量表示。Transformer 的注意力機制讓每個 token 的嵌入都能感知整段輸入的語境,這正是處理代碼語義所需要的能力。訓練整段代碼的嵌入,孿生網路(Siamese Network)是較佳方案:將兩段已知相似的代碼分別輸入同一模型,最小化其嵌入向量之間的距離,使模型學會把語義相近的代碼映射到鄰近的向量空間位置。

然而,智能合約有幾個特殊挑戰:合約數量龐大(以太坊每日數萬份)、40% 無公開原始碼、字節碼過於底層不含高階語義、模型輸入長度有限,以及缺乏帶標籤的訓練資料。Dedaub 的解法是以反編譯字節碼為切入點,因其結構接近高階物件導向語言,可受益於已在一般程式碼上預訓練的模型。更關鍵的突破在於利用函數選擇器(函數簽名的 Keccak256 雜湊前 4 bytes)逆向推導函數名稱,即使合約未經驗證也能建立帶語義標籤的資料集。以此為基礎,他們訓練 LLM 根據反編譯的公共函數代碼預測其函數名稱,再將模型的內部狀態(CLS token)作為嵌入向量——這個任務迫使模型將函數的完整語義壓縮為單一表示,效果相當於一個針對合約代碼的句子編碼器。

在規模化部署上,百萬級合約的暴力向量比對代價極高,向量資料庫以圖結構組織嵌入節點,利用近似最近鄰(ANN)演算法將查詢時間壓縮到平均 3 秒以內。今年九月上線後,工具在一次公司內部漏洞競賽中得到實戰驗證:團隊發現 Bedrock 協議存在無限鑄幣漏洞,涉及 5,000 萬至 7,500 萬美元資金,相同邏輯散布於 8 條鏈,其中部分合約甚至未公開原始碼。透過相似函數搜尋,團隊得以即時確認所有受影響的部署,並排除其他潛在的相似漏洞分支。

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「AI 技術」的內容

Between Two Nerds: Attribution is dead, long live attribution
32 min
AI 技術英文PODCAST8月25日

Between Two Nerds: Attribution is dead, long live attribution

Risky Business

  • 工具成本的破壞性下降 — 傳統上,攻擊者必須重複使用昂貴自製的惡意軟體或工具組,因為開發和維護成本極高。這種成本結構使得安全研究人員可以通過工具特徵和程式碼簽名來追蹤攻擊者。LLM 自動化了代碼生成與維護工作流,使得攻擊者可以輕易為每個目標生成新工具,或改用通用系統工具,導致傳統的工具特徵分析失效。
  • 所有取證證據都在攻擊者掌控之中 — 無論是使用的 IP 位址、惡意軟體類型或戰術流程,這些都是攻擊者的主動選擇。即使看似是隨機巧合,攻擊者仍有能力在事前決定留下什麼痕跡。因此,所有可恢復的取證證據本質上都是攻擊者願意暴露的信息。
  • LLM 削弱工具簽名但保留高階行為特徵 — LLM 經過公開駭客技術訓練,使不同使用者產生相似的攻擊模式。然而,勒索軟體集團、國家級行為者的受害者選擇、贖金要求方式或目標模式等高階特徵仍具有識別價值。例如,鎖定加密交易所的攻擊幾乎只能指向朝鮮。
Everything Goldman Sachs Taught Me About AI (In 10 minutes)
AI 技術英文8月24日

Everything Goldman Sachs Taught Me About AI (In 10 minutes)

Nate Herk

  • 驗證優於相信:看起來完整的AI輸出不等於正確答案,需在提示中要求模型重新檢查數字、引用來源,並對無把握的部分標記。
  • 區分AI與自動化:確定步驟且答案已知的任務用傳統自動化更便宜快速;只在需要判斷力、靈活性或處理複雜資訊時才用AI,兩者結合效果最佳。
  • 以問題驅動選型:先寫清楚「要解決的問題是什麼、成功的樣子是什麼」,再決定用什麼工具,許多失敗項目是從技術而非問題出發。
Mu: a self-hosted personal agent where the interface is an email address you can write to
AI 技術英文8月23日

Mu: a self-hosted personal agent where the interface is an email address you can write to

GitHub Awesome

  • Mu 是自主代理人系統,具有實際網址與獨立伺服器,用戶可透過多種方式與其互動——網頁應用、電子郵件或程式化介面。
  • 架構完整覆蓋日常工作流程的多個層面,整合郵件收發(SMTP/IMAP)、檔案管理、行事曆、新聞聚合、市場數據與搜尋功能於一個 Go 伺服器內。
  • 支援自帶模型與多種通訊協定,用戶可選擇不同的 AI 模型,並透過 MCP、HTTP API 或命令列工具整合到其他系統。