比特幣行情 比特幣行情
Ctrl+D 比特幣行情
ads

CHA:ChatGPT的Web3.0安全審計藝術:有點東西,但不完全有

Author:

Time:1900/1/1 0:00:00

2022?年?11?月,OpenAI?推出了創新的人工智能項目。

除了可用于進行文章的撰寫和總結、笑話和詩歌的創作以外,ChatGPT?還可以用來調試和生成代碼。

2022?年全年,Web3.0??領域因黑客攻擊和欺詐等事件造成的資產損失超過了?37?億美元,這樣巨額損失不禁讓業內人思考:如?ChatGPT?這樣的新技術是否可以用以改善智能合約代碼的安全性。

ZKasino?是一個去中心化的平臺,近期通過?ChatGPT?進行了一次預審計。

ZKasino?希望在?CertiK?開展全面審計的同時,讓?CertiK?為?ChatGPT?所得出的結果進行一個初步的審查,以測試?ChatGPT?作為?AI「智能合約審計師」的能力。

那么?ChatGPT?的測試結果如何呢?

其是否已經準備好接替人工代碼審計專家的工作?

或者說它仍不足以完全替代人工?

ChatGPT更新內容包括更多可控制的API模型、功能調用能力:金色財經報道,OpenAI公布(對ChatGPT的)更新內容,包括更多可控制的API模型、功能調用能力、更長的上下文和更低的價格。此外,嵌入模型成本降低了75%。[2023/6/14 21:34:40]

2022?年?12?月?23?日,ZKasino「聘請」了?ChatGPT?來識別智能合約中潛在的安全風險。該工具也的確提出了幾個表面上聽起來很合理的風險擔憂。

然而,盡管?ChatGPT?不可否認地為Web3.0?安全社區提供了一些有價值的服務,但是我們發現其仍有相當大的改進空間——ChatGPT?遺漏了一些嚴重或關鍵性的漏洞,同時又「誤傷」了那些沒問題的代碼。在此,我們希望?CertiK?安全專家的深度數據和建議能夠助力?ChatGPT?成為一個更強大的Web3.0?應用安全工具。

下文,我們將為大家詳細介紹此次事件中?ChatGPT?的兩類錯誤發現。

ChatGPT?發現了合約中的哪些問題?

律師事務所Rosen計劃對比特幣礦企Argo Blockchain提起集體訴訟:2月13日消息,律師事務所Rosen計劃對比特幣礦企Argo Blockchain提起集體訴訟,正在調查潛在索賠名單,鼓勵在Argo損失超過10萬美元的投資者聯系該律所,并提醒投資者在針對Argo提起的聯邦證券集體訴訟中尋求首席原告角色的截止日期為2023年3月27日。

金色財經此前報道,ArgoBlockchain去年曾因財務問題瀕臨破產,2022年12月28日,Argo Blockchain同意向Galaxy Digital以6500萬美元價格出售其位于德州的Helios采礦設施,以避免破產。[2023/2/13 12:02:48]

ChatGPT?遺漏了什么

ChatGPT?提到了在許多智能合約實現中都會存在的幾個常見安全問題。

但是,它未能識別某些嚴重的風險,包括:

項目特定的邏輯漏洞

不準確的數學計算和統計模型

Chamath Palihapitiya出售加密和股票交易平臺SoFi 15%的股份:11月19日消息,億萬富翁Chamath Palihapitiya出售了他在加密貨幣和股票交易平臺及金融公司SoFi15%的股份。今年早些時候,該公司通過與Palihapitiya領導的一家空白支票公司合并上市,最初的估值為86.5億美元,現在的市值為170.4億美元。Palihapitiya今天在推特上證實,他將出售SoFi的股票。[2021/11/19 22:03:51]

代碼實現和項目設計的不一致

漏洞#1?:項目特定的邏輯問題

ChatGPT?未能識別出一個關鍵漏洞,該漏洞會導致攻擊者可以不斷地贏取并耗盡?Bankroll?合約中用戶的資金。玩家可以通過調用可驗證隨機函數加入游戲,Chainlink?的?VRF?會使用隨機數觸發?fulfillRandomWords()函數以完成游戲。

ZKasino?的代碼允許用戶在?fulfillRandomWords()?調用失敗的情況下將資金取回。

動態 | 因Lyft IPO太火 雅虎財經臨時取消Cardano創始人Charles Hoskinson的采訪:據Cryptoglobe消息,Cardano(ADA) 創始人、以太坊聯合創始人Charles Hoskinson曾在當地時間3月29日發推透露即將接受雅虎財經采訪。但由于Lyft IPO的消息導致股票開始飆升,雅虎財經決定放棄他的采訪以繼續報道當天的熱門話題Lyft IPO。Charles Hoskinson透露,在雅虎財經的經歷很不愉快,他聲稱制片人“似乎并不關心,也沒有為浪費我們的時間道歉”。[2019/4/1]

在?CertiK?對同一智能合約代碼的審查中,發現了一個潛在且有害的_transferPayout()調用,該函數被設計為可將贏取的資金轉移至玩家的賬戶。

然而攻擊者可以在輸了的時候調用_transferPayout()使其回滾,導致整個?fulfillRandomWords()調用失敗——這會使其進入長為?100?個區塊的等待期,繼而觸發?CoinFlip_Refund()進行退款,這意味著攻擊者相當于永遠不會輸錢。

Waltonchain員工獲獎引爭議:總部位于中國的區塊鏈公司Waltonchain( WTC)在今年情人節舉辦了一場促銷活動,幸運用戶可以獲得565 WTC(約10700美元)的獎金。公司近期在推特上公布了200多名獲獎者名單,Waltonchain員工無意中透露自己是200名幸運的贏家之一,引起巨大爭議。Waltonchain回應質疑稱,公司的選擇過程是隨機的,只是碰巧選中公司員工。隨后Waltonchain取消了該員工所獲獎金,并在Twitter向其4.6萬名粉絲發布了道歉聲明。[2018/3/5]

雖然?ChatGPT?認識到了調用失敗的問題,但卻未能發現在這個項目中利用調用失敗的攻擊手法。

因此,ChatGPT?沒有發現該漏洞與項目邏輯相結合所產生的影響。有關具體攻擊流程的描述,請參閱?ZKasino?的完整審計報告。

漏洞#2?:不準確的數學計算和統計模型

確保滿足合理預期的隨機性和結果在任何游戲項目中都至關重要。為了證實這一點,需要在審計過程中對所有游戲結果的隨機性進行全面評估。

盡管?ChatGPT?同樣「認同」這一點的重要性,但它并未發現任何不公平的游戲結果。它提出了?VRF?的使用,以及如果?VRF?合約被破壞或被操縱,可能會出現不公平的結果:

“如果?VRF?合約不安全或被操縱,則可能會導致游戲出現不公平的結果。”

然而,這個結論僅僅只是一個結論,并沒有真正解決導致游戲結果不公平的根本原因。而且我們在審計過程中也發現了一些關于隨機性的潛在風險問題。

不公平的隨機性

發現的其中一個關于隨機性的中等級別風險是?VideoPoker?游戲中不公平的隨機數使用問題,玩家獲得某些牌的機會較少。

小數截斷

另一個風險問題是在骰子類游戲中發現的,它允許玩家選擇特定的倍數來使他們的預期收益最大化。

漏洞#3?:代碼實現和項目設計的不一致

ChatGPT?往往能夠理解單一函數的實現,卻無法理解這樣寫的根本原因。

例如,它可能了解某個函數在技術層面是怎樣執行的,但他無法理解在整個智能合約中,該函數有著什么樣的目的。

為了確保?ChatGPT?在編碼中不出問題,它需要更好地理解智能合約的代碼邏輯。

就目前的情況而言,ChatGPT?提供的是對代碼的表面閱讀。為了使其審計工作和水平更上一層樓,它必須學會從一個函數反向推導出其初始邏輯——這點非常重要。

不正確的輸入驗證

我們在?Plinko?合約中發現了一個輸入驗證問題,導致倍數設置不正確。

根據?ZKasino?的說法,Plinko?中使用的行數應該是?8?到?16?。但是,由于以下檢查中的錯誤,Bankroll?合約所有者可以通過函數?setPlinkoMultipliers()設置一個超出預期范圍的行數值。

代碼顯示,如果?numRows?和?risk?均不滿足條件,該流程將被回滾。

但是,如果兩個條件中只有一個不滿足,那么檢查仍然會通過,并且代碼不會被回滾。

ChatGPT?在回答第二個問題時給出了不同的答案:該函數檢查“numRows”的值是否在?8?到?16?之間,以及“risk”的值是不是小于?3?。如果不滿足上述任一條件,函數將返回錯誤“InvalidNumberToSet”。

ChatGPT?似乎理解了這個函數的目的。然而,它并不具備相應的應用程序知識,在沒有額外信息的情況下也無法識別真正的漏洞。

值更新的不一致

在?Slots?合約中,發現了與?totalValue?更新不一致相關的問題,這可能導致游戲過早結束。totalValue?用于監控用戶的輸贏,但它只跟蹤了支付情況,卻未從實際游戲中扣除,導致用戶的損益計算錯誤。

寫在最后

盡管經過了相應培訓,但?ChatGPT?在其審計中還是遺漏了某些關鍵性的安全問題。這是由于人工智能在充分理解代碼的復雜性和細微差別方面的局限性,以及其缺乏在現實場景中的實踐經驗。

正如其官網所述,ChatGPT?是一個依賴自然語言處理進行對話的研究版本。它通常無法像人類審計專家那樣去理解代碼背后的意圖和邏輯推理。

因此,重要的是需要通過經驗豐富的安全專家的手動審計來補充?ChatGPT?分析的不足之處,以確保全面的準確性。

下圖強調了基于人工的服務以及?ChatGPT?在各種標準上的優勢和劣勢。

就像是我們使用百度翻譯一樣,英文翻譯結果的準確性往往取決于我們的中文措辭——ChatGPT?回答的有效性在很大程度上取決于?prompt的格式。

在本文中,我們將?ZKasino?與?ChatGPT?交互的預審計結果和?CertiK?專家執行的最終審計結果進行了比較。

隨著技術的進步和對?prompt?工程的更清晰的理解,工程師將能夠更好地利用ChatGPT。

在?CertiK?官方公眾號接下來發布的內容中,我們將會就如何向?ChatGPT?提出有效問題來與大家探討?prompt?工程的更多深入性內容。

但是現在,ChatGPT?甚至已經可以幫助我們參加奪旗比賽了:歡迎大家點擊閱讀!

Tags:CHAGPTHATATGchainlink幣能漲到多少CGPT幣bchat幣聊下載CATGE

fil幣價格今日行情
COM:XT.COM關於上線CAT(CAT)交易及交易瓜分$6,000獎金的公告

尊敬的XT.COM用戶:XT.COM即將上線CAT,並在創新區開放CAT/USDT交易對。 詳情如下: 充值時間:2023年02月27日08:00交易時間:2023年02月27日09:00提現時.

1900/1/1 0:00:00
DEFI:DeFi vs. Web3:關鍵差異

公眾號:幣圈一級市場阿生1.DeFi是Web3的一部分嗎?DeFi是Web3中的一種新興金融系統,它提供了傳統金融系統中不存在的新形式的價值和效用。Web3是互聯網的新范式.

1900/1/1 0:00:00
BASE:Coinbase新鏈Base的首批合作伙伴都有哪些項目?

2月23日,納斯達克上市交易所Coinbase發布以太坊L2網絡「Base」,官方表示,Base是一個安全、低成本、開發人員友好的以太坊L2,旨在為Web3引入下一代十億用戶.

1900/1/1 0:00:00
HOT:Hotcoin關於開放GNS交易的公告

尊敬的用戶:Hotcoin將於(GMT8)2023年2月28日17:00開放GNS/USDT交易業務,2023年3月1日17:00開放GNS提幣業務,充值業務開放時間將以公告另行通知.

1900/1/1 0:00:00
GER:德州監管機構:若 Alameda 4.45 億美元的索賠成功,Voyager 債權人權益將減半

ForesightNews消息,美國德克薩斯州監管機構在一份法庭文件中表示,若AlamedaResearch對Voyager4.45億美元的索賠成功.

1900/1/1 0:00:00
BIN:美國德州反對Binance.US與Voyager的擬議交易,原因包括條款和重組計劃披露不充分

2月27日消息,根據2月24日的一份法庭文件,美國德克薩斯州證券委員會和銀行部門反對Binance.US與破產的加密貨幣貸方VoyagerDigital之間的擬議交易.

1900/1/1 0:00:00
ads