简析meerkat跑路事件 如何躲避DeFi野矿?
安全生产简析下meerkat跑路事件
一、核心问题
1. AdminUpgradeabilityProxy天然的负面影响一代理的逻辑合约可以被替换
2.AdminUpgradeabilityProxy权限没有移交timelock一项目方不受时间锁约束,可以随意使用1。所说的能力,替换逻辑合约最终项目方无限制地将正常合约替换成了攻击合约,卷款跑路。
二、现场还原(以BUSD池为例)
1.项目方故意“坦诚”给出合约的timelock转移权限记录,展示的确执行了changeAdmin方法移交权限给timelock 地址,用于混淆视听
2.0x7E0c621Ea9F7aFD5b86A50B0942eAee68B04A61C proxy 合约,changeAdmin方法内部调用追踪到304行,实际写入key为ADMIN_ SLOT, 但读取key却为ADMIN_ SLOT。即O (欧)和0 (零)的一个细微差异,让changeAdmin方法完全失效,从而达到了已经移交权限的假象
三、结论和经验
1.高度警惕任何包含proxy 方式合约的项目,若未经timelock约束,合约有被瞬间替换的风险
2. never trust, always verify! 不要相信项目方给出的timelock“证据”, 对于未经审计的fork项目,务必逐个contract做好与原项目的diff (如果你做到了,就可以躲过meerkat的障眼法)
微信扫描关注公众号,及时掌握新动向
免责声明:
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场