簡述:兩年前,在我們開始討論區(qū)塊鏈安全的時(shí)候,當(dāng)時(shí)我們手頭上幾乎沒有任何可以直接使用的工具。我們既沒有靜態(tài)分析工具和模糊測(cè)試工具,也沒有任何針對(duì)以太坊的逆向分析工具,我們什么都沒有。因此,我們投入了大量的時(shí)間和精力并利用專業(yè)知識(shí)創(chuàng)造出了我們所需要
兩年前,當(dāng)我們開始討論區(qū)塊鏈的安全性時(shí),我們手頭幾乎沒有可以直接使用。我們既沒有靜態(tài)分析工具,也沒有模糊測(cè)試工具,也沒有以太坊的逆向分析工具。
因此,我們投入了大量的時(shí)間和精力,利用專業(yè)知識(shí)創(chuàng)造了我們需要的東西,并進(jìn)行了無數(shù)的測(cè)試來提高我們的成績。今天,我們很高興與您分享這些工具,希望它們能幫助提高以太坊的安全水平。
開發(fā)工具
為了建立一個(gè)安全的以太坊代碼庫,我們必須首先熟悉一些常見的錯(cuò)誤實(shí)踐,并避免再次犯這些錯(cuò)誤。其次,我們還需要對(duì)新添加的代碼進(jìn)行各種靜態(tài)分析,模糊新添加的功能,并驗(yàn)證最終產(chǎn)品的有效性和安全性。
1.NotSoSmartContracts
這個(gè)名叫“NotSoSmartContracts”代碼庫包含許多常見的以太坊智能合約漏洞,包括真實(shí)代碼。查看此代碼庫后,您將了解并熟悉一些可能出現(xiàn)的安全問題。
該代碼庫為存儲(chǔ)每種類型的漏洞提供了一個(gè)子目錄,如整形外科溢出、可重入性(注:可重入類似于遞歸概念)和未受保護(hù)的功能。每個(gè)子目錄都包含相關(guān)的內(nèi)容readme真實(shí)場(chǎng)景下的文件和合同漏洞樣本,有的還提供漏洞使用代碼。
演示視頻:https://asciinema.org/a/6W3GSHeisBrohMRqrhbjqg08v
我們可以使用這些樣本和測(cè)試用例來測(cè)試我們開發(fā)的以太坊漏洞挖掘工具,并評(píng)估它們的有效性。需要注意的是,我們必須在充分了解漏洞細(xì)節(jié)后進(jìn)行測(cè)試,否則可能會(huì)造成一些嚴(yán)重的后果。
2.Slither
Slither包含一整套針對(duì)Solidity專用靜態(tài)分析工具(以太坊智能合約腳本語言)可用于檢測(cè)編碼中常見的錯(cuò)誤,如可重用性、構(gòu)造函數(shù)和方法訪問。Slither目前只提供給與我們合作的公司,但如果你感興趣,也可以通過API來監(jiān)聽或訪問相關(guān)功能【傳送門】。
演示視頻:https://asciinema.org/a/Guu4k6vxgF9C17z3rwhbECCK0
Slither操作非常簡單:
$slither.pycontract.sol
運(yùn)行之后,Slither將向您輸出所有發(fā)現(xiàn)的漏洞信息。
3.Echidna
Echidna采用下一代智能模糊測(cè)試技術(shù)EVM檢測(cè)字節(jié)碼。它提供了一個(gè)簡單的單元測(cè)試用例,覆蓋率高(80%以上),完成一個(gè)功能的開發(fā)后可以使用Echidna測(cè)試您的代碼是否有安全漏洞。
演示視頻:https://asciinema.org/a/zfeDxWagBIadulMU5mlqYdBGF
Echidna使用也很簡單:
(1)添加到您的代碼中Echidna測(cè)試用力(參考樣例);
(2)操作命令“./echidna-testcontract.sol”;
(3)查看輸出信息;
假如你還想進(jìn)行更先進(jìn)的安全分析(如抽象狀態(tài)機(jī)測(cè)試),Echidna也可以。
4.Manticore
Manticore使用符號(hào)執(zhí)行模擬EVM字節(jié)碼復(fù)雜的多合同和多重交易攻擊。當(dāng)您的應(yīng)用程序開發(fā)完成后,您可以使用它Manticore檢測(cè)程序中的危險(xiǎn)狀態(tài),Manticore能夠列出合同的執(zhí)行狀態(tài),并驗(yàn)證關(guān)鍵功能的安全性。
演示視頻:https://asciinema.org/a/MCIMEImS8wIeHHvWfxiNKMc67
如果你的合約不需要初始化參數(shù),那你就可以使用命令行工具來查看智能合約的所有執(zhí)行路徑了:
manticorecontract.sol--contractContractName--txaccount[attacker
騰佑科技(www.mubashirfilms.com)成立于2009年,總部位于河南鄭州,是一家集互聯(lián)網(wǎng)基礎(chǔ)設(shè)施及軟硬件于一體化的高新技術(shù)企業(yè),具有IDC/ISP/ICP/云牌照、雙軟等資質(zhì),并擁有多個(gè)國家版權(quán)局認(rèn)證。公司自成立以來,一直致力于發(fā)展互聯(lián)網(wǎng)IDC數(shù)據(jù)中心DataCenter、云計(jì)算Cloud、大數(shù)據(jù)BigDate、人工智能AI、內(nèi)容加速CDN、互聯(lián)網(wǎng)安全、軟件定制開發(fā)等產(chǎn)品服務(wù)及行業(yè)客戶技術(shù)一體化智能解決方案;2018年成為百度智能云AI河南服務(wù)中心。
售前咨詢熱線:400-996-8756
備案提交:0371-89913068
售后客服:0371-89913000
搜索詞
熱門產(chǎn)品推薦