長安鏈生態(tài)工具箱??
豐富實(shí)用的區(qū)塊鏈生態(tài)工具不僅可以讓開發(fā)者部署、開發(fā)過程更加得心應(yīng)手,還可以從能力上擴(kuò)展區(qū)塊鏈應(yīng)用邊界。長安鏈正在構(gòu)建強(qiáng)大的生態(tài)工具箱以增強(qiáng)在其在各類場景下的應(yīng)用能力,如智能合約漏洞檢測、抗量子多方安全計(jì)算、鏈遷移、密文檢索等等
長安鏈虛擬機(jī)測試工具WasmFuzzer
智能合約的安全不僅僅是合約代碼安全,來自節(jié)點(diǎn)的合約代碼將被部署在智能合約虛擬機(jī)中,虛擬機(jī)負(fù)責(zé)為區(qū)塊鏈上每個(gè)節(jié)點(diǎn)中的合約代碼提供沙箱式的執(zhí)行環(huán)境。虛擬機(jī)可能存在有逃逸漏洞、邏輯漏洞、堆棧溢出漏洞、資源濫用漏洞等安全隱患,容易受到外部攻擊。
為消除虛擬機(jī)的安全隱患,社區(qū)針對長安鏈智能合約虛擬機(jī)的特點(diǎn)采用全新Wasm字節(jié)碼級別的變異方法和自適應(yīng)變異策略,結(jié)合差分測試和蛻變測試等Test Oracle判定方法,推出了長安鏈智能合約虛擬機(jī)模糊測試工具WasmFuzzer。這款Wasm字節(jié)碼級別的灰盒模糊測試器能夠更加快速和全面的觸發(fā)智能合約虛擬機(jī)中的深層次缺陷和漏洞。相比業(yè)界經(jīng)典的AFL工具,測試覆蓋率和缺陷檢測數(shù)量平均提升10%,缺陷檢測速度平均提升25%。
WasmFuzzer主要包括三個(gè)部分:展示層主要包括命令行接口和測試報(bào)告的生成;中間層主要有種子生成、測試用例的變異,變異策略和結(jié)果的判定;測試執(zhí)行引擎包括Forkserver、讀寫文件和覆蓋的獲取。
WasmFuzzer有四個(gè)核心功能:生成指令、變異模塊、錯(cuò)誤檢測、測試結(jié)果。
1. 生成指令:指令是WebAssembly代碼當(dāng)中的基礎(chǔ)單位。要完整地測試WebAssembly虛擬機(jī),則需要盡可能地覆蓋所有指令,WasmFuzzer提供生成指令的功能。
2. 變異模塊:模塊是WebAssembly的基本單位。當(dāng)已有一個(gè)模塊時(shí),就可以在它上面進(jìn)行變異,獲得一個(gè)新的模塊,用于模糊測試。WasmFuzzer提供了一定量的變異操作,并設(shè)計(jì)了變異調(diào)度策略。
3.?錯(cuò)誤檢測:在軟件運(yùn)行過程中,可能會發(fā)出一些信號,讓外部介入,調(diào)用預(yù)設(shè)的信號處理軟件WasmFuzzer進(jìn)行處理。WasmFuzzer可以記錄下當(dāng)前的運(yùn)行狀態(tài),進(jìn)而改進(jìn)測試質(zhì)量與記錄崩潰位置。
4. 測試結(jié)果:主要分為3部分——在隊(duì)列中的WebAssembly字節(jié)碼、發(fā)生獨(dú)特崩潰的WebAssembly字節(jié)碼和獨(dú)特掛起的WebAssembly字節(jié)碼。
文檔鏈接:https://docs.chainmaker.org.cn/dev/虛擬機(jī)測試工具.html文章來源:http://www.zghlxwxcb.cn/news/detail-498208.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-498208.html
到了這里,關(guān)于生態(tài)工具箱 | 虛擬機(jī)測試工具WasmFuzzer,智能合約安全防火墻的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!