本文档描述了部署新代理和实现的过程,重点在于如何初始化合约。由于代理使用delegatecall将调用转发给实现,因此合约的初始化需要特别处理。文档详细介绍了如何部署实现合约、初始化字段,以及如何部署代理并验证字段是否正确初始化。
delegatecall
该工具旨在检测以太坊主网上未初始化的代理合约,识别潜在的安全漏洞,特别是那些未正确初始化的可升级代理合约,这些漏洞可能导致未经授权的访问或操作。该工具包含合约收集、代理检测、初始化函数检测、存储槽分析和漏洞利用测试等多个组件,通过扫描链上合约、分析字节码模式和存储槽数据来发现未初始化的代理合约,并尝试利用这些合约。