README
🚀 Aderyn - 强大的Solidity静态分析器
Aderyn是一款强大的Solidity静态分析工具,它能让你全面审视自己的智能合约,帮助协议工程师和安全研究人员发现Solidity代码库中的漏洞。
🚀 快速开始
你可以查看快速开始指南,其中还有视频教程。
cd path/to/solidity/project/root
aderyn
这将生成一个report.md报告。
更多CLI选项的使用示例请参考这里。
✨ 主要特性
- 原生支持Foundry项目。
- 原生支持Hardhat项目。(有时可能需要
remappings.txt文件) - 支持通过配置文件(
adeyrn.toml)来适配自定义框架。 - 支持生成Markdown、JSON和Sarif格式的报告。
📦 安装指南
⚠️ 重要提示
Windows用户必须安装WSL。
使用Cyfrinup
Cyfrinup是Cyfrin工具的跨平台安装管理器。
运行aderyn --version来检查安装情况。
运行cyfrinup将所有工具升级到最新版本。
使用curl
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/cyfrin/aderyn/releases/latest/download/aderyn-installer.sh | bash
运行aderyn-update来升级旧版本。
使用Homebrew
brew install cyfrin/tap/aderyn
运行brew upgrade cyfrin/tap/aderyn来升级旧版本。
使用npm
npm install @cyfrin/aderyn -g
重新运行npm install @cyfrin/aderyn -g来升级旧版本。
如果你使用Curl、Homebrew或npm进行安装,请确保你路径中的Aderyn是来自Homebrew或npm全局包目录的正确版本。如果~/.cyfrin/bin/aderyn存在旧版本,请使用rm -f ~/.cyfrin/bin/aderyn将其移除,因为这不再是默认的安装位置。
📚 详细文档
你可以阅读Cyfrin官方文档来深入了解Aderyn的功能。
此外,还有官方支持的VSCode扩展。你可以从Visual Studio Marketplace下载该扩展,轻松识别Solidity代码中的漏洞。
🔧 技术细节
Aderyn使得构建能够适应任何Solidity代码库和协议的静态分析检测器变得简单。本指南将教你如何构建、测试和运行自定义的Aderyn检测器。 要了解如何创建自定义的Aderyn检测器,请查看官方文档。
📄 许可证
Aderyn是一款开源软件,采用GPL - 3.0许可证。
如果你想帮助我们开发Aderyn,请参考我们的贡献指南,其中包含详细的开发环境设置和PR审批流程。
📝 致谢
本项目的成功离不开所有贡献者的努力。
📌 参考来源
- AST访问器代码来自solc - ast - rs。
- 用于后端AST生成的Foundry编译器foundry - compilers。
- 原始检测器基于4naly3er的检测器。
- 向静态分析的先驱slither致敬。
- Solidity AST生成器solidity - ast - rs。
Scan to contact