本文档是ERC4626 Vault安全启动的第12.0版本,内容涵盖了ERC4626 Vault实现中发现的关键安全模式和漏洞,包括各种类型的Vault、跨链系统、AMM集成、CDP实现、清算机制、以及预言机和价格馈送问题等。文档详细列出了非标准代币支持问题、重入攻击、首次存款攻击、份额和价格操纵、通胀/紧缩攻击等一系列安全漏洞模式,并提供了相应的安全实施示例、检测方法和缓解措施。
本文循序渐进实现了 3 个合约:1. 简单质押奖励,重点介绍如何计算奖励的? 2. 代币化质押奖励,提高质押流动性; 3. ERC4626 代币化金库, 将质押存入到金库中。
这篇指南详细介绍了如何使用ApeWorX框架在以太坊Sepolia测试网部署ERC4626合规的质押储蓄合约。文章深入讲解了创建和部署ERC20代币和铁定盈利的储蓄合约的整个过程,包括必要的依赖、代码实现以及如何进行智能合约测试和部署,适合有一定基础的智能合约开发者。
《Uniswap V2 Book》是一本深入解析Uniswap V2代码的书籍,不仅逐行解释代码,还探讨了设计背后的原因、替代方案及决策动机。书中还引入了实践问题,并指导读者如何实现Uniswap V2的克隆版本。
本文详细解析了 ERC4626 代币库的工作原理及其安全隐患,特别是通货膨胀攻击的机制及其对初始存款用户的影响,并讨论了若干缓解策略,如使用 ERC4626 路由器、内部资产跟踪以及创建“死牌”的方法,以提升安全性。文章最后提供了关于实施安全性和保护用户资产的建议。
本文深入探讨了不变性(invariants)在智能合约安全中的重要性,特别是如何在ERC4626金库中定义不变性。作者详细阐述了不变性定义的过程,并介绍了四种属性类型,帮助开发者理解如何构建安全的智能合约。文章结构清晰,包含丰富的示例和图示,适合有一定基础的开发者阅读。
本文详细介绍了如何在Solidity中实现和测试智能合约的不变性,通过定义有效状态、状态转移和变量转移等属性,并使用Echidna、Medusa和Foundry等工具进行模糊测试。文章分为明确的部分,讲解了不变性质的代码实现过程,并提供了丰富的示例和解释,适合对Solidity和智能合约分析有一定了解的开发者阅读。
文章详细介绍了DeFi领域中常见的Vault Inflation Attack(金库膨胀攻击),通过示例展示了攻击的原理和实现方式,并探讨了如何通过不同的方法来缓解这种攻击。
本文介绍了在 Beraborrow 代码库中发现的一个关键漏洞,该漏洞通过模糊测试发现,但在安全竞赛中被遗漏。该漏洞与舍入误差有关,导致每个 Vault 份额的价格意外下降,从而可以触发 Recovery Mode 并清算其他借款人。文章强调了多层安全方法的重要性以及模糊测试在发现此类边缘案例方面的优势。
本文主要分析了 ERC4626 标准下的 On-chain Vault 可能遭受的通胀攻击,攻击者通过操纵 Vault 中的资产总量来稀释其他用户的份额,并探讨了多种防御方法,包括初始化 Vault 资产、内部控制资产总量、使用 decimals offset 以及 OpenZeppelin 提出的虚拟份额和资产方案。
本文详细介绍了 ERC4626 标准,它为 token vaults 提供了一个标准化的接口,并探讨了 Vault 的概念及 Yearn Vaults 的实际应用。此外,文章还深入分析了 Openzeppelin 的 ERC4626 实现,包括构造函数、公共/外部函数、私有/内部函数和 getter 函数,最后强调了 ERC4626 Vault 的安全问题,如通货膨胀攻击,并提出了相应的防御措施。
本文介绍了 ERC7540 标准,它是在 ERC4626 vault 标准基础上引入的异步执行层,通过引入请求(request)机制,将 deposits 和 withdraws 拆分为 request, fulfill, claim 三个阶段,从而解决异步处理的问题,例如 Centrifuge 协议处理异步存取款的场景,同时介绍了其核心概念、接口、实现工作流程以及应用案例。
Wise Lending遭受了466,000美元的攻击损失,攻击者通过捐赠攻击利用了协议中的漏洞。文中详细分析了Wise Lending的工作原理及其被攻击的组件——金库,介绍了金库的概念、常用的防御机制及攻击者如何通过操纵金库的回报机制进行攻击,最后指出了Wise Lending的防御缺陷,揭示其未能实施的关键防护措施。
ERC4626 协议是一种用于代币化保险库的标准,它可以优化和统一收益保险库的技术参数。
ERC4626库本身是一种有底层ERC20资产质押的shares且本身同样满足ERC20标准。用户可以通过deposit或mint方法来质押底层资产并增发shares,也可使用burn或redeem方法来销毁shares并赎回底层资产。