ERC721R存在的风险和BUG
April 13th, 2022

1. owner权限过大

在 ERC721R 示例合约中 owner 可以通过 setRefundAddress 函数任意设置接收用户退回的 NFT 地址。当此退回地址持有目标 NFT 时,其可以通过调用 refund 函数不断的进行退款操作从而耗尽用户在合约中锁定的购买资金。且示例合约中存在 ownerMint 函数,owner 可在 NFT mint 未达总供应量的情况下进行 mint。因此 ERC721R 的实现仍是防君子不防小人,导致项目方利用此问题进行 RugPull。

2.缺少对退款接收地址的限制条件

由于缺少对退款接收地址的限制条件,开发者可通过bug,在ERC721R的限制期内抽走NFT合约中的资金,进而绕开该协议的约束,实现RugPull。

Subscribe to Renaissance Labs
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from Renaissance Labs

Skeleton

Skeleton

Skeleton