前言
近期 ChatGPT 爆火,其對傳統文字工作的效率提高及總結能力讓使用者驚艷。緊隨其后 CodeGPT 這樣基于 GPT 的插件出現,也充分體現了其對代碼編寫效率的提高。而最新 GPT-4 的發布,是否可以應用到對區塊鏈 、Solidity 智能合約的審計中呢?
基于這樣的疑問,我們進行了多種可行性測試。
測試使用的對比模型對象:GPT-3.5(Web), GPT-3.5-turbo-0301, GPT-4(Web)。
代碼片段使用 Prompt:Help me discover vulnerabilities in this Solidity smart contract.
漏洞代碼片段的檢測對比
在此部分,我們分三次測試,使用歷史上常見的漏洞代碼作為測試一和測試二的用例,來驗證其對基礎漏洞的檢測能力,測試三中使用中等難度的漏洞代碼作為測試用例。
測試一
用例:《智能合約安全審計入門篇 —— Phishing with tx.origin》
漏洞代碼:
冉小波:算法交易誕生的流動性挖礦推動整個DeFi進入火爆階段:9月4日消息,NULS聯合發起人冉小波在做客《HyperPay焦點》欄目時提及:DeFi大熱,資金都傾向于玩DeFi,反而應該是其他公鏈的一個挑戰。所以公鏈也需要一些結合DeFi的一些創新的玩法了,不然大部分的資金和流量可能都會流轉到一些毫無實際意義項目的流動性挖礦中。這一點相信其他的公鏈團隊應該也感觸頗深。DeFi的分支有很多,各家公鏈也都有在做一些探索,總的來看,推動整個DeFi進入火爆階段的是算法交易誕生的流動性挖礦。近期大熱的項目基本上都是一些新的項目,通過流動性挖礦來進行籌碼的分配,以非常高的收益率來進行高通脹的Token分配,從而吸引大量的資金短時間內快速加入。[2020/9/4]
(1)對 GPT 進行提問:
(2)GPT-3.5(Web) answer
“區塊鏈大爺”火爆2018全球區塊鏈精英峰會會場:據火訊財經報道稱,4月28日,在2018全球區塊鏈精英峰會會場外,一個頭發花白的大爺吸引了很多人的注意,大爺手持宣傳牌,上面寫著“全球首個保潔鏈-Clean Chain,去中介化的保潔服務與管理”,同時發布需求“求技術合伙人!求交易所聯系方式!”在宣傳語中還表達了保潔行業是人類剛需,與區塊鏈技術相結合勢不可擋的強烈意愿。現場很多人稱其為“區塊鏈大爺”。[2018/4/28]
(3)GPT-3.5-turbo-0301 answer
(4)GPT-4(Web) answer
可以看到結果:3 個測試版本都發現了關鍵的 tx.origin 相關問題。
德意志銀行高管:比特幣火爆背后,銀行賬戶或將在5年內消失:德意志銀行高管馬庫斯申克認為,現在我們所熟悉的銀行賬戶可能會在短短五年內消失。“科技正在以不同的方式影響我們經營的業務,”申克指出零售銀行業務正“面臨一個全新的正常演變。”[2018/3/23]
測試二
用例:《智能合約安全審計入門篇 —— 溢出漏洞》
(1)對 GPT 進行提問:
區塊鏈概念行情火爆 區塊鏈概念股掀漲停潮:受外圍市場區塊鏈概念股持續大熱影響,A股市場上區塊鏈概念近日表現搶眼。區塊鏈指數昨日放量大漲5.88%,創該指數近一年來最大單日漲幅,同時成交量創歷史新高。區塊鏈概念股全線飄紅,18只個股漲幅在5%以上,其中10只個股相繼漲,包括廣電運通、遠光軟件、四方精創、易見股份、新晨科技、高偉達、飛天誠信、安妮股份等。從資金流向看,主力資金搶籌跡象較為明顯,昨日區塊鏈概念股整體主力資金凈流入16.03億元,7只個股主力資金凈流入逾億元,分別是利歐股份、恒生電子、廣電運通、游久游戲、浙大網新、飛天誠信、贏時勝。其中,利歐股份主力資金凈流入1.78億元,位居首位,該股昨日午后被拉升至漲停板,最新股價逼近60日線。[2018/1/11]
可以看到 GPT-3.5(Web)、GPT-3.5-turbo-0301 都發現了關鍵的 Overflow 漏洞,出乎意料的是 GPT-4(Web) 居然沒有相關提示。
測試三
用例:《空手套白狼 —— Popsicle 被黑分析》
數字貨幣市場日益火爆 ETC或將迎來新的暴漲:進入12月份以來,數字貨幣市場進入了一個癲狂狀態,各種主流的數字貨幣一路狂飆,屢創新高。比特幣從6萬人民幣一周之內迅速暴漲至12萬人民幣,緊隨其后的是萊特幣和以太坊,萊特幣價格飆升至2000元的歷史最高點,以太坊價格上漲了一倍達到5000元的高點,瑞波幣也不甘寂寞兩天價格翻3番,刷新歷史最高紀錄。作為數字貨幣第二梯隊的萊特幣、瑞波幣均已經出現價格的暴漲,那么同為第二梯隊的以太經典(ETC)也多次嘗試價格上的突破。現以太經典最新成交價格為193.52元,最高價格達225.76元,最低價格174.67元。[2017/12/15]
對比結果,我們可以看到 3 個版本都未發現關鍵的漏洞點。
代碼片段的檢測總結
可以看到 GPT 模型對簡單的漏洞代碼塊的檢測能力還是不錯的,但是對稍微復雜一點的漏洞代碼暫時還無法檢測,并且在測試中可以看到 GPT-4(Web) 的整體上下文可讀性很高,輸出格式清晰、舒服,但是其對代碼的審計能力暫時沒有遠超 GPT-3.5(Web)、GPT-3.5-turbo-0301,甚至在部分測試中由于 Transformer 輸出存在一定的不確定性反而導致 GPT-4(Web) 遺漏了一些關鍵問題。
為了更加契合普通項目方在合約審計中的簡單操作需求,這里我們提高些難度,針對代碼量大的合約進行全量導入上下文,讓 GPT-4 模型進行審計(GPT-3 對上下文的字符總數限制更小這里就不做測試)。
用例:《千萬美元被盜 —— DeFi 平臺 MonoX Finance 被黑分析》
整份合約分批輸入,在對話最后提出檢測漏洞請求
這里使用 Prompt:
Here is a solidity smart contract
Contract code
The above is the complete code,help me discover vulnerabilities in this smart contract.
可以看到,GPT-4 雖然在 OpenAI 公布的信息中其單次輸入字符總數已經是當前最高,但還是會由于文本超長導致在最后提問時 GPT 會上下文缺失而只識別到部分內容,所以這樣對大型合約而言就無法進行完整的上下文審計。
拆封整份合約,分批輸入分批檢測
對話 1:
Help me discover vulnerabilities in this solidity smart contract.
分段內容 1
對話 2:
分段內容 2
對話 3:
分段內容 3
(1)優點
GPT 對合約代碼中基礎的簡單的漏洞具備部分檢測能力,并且在檢測出漏洞后會以很高的可讀性來解釋漏洞問題,這樣的特性比較適合為初級合約審計工作者前期訓練提供快速指導和簡單答疑。
(2)存在的問題
a. 每次生成內容波動
GPT 對每次對話的輸出存在一定的波動,可以通過 API 接口參數進行調整,但是依舊不是恒定的輸出,雖然這樣的波動性對語言對話來說是好的方式,大大提高了對話給人的真實感。但是這對代碼分析類的工作來說是一個不好的問題。因為為了覆蓋 AI 可能告知我的多種漏洞回答,我需要多次請求同一問題并進行對比篩選,這無形中又提高了工作量,違背了 AI 輔助人類提高效率的基準目標。
例如這里再次運行 "漏洞代碼片段的檢測對比測試二(其中簡單改變函數名后再次生成):
可以看到其輸出結果比之前測試又多了一些額外內容。
b. 漏洞分析能力依舊有很大的提高空間
對稍微復雜的漏洞進行檢測即會發現當前的(2024.3.16)訓練模型不能正確的分析并找到相關關鍵漏洞點。
GPT 輔助合約審計的可行性和潛力分析
雖然當前來看 GPT 對合約漏洞的分析及挖掘能力還處于相對較弱的狀態,但它對普通漏洞小代碼塊的分析并生成報告文本的能力依舊讓使用者興奮,在可預見的未來幾年伴隨這 GPT 及其他 AI 模型的訓練開發,相信對大型復雜合約的更快速,更智能,更全面的輔助審計一定會實現。當科技發展可指數級提高人工的效率時就會發生質變,我們非常期待 AI 對區塊鏈安全的助力,我們會持續關注新 AI 產品對區塊鏈安全的影響。最后可見的將來我們必將與 AI 在一定程度上進行融合,愿 AI 和區塊鏈與你同在。
慢霧科技
個人專欄
閱讀更多
金色財經 善歐巴
金色早8點
白話區塊鏈
Odaily星球日報
MarsBit
歐科云鏈
深潮TechFlow
Arcane Labs
BTCStudy
作者:木沐 近段時間全球金融市場都不怎么太平,而近年長期與美股強相關的比特幣卻罕見“脫鉤”。有家分析顯示比特幣與美股的相關性觸及20個月低點,走出了“一枝獨秀”的獨立行情.
1900/1/1 0:00:00在不斷發展的加密貨幣投資世界中,您是否經常感到落后?您是否發現難以跟上市場上風險投資 (VC) 的最新動向?好吧,不要害怕,因為有各種工具和資源可以幫助您隨時了解情況并保持領先地位.
1900/1/1 0:00:00最近互聯網上討論最為熱切的話題,無異于OpenAI發布了GPT4版本,以及GPT4版本有多么強大,甚至被認為會顛覆當前傳統語境下的工作業態,并會給Web3世界帶來不可估量的增長空間.
1900/1/1 0:00:00原文編譯:Cecilia, bfrenz DAO上周的幾件大事接連發生,加密友好銀行 Silvergate Bank 暴雷、硅谷風投圈著名銀行 Sillion Valley Bank.
1900/1/1 0:00:002023年3月10日凌晨,硅谷銀行(Silicon Valley Bank)宣布為支撐流動性,以巨額虧損出售了210億美元的債券投資組合.
1900/1/1 0:00:00這條推文來聊一聊 Cosmos 生態的 LSD 賽道,與近期火熱的以太坊 LSD 相比,無論從市場關注度還是 LSD 資產總量,前者都鞭長莫及.
1900/1/1 0:00:00