用 ChatGPT-4 審計智能合約會發生什麼

封面: OpenAI

北京時間 3 月 15 日凌晨,人工智能初創公司 OpenAI 正式公佈最新一代人工智能語言模型 GPT-4。
OpenAI 在當天的聲明中稱,GPT-4 的誕生,是 OpenAI 在放大深度學習方面的最新里程碑。
那現在進化後的 GPT-4 ,又會帶給我們哪些驚喜?

進化後的 GPT-4,到底有多 “炸”?

根據 OpenAI 官方的介紹,GPT-4 是一個超大的多模態模型,也就是說,它的輸入可以是文字(上限 2.5 萬字),還可以是圖像。

其 AI 能力的恐怖之處體現在哪呢?比如下面這張照片。

你問它下圖中手套掉下去會怎樣?它會回答:它會掉到木板上,並且球會被彈飛。(這邏輯能力,你能想像嗎)

甚至只需要簡單在紙上畫一個網站的草稿圖,他就可以識別該網站。

拍一張照片上傳給 GPT-4,它就可以立馬生成網站的 HTML 代碼!
可見,GPT-4 比 GPT-3.5,更可靠、更有創造力,能夠處理更細微的指令。

除此之外,ChatGPT-4 在內容準確性以及邏輯能力相比上一代也要提升不少,在統一律師考試(Uniform Bar Exam)中,GPT-4 成績超過 90% 其它人,而 GPT-3.5 的成績只超過 10% 的人,GPP-4 在 SAT Math 獲得 700 分,GPT-3.5 的成績為 590 分,提升了 110 分。在其它標準化考試中,GPT-4 的成績也都比 GPT-3.5 優秀不少。

在官方演示中,GPT-4 幾乎就只花了 1-2 秒的時間,識別了手繪網站圖片,並根據要求實時生成了網頁代碼製作出了幾乎與手繪版一樣的網站。

除了普通圖片,GPT-4 還能處理更複雜的圖像信息,包括表格、考試題目截圖、論文截圖、漫畫等,例如根據專業論文直接給出論文摘要和要點。

這麼強,是不是你也感覺快要失業了

GPT-4 可對論文進行解讀來源:OpenAI 官網

用 ChatGPT4 審計智能合約會發生什麼?

我們曾在去年 12 月發了一篇 ChatGPT 的研究文章,看看它審計智能合約會發生什麼,擴展閱讀:風靡全網的 “最強 AI” ChatGPT,能不能檢測智能合約漏洞?

3 月 15 日,Coinbase 主管 Conor Grogan 在社交媒體發文稱,他已在 ChatGPT-4 中插入了一個實時以太坊智能合約,結果 AI 瞬間就找到了安全漏洞,甚至還展示瞭如何利用這些漏洞進行攻擊。

Conor Grogan 表示,該合約的確在 2018 年被黑客利用漏洞攻擊,此外他還透露也嘗試了 Euler 的智能合約,但由於合約過長而無法被 chatGPT-4 處理,Conor Grogan 坦言 AI 最終將是智能合約更安全、更容易構建。

也有群友說,ChatGPT 似乎可以審計前兩天 Euler Finance 約 2 億美元被盜案的漏洞。相關事件閱讀:复盤 Euler Finance 2 億美元被盜案的來龍去脈,本次事件帶給我們哪些啟示?
但是,真的有這麼簡單嗎?

圖源網絡

其實與早期的 GPT 模型一樣,GPT-4 仍然存在一定的局限性。

OpenAI 官方稱,它並不完全可靠,可能會出現推理錯誤,“GPT-4 缺乏對絕大多數數據切斷後(2021 年 9 月)發生的事件的了解,並且無法從中吸取經驗教訓……它有時會出現簡單的推理錯誤,它會輕信用戶明顯的虛假陳述,有時它會像人類一樣在難題上失敗,例如在它生成的代碼中引入安全漏洞。”

基於此,OpenAI 提醒,用戶在使用語言模型時應格外小心,最好輔助以人工審查、附加上下文、或完全避免在高風險情況下使用它。

ChatGPT VS Beosin VaaS,審計合約誰更強?

Beosin 的形式化驗證專家說道:“ChatGPT 可以學習合約的複雜模式,從不同維度對合約進行理解分類,可幫助靜態檢測技術增強專家模式,增加可識別漏洞的種類,降低漏報率和誤報率,可輔助面向屬性的測試驗證技術與領域屬性庫進行有效鏈接,通過自動合約識別與屬性插入,實現全自動化的測試驗證。但是 ChatGPT 難以識別日新月異的特定領域深層邏輯漏洞,這種漏動通常是與項目需求緊密結合,需要領域安全專家作為裁判,不斷歸納總結形成領域屬性庫對合約的安全性進行裁定。 ”

我們也發現 ChatGPT 並不能解決所有的問題,比如很多漏洞還是需要審計專家嚴苛審計,或者使用形式化驗證工具 Beosin VaaS 才能發現問題。

Beosin VaaS 作為一款全球領先的 “一鍵式” 智能合約形式化驗證平台。檢測準確率高達 97% 以上,精確定位風險代碼位置並給出修改建議,自動檢測智能合約 80 餘項的常規安全漏洞及功能邏輯缺陷。Beosin VaaS 可自動發現智能合約中存在的常規漏洞、業務邏輯錯誤等安全問題,並給出專家的修復意見。同時支持 evm,wasm 的所有公鏈的智能合約的上百種常規安全漏洞和業務邏輯缺陷檢測,能精確定位風險代碼位置,幫助開發者提高智能合約的安全能力。

形式化驗證工具 Beosin VaaS:https://vaas.beosin.com/

比如我們在 3 月 15 日預警的 Poolz Finance 的 Locked Deal 合約遭到攻擊事件裡,攻擊者調用了 LockedDeal 合約中存在漏洞的函數 CreateMassPools,並且在參數_StartAmount 中觸發了整數溢出的漏洞,我們測試了這個漏洞能通過 VaaS 工具檢測出來,ChatGPT 卻不行。

同時,k 值校驗的深層邏輯問題 ChatGPT 也檢測不出。

由於 Uniswap 這類 DEX 的實際的兌換轉賬操作在 Pair 的 swap() 函數中實現,為了防止攻擊者越過 Router 合約直接調用 Pair 合約進行 swap() 轉賬,需要在 Pair 合約的 swap() 函數中進行 K 值校驗,即 swap 之後 pair 中的 K 值仍然守恆。如果 K 值檢驗相關代碼存在安全漏洞,那麼攻擊者能夠以極少量的代幣兌換出 Pair 中大部分代幣。

合約未檢查 k 值的 cheapSwap 函數

我們通過對 K 值校驗問題的研究,總結了該問題的特點,提取出了該問題的通用屬性供 VaaS 工具使用。在此之後,我們通過節點信息的分析,提取了 ETH 和 BSC 上共 14W 個地址的合約信息。這些地址合約全部都是相似的業務合約,均可能存在 K 值校驗問題。

除了使用形式化驗證工具 VaaS,Beosin 形式化驗證專家還會將安全審計專家凝練出的安全問題利用嚴格的數理邏輯抽象成可重用的安全屬性不變量,並交給混合機器引擎進行自動化檢測、測試、驗證,實踐證明這些可重用的安全屬性不變量可有效發現智能合約中新的微妙漏洞。這些都是像 ChatGPT 這類 AI 無法代替的部分。

不過在美國《紐約時報》網站 3 月 8 日刊登題為《ChatGPT 的成功假象》的文章裡,作者寫到:“今天,我們在人工智能領域取得的所謂革命性進展的確讓人既樂觀又擔憂。令人樂觀是因為智慧是我們解決問題的手段;令人擔憂是因為我們害怕最流行和最時髦的人工智能(機器學習)會像病毒毒株一樣將有根本缺陷的語言和知識概念融入我們的技術,從而降低我們的科學水平並降低我們的道德規範。”

但是摘掉 Chat 標籤,GPT-4 又將釋放更大生產力,大家怎麼看待 ChatGPT 這類 AI 工具平台,歡迎轉發與我們分享。

免責聲明:作為區塊鏈信息平台,本站所發布文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。文章內的信息僅供參考,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。