Generate wallpaper with avatars of colleagues
Generate wallpaper with avatars of colleagues
OpenSea 交易漏洞分析
Opensea 这个漏洞真的是坑惨一些大户了。 今天研究了一下 Opensea 的交易流程: 出售 NFT 时先调用一次此 NTF 合约的 setApprovalForAll 方法,将此 NFT 合约的所有 Token 质押给 OpenSea 的 Proxy 合约。(为什么不是质押单个,OpenSea 可能是为了节约大家的 Gas 费以便无 Gas list 此合约下的其他 Token)ERC721 setApprovalForAll将出售金额、售卖时间等数据进行一次签名保存在 OpenSea 的链下数据库中(用户修改售价时只需要重新进行一次链下签名只能降价不许涨价原因后面说) 购买 NFT 时会获取此 NFT 保存在 OpenSea 上的链下交易签名数据,作为一个参数传入 atomicMatch_,如果符合条件将调用 NFT 合约进行转移(NFT 已经质押过)。ERC721 _isApprovedOrOwner此次问题在于 OpenSea 链下签名数据是公开可获取的,可使用之前的签名数据进行交易,这也是 OpenSea list 之后只允许降价,涨价需要调用 Proxy 合约 ...
OpenSea 交易漏洞分析
Opensea 这个漏洞真的是坑惨一些大户了。 今天研究了一下 Opensea 的交易流程: 出售 NFT 时先调用一次此 NTF 合约的 setApprovalForAll 方法,将此 NFT 合约的所有 Token 质押给 OpenSea 的 Proxy 合约。(为什么不是质押单个,OpenSea 可能是为了节约大家的 Gas 费以便无 Gas list 此合约下的其他 Token)ERC721 setApprovalForAll将出售金额、售卖时间等数据进行一次签名保存在 OpenSea 的链下数据库中(用户修改售价时只需要重新进行一次链下签名只能降价不许涨价原因后面说) 购买 NFT 时会获取此 NFT 保存在 OpenSea 上的链下交易签名数据,作为一个参数传入 atomicMatch_,如果符合条件将调用 NFT 合约进行转移(NFT 已经质押过)。ERC721 _isApprovedOrOwner此次问题在于 OpenSea 链下签名数据是公开可获取的,可使用之前的签名数据进行交易,这也是 OpenSea list 之后只允许降价,涨价需要调用 Proxy 合约 ...
Hello World
Hello, system being formatted