買以太坊 買以太坊
Ctrl+D 買以太坊
ads

以太坊:以太坊合并“后時代”「形式化驗證技術」如何檢測合約安全?_ETH

Author:

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

所謂的形式化驗證,簡單而言就是用數學工具進行驗證的方法,把代碼編成數學模型,從設計到實現整個流程,通過證明手段來證明代碼是完備安全的。

形式化驗證作為成都鏈安的核心技術之一,已經幫助上千份智能合約解決安全問題。可能很多人會問,為什么人工不能檢測到的問題,形式化驗證可以呢?

這是因為,對于形式化驗證,可以無需理解合約具體實現的細節,無需構造特定的場景,無需數據枚舉;通過邏輯關系凝練出可復用的安全屬性,對合約每條路徑都會進行嚴謹的數學公式推理,自動檢測每個可能的系統狀態及操作,計算出可滿足的解,并根據求解結果對比是否違反安全屬性最終檢測出每條路徑下可能存在的安全問題。

數據:以太坊驗證者節點突破20萬個:7月30日消息,以太坊驗證者節點已成功突破20萬個,而質押在ETH2.0存款合約中的ETH數量也超過了660萬枚,總價值超140億美元。據悉,在一個月的時間里,網絡上增加了超過2萬個驗證者,使驗證者的數量從18萬增加到超過20萬。目前,被質押的ETH數量占整個ETH流通供應的5%以上。以太坊網絡上質押ETH的年收益率為6.1%。(Newsbtc )[2021/7/30 1:24:16]

以太坊合并“后時代”,智能合約安全同樣不可忽視,今天,我們為大家準備了一個以太坊生態的案例,看看下面這份合約是如何在我們的智能合約形式化驗證平臺“鏈必驗”檢測出漏洞的。

Uniswap V3交易量躍居以太坊DEX首位:據歐科云鏈OKLink數據顯示,截至今日10時,以太坊上Dex 24小時交易量約合85.2億美元。其中交易量排名前三的Dex協議分別是Uniswap V3 17.1億美元,Uniswap V2 15.3億美元以及SushiSwap 11.7億美元。[2021/5/21 22:28:17]

鏈必驗,是一款全球領先的“一鍵式”智能合約形式化驗證平臺。檢測準確率高達97%以上,精確定位風險代碼位置并給出修改建議,自動檢測智能合約80余項的常規安全漏洞及功能邏輯缺陷。現已擁有生態用戶10萬+,是全球首套同時支持螞蟻鏈、騰訊區塊鏈、FISCO-BCOS、Fabric等的智能合約形式化驗證平臺。可以極大提高智能合約的人工審計效率,有效降低安全隱患遺漏風險。

01.

動態 | 安永區塊鏈平臺公開紅酒代幣化項目以太坊合約地址:四大會計師事務所之一的安永在本月初宣布將與新加坡區塊鏈公司 Wine Pte. Ltd. 合作推出基于區塊鏈的代幣化紅酒交易市場 TATTOO Wine,媒體 Trustnodes 報道了此項目的以太坊合約地址 (0x53A...252) 以及對應的非同質化代幣 Tattoo Bottle Token (TBT)。Trustnodes 認為,該項目使用了前端以及內部數據庫,通過安永的 OpsChain 連接至公開的區塊鏈項目以太坊。根據目前公開的地址來看,在 200 多次鏈上交易中生成了 200 多個 NFT 代幣,被總共 9 個地址持有,目前創建該合約的地址還持有超過 4 個 ETH。[2019/12/2]

準備需要驗證的示例Wizard_game.sol

聲音 | 以太坊核心開發人員:已有10335名用戶升級了Parity節點版本:據AMBCrypto消息,以太坊核心開發人員Afri Schoedon表示,自因安全漏洞推遲君士坦丁堡升級以來,在過去的12個小時內,有10335名用戶將他們的Parity以太坊節點升級到2.2.7穩定(76%)或2.3.0 beta(24%)版本。他們中的大多數使用GNU / Linux(95%),少數人使用Windows(4%)和MacOS(1%)。[2019/1/17]

說明:

原合約為以太坊上真實存在的一個巫師決斗合約。為了看起來簡單明了并且能夠使用形式化檢測驗證問題,本合約根據邏輯關系只保留巫師決斗超時的處理接口;

resolveTimedOutDuel是更新處理超時情況下的巫師決斗結果的接口;

其中每個巫師有自己的決斗場和決斗能量;

若巫師1滿足勝利條件,則將巫師2的決斗能量轉移給巫師1,再將巫師2的決斗能量清零。

2.合約上傳

新增項目

在“鏈必驗”工具中創建需要檢測的項目。本次檢測的項目為ETH類型項目,那么根據需求點擊工具左上方“新增項目”按鈕,輸入項目名稱,選擇項目類型,點擊確定。

新增合約文件夾

選擇剛創建好的項目,點擊工具左上方的“新增合約文件夾”按鈕,輸入文件夾名稱。

上傳合約文件

選擇剛創建好的文件夾,點擊工具左上方的“上傳”按鈕,上傳準備好檢測的合約文件。

3.合約檢測

新增項目

將待檢測合約上傳完成之后,選擇此合約,按照合約內容輸入檢測參數,然后點擊開始檢測。

4.查看結果

待合約檢測完成之后,查看檢測結果,通過代碼定位、錯誤描述、修復建議了解明確該漏洞的具體信息,然后查看代碼邏輯尋找問題并進行修復。

5.結果分析

經分析,產生此漏洞的原因是在執行resolveTimedOutDuel接口更新巫師1和巫師2的決斗屬性時,未考慮巫師1和巫師2相等的情況,在此場景下,巫師1的決斗能量會先翻倍,然后再清零,導致巫師1狀態更新前后總的決斗能量發生了改變,所以導致了assert斷言的失敗。

6.問題解決

此時在resolveTimedOutDuel接口中添加一個限制條件“require(wizardId1!=wizardId2);”,確保在執行決斗屬性更新時巫師1和巫師2不相等,查看是否還存在此問題。

7.漏洞檢測難度人工難以察覺,隨機測試難以出現這種情況

對于智能合約的驗證,通常是伴隨人工驗證,靠自身經驗不斷嘗試枚舉各項可能不滿足的輸入條件,從而比對輸出來判斷是否存在漏洞;其存在的問題就是人工成本昂貴,測試時無法覆蓋到所有的路徑,測試具有一定的機械性、重復性、工作量往往較大。

而對于智能合約的另外一種驗證方式-fuzzing模糊測試,雖然可以解決人工成本昂貴的問題,但是由于其沒有實際執行規則機制原因,僅靠“蠻力”不斷枚舉各個輸入,同樣存在可能出現某種輸入漏掉的問題,并且無法根據路徑檢測出一些邏輯性的漏洞。

在加密行業你想抓住下一波牛市機會你得有一個優質圈子,大家就能抱團取暖,保持洞察力。

如果只是你一個人,四顧茫然,發現一個人都沒有,想在這個行業里面堅持下來其實是很難的。

想抱團取暖,或者有疑惑的,歡迎加入!

感謝閱讀,喜歡的朋友可以點個贊關注哦,我們下期再見!

Tags:以太坊ETHCOS以太坊幣是什么幣ETH錢包地址ETH挖礦app下載Etherael指什么寓意COS價格COS幣

POL幣最新價格
區塊鏈:從架構、共識模型等多個方面了解Polkadot和以太坊的主要區別_區塊鏈存證怎么弄

現在,以太坊已經加入了權益證明俱樂部,它已經提出了實現其可擴展性、安全性和可持續性的最終愿景的初步步驟.

1900/1/1 0:00:00
FTX:投資者消化低于預期的CPI,因為風險資產上漲,而DXY進入周末_以太坊幣是什么幣FTX幣

幾乎整個2022年,美國通脹數據都給市場帶來了痛苦,然而,10月份的放緩為美聯儲不那么激進的加息帶來了新的希望.

1900/1/1 0:00:00
DOGE:狗狗幣價格分析:DOGE重新測試下行0.06美元,準備好走高了嗎?_DOG

TL;DR故障 狗狗幣價格分析今天看漲。DOGE/USD看起來會創下更高的低點。0.06美元的支撐位保持強勁.

1900/1/1 0:00:00
SMA:以太坊經典價格預測:ETC 區間處于高位_USDETC幣

以太坊經典(ETC)價格預測–9月7日ETC/USD市場的向上擺動運動已經讓加密經濟處于高位。在過去的九十天里,買賣活動一直在12.60美元和45.51美元的低點和高點之間.

1900/1/1 0:00:00
Merge:合并:解釋為什么以太坊的“最終老板”仍然是民族國家_Merge幣是什么幣加密貨幣是什么意思啊

以太坊的“最終老板”并不是它向權益證明的棘手過渡。它是一個民族國家。逃避這個對手的魔掌將取決于以太坊的“社交層”。這是根據多產的以太坊評論員安東尼薩薩諾所說的.

1900/1/1 0:00:00
比特幣:由于引發波動,比特幣價格有望因 CPI 出現“非常大的變動”_DXY比特幣中國官網聯系方式

一位分析師認為,BTC價格走勢可能會在10月12日之前保持冷靜,因為歷史波動率指標會發出罕見的警告信號.

1900/1/1 0:00:00
ads