2月19日,全球最大的NFT交易平台OpenSea刚开始支持用户使用新合约,一些用户的NFT资产就被盗了。
次日,OpenSea的CEODevinFinzer在推特上披露,「这是一种网络钓鱼攻击。我们不相信它与OpenSea网站相关联。到目前为止,似乎有32个用户签署了来自攻击者的恶意有效载体,他们的一些NFT被盗。」Finzer称,攻击者钱包一度通过出售被盗NFT获得了价值170万美元的ETH。
用户NFT被盗后,不少人在推特上猜测,钓鱼攻击的链接可能隐藏在假冒的「OpenSea致用户」邮件中。因为19日当日,该交易平台正在进行一项智能合约升级,用户需要将列表迁移到新的智能合约中。攻击者很可能利用了这次的升级消息,将钓鱼链接伪装成通知邮件。
2月21日,OpenSea的官方推特更新回应称,攻击似乎不是基于电子邮件。截至目前,钓鱼攻击的来源仍在调查中。
OpenSea用户遭「钓鱼」丢失NFT
2月18日,OpenSea开始了一项智能合约的升级,以解决平台上的非活跃列表问题。作为合约升级的一部分,所有用户都需要将他们在以太坊上的NFT列表迁移至新的智能合约中,迁移期将持续7天,到美东时间的2月25日下午2点完成,迁移期间,用户NFT在OpenSea上的旧报价将过期失效。
2月19日,用户需要配合完成的操作开始了。人们没有想到,在忙乱的迁移过程中,黑客的「黑手」伸向了OpenSea用户的钱包里。从用户们在社交平台的反馈看,大部分攻击发生在美东时间下午5点到晚上8点。
从后来在以太坊浏览器上被标记为「网络钓鱼/黑客」的地址上看,19日晚18时56分,被盗的资产开始从黑客地址转移,并在2月20日10时30分出现了通过混币工具TornadoCash「洗币」的操作。
黑客链上地址的部分动向
用户NFT被盗后,「OpenSea被黑客攻击,价值2亿美元资产被盗」的说法开始在网络上蔓延,人们无从得知失窃案的准确原因,也无法确认到底殃及了多少用户。
直到2月20日,OpenSea的CEODevinFinzer才在推特上披露,「据我们所知,这是一种网络钓鱼攻击。我们不相信它与OpenSea网站相关联。到目前为止,似乎有32个用户签署了来自攻击者的恶意有效载体,他们的一些NFT被盗。」Finzer驳斥了「价值2亿美元的黑客攻击的传言」,并表示攻击者钱包通过出售被盗NFT获得了价值170?万美元的ETH。
跨链DeFi平台Wing Finance推出NFT首付功能:金色财经消息,跨链DeFi平台Wing Finance宣布推出NFT首付功能,让用户以60%的首付购买蓝筹NFT。运行原理为:用户可以选择自己想要购买的NFT,平台提供NFT地板价40%的贷款给用户,用户支付剩余的60%,然后NFT将需在Wing NFT池中进行抵押。[2022/9/6 13:10:23]
区块链安全审计机构PeckShield列出了失窃NFT的数量,共计315个NFT资产被盗,其中有254个属于ERC-721标准的NFT,61个为ERC-1155标准的NFT,涉及的NFT品牌包括知名元宇宙项目Decentraland的资产和NFT头像「无聊猿」BoredApeYachtClub等。该机构还披露,黑客利用TornadoCash清洗了1100ETH,按照ETH当时2600美元的价格计算,清洗价值为286万美元。
安全团队:NFT项目JRNY CLUB的推特账户已被盗用:6月29日消息,安全团队CertiK今日发推文称,NFT项目JRNY CLUB的推特账户@JRNYclub已被盗用,且JRNY CLUB通过Discord公告确认此事,用户请勿点击任何链接。[2022/6/29 1:38:18]
攻击者如何拿到用户「签单」授权?
用户NFT失窃事件发生后,有网友猜测,黑客利用了OpenSea升级的消息,将钓鱼链接伪造成通知用户的邮件,致使用户上当受而点击了危险链接。
对此,DevinFinzer表示,他们确信这是一次网络钓鱼攻击,但不知道钓鱼发生在哪里。根据与32名受影响用户的对话,他们排除了一些可能性:攻击并非源自OpenSea官网链接;与OpenSea电子邮件交互也不是攻击的载体;使用OpenSea铸造、购买、出售或列出NFT不是攻击的载体;签署新的智能合约不是攻击的载体;使用OpenSea上的列表迁移工具将列表迁移到新合约上不是攻击的载体;点击官网banner页也不是攻击的载体。
简而言之,Finzer试图说明钓鱼攻击并非来自OpenSea网站的内部。2月21日凌晨,OpenSea官方推特明确表示,攻击似乎不是基于电子邮件。
截至目前,钓鱼攻击到底是从什么链接上传导至用户端的,尚无准确信息。但获得Finzer认同的说法是,攻击者通过钓鱼攻击拿到了用户转移NFT的授权。
推特用户Neso的说法得到了Finzer的转发,该用户称,攻击者让人们签署授权了一个「半有效的Wyvern订单」,因为除了攻击者合约和调用数据之外,订单基本上是空的,攻击者签署了另一半订单。
该攻击似乎利用了Wyvern协议的灵活性,这个协议是大多数NFT智能合约的基础开源标准,OpenSea会在其前端/API上验证订单,以确保用户签署的内容将按预期运行,但这个合约也可以被其他更复杂的订单使用。
按照Neso的说法,首先,用户在Wyvern上授权了部分合约,这是个一般授权,大部分的订单内容都留着空白;然后,攻击者通过调用他们自己的合约来完成订单的剩余部分,如此一来,他们无需付款即可转移NFT的所有权。
简单打个比方就是,黑客拿到了用户签名过的「空头支票」后,填上支票的其他内容就搞走了用户的资产。
也有网友认为,在钓鱼攻击的源头上,OpenSea排除了升级过的、新的Wyvern2.3合约,那么,不排除升级前的、被用户授权过的旧版本合约被黑客利用了。对此说法,OpenSea还未给出回应。
截至目前,OpenSea仍在排查钓鱼攻击的源头。Finzer也提醒不放心的用户,可以在以太坊浏览器的令牌批准检查程序上取消自己的NFT授权。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。