revive cc
1.0.0
revive^CC是用於HyperLeDger Fabric智能合約(鍊式)的靜態分析工具(鏈接),旨在檢測區塊鏈相關的安全漏洞,以幫助開發人員編寫清潔且安全的智能合約。 revive^CC是HyperLeDger Fabric Chaincode現有的兩個現有靜態分析工具之一,另一個工具是Chainsecurity的鏈碼掃描儀,可以分析滿足某些要求的鏈碼文件。使revive^CC特別的原因是該工具將安全分析的可訪問性帶入了任何鏈代碼文件。到目前為止,這是尚未可用的。
該工具是開源GO靜態分析工具的擴展,並是使用Revive的框架構建的。因此,它包含Revive的所有好處和檢查,以幫助開發人員編寫乾淨的GO代碼。 revive^CC是我在謝菲爾德大學的“分析智能合約”的論文項目的一部分。
1. Place folder in the your $GOPATH/src/github.com/youraccount
2. Go into directory sivachokkapu/revive-cc
3. $ make install
4. $ make build
5. Move the revive file into $GOPATH/bin
6. You should now be able to use revive commands
$ revive {chaincodefilename.go} - will analyse the file
$ revive -formatter stylish {chaincodefilename.go} - better output format
$ revive - on a directory will analyse all files if from the same package

在目錄上使用$ revive


黑名單鏈碼導入漏洞的示例

鏈代碼中全球狀態可變漏洞的示例

鏈碼中goroutines漏洞的示例

phantom讀取鏈代碼中的分類帳漏洞的示例

範圍範圍超過鏈中的地圖漏洞

讀取後讀取漏洞的示例
麻省理工學院