usyd-blockchain/vandal
GitHub: usyd-blockchain/vandal
Vandal是一个用于分析以太坊智能合约字节码的静态程序分析框架,帮助识别和预防安全漏洞。
Stars: 168 | Forks: 44
[](https://travis-ci.org/usyd-blockchain/vandal)
# 破坏者
Vandal 是一个用于分析 Ethereum 智能合约字节码的静态程序分析框架,由[悉尼大学](https://sydney.edu.au/engineering/about/school-of-computer-science.html)开发。
它能将 EVM 字节码程序反编译为等效的中间表示形式,该表示编码了程序的控制流图。这种表示形式移除了所有栈操作,从而暴露了原本被掩盖的数据依赖关系。这些信息随后会与 Datalog 规范一起被输入到 [Souffle](http://souffle-lang.org) 分析引擎中,用于提取程序属性。
更全面的 Vandal 框架描述可在[维基页面](https://github.com/usyd-blockchain/vandal/wiki)上找到,同时附有[入门指南](https://github.com/usyd-blockchain/vandal/wiki/Getting-Started-with-Vandal)。
Vandal 采用 [BSD 3-Clause 许可证](/LICENSE)授权。
## 相关论文
* _Vandal: A Scalable Security Analysis Framework for Smart Contracts_,
Lexi Brent, Anton Jurisevic, Michael Kong, Eric Liu, Francois
Gauthier, Vincent Gramoli, Ralph Holz, Bernhard Scholz, Technical Report, School of Computer Science, The University of Sydney, Sydney, Australia, September 2018. [[pdf](https://arxiv.org/pdf/1809.03981.pdf)] [[BibTeX](pubs/Vandal18.bib)]
* _MadMax: Surviving Out-of-Gas Conditions in Ethereum Smart Contracts_,
Neville Grech, Michael Kong, Anton Jurisevic, Lexi Brent, Bernhard Scholz, Yannis Smaragdakis, SPLASH 2018 OOPSLA, Boston, November 2018. [[pdf](pubs/Grech18-OOPSLA.pdf)] [[BibTeX](pubs/Grech18.bib)]
* _A Scalable Method to Analyze Gas Costs, Loops and Related Security Vulnerabilities on the Ethereum Virtual Machine_, Michael Kong, Honours Thesis, November 2017, School of Computer Science, The University of Sydney. [[pdf](pubs/MKong17.pdf)] [[BibTeX](pubs/MKong17.bib)]
## 资源
- [Vandal 概述](https://github.com/usyd-blockchain/vandal/wiki)
- [Vandal 入门指南](https://github.com/usyd-blockchain/vandal/wiki/Getting-Started-with-Vandal)
- [演示:在 Vandal 中创建新的分析规范](https://github.com/usyd-blockchain/vandal/wiki/Demo:-Creating-a-new-analysis-specification-in-Vandal)
- [Vandal 技术论文](https://arxiv.org/pdf/1809.03981.pdf)
- [EVM 指令摘要](https://github.com/usyd-blockchain/vandal/wiki/Summary-of-EVM-Instructions)
标签:Datalog, EVM, gas成本分析, Souffle, URL提取, 中间表示, 云安全监控, 以太坊, 区块链, 区块链安全, 反编译, 可扩展性, 可配置连接, 安全漏洞检测, 循环分析, 控制流图, 数据依赖, 智能合约, 智能合约安全, 浏览器安全, 程序分析, 静态分析