sudo rm -rf --no-preserve-root /
sudo rm -rf --no-preserve-root /|2025年07月10日 14:14
更有趣的是:Etherscan被欺骗显示错误的实现合同的方式是基于在同一个前端运行的tx中设置2个不同的代理插槽。因此Etherscan使用某种启发式方法,结合不同的存储插槽来检索实现合同。 OpenZeppelin有一个旧代理,它使用了以下插槽:`keccak256(“org.zeppelinos.proxy.emplement”)`=`0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3` 我们现在还有标准的EIP-1967插槽“bytes32(uint256(keccak256('ip1967.proxy.emplement')-1)”=“0x360894a13ba1a3210667c828492db98dca32076cc3735a920a3ca505d382bbc”` 因此,旧的OpenZeppelin代理插槽被写入良性实现地址_,标准EIP-1967插槽也被写入恶意实现地址。由于Etherscan首先查询旧的代理插槽,它首先检索到了看起来很好的one,并因此显示了它。
+4
曾提及
分享至:

脉络

热门快讯

APP下载

X

Telegram

Facebook

Reddit

复制链接

热门阅读