一、OpenSea事件描述
近日,OpenSea首席执行官Devin Finzer在一条推文表示:"到目前为止,有32个用户签署了来自攻击者的入侵,他们的一些NFT被盗。"并暗示可能是一个欺诈性网站造成的。
"我们正在积极调查与OpenSea相关的智能合约的漏洞传闻,这似乎是源于OpenSea网站之外的钓鱼攻击。请不要点击opensea.io以外的链接。"
SharkTeam第一时间对此事件进行了攻击技术分析,并总结了安全防范手段,希望后续的区块链项目可以引以为戒,共筑区块链行业的安全防线。
数据:胖企鹅系列NFT近24小时交易额增幅超450%:金色财经报道,据OpenSea数据显示,Pudgy Penguins(胖企鹅)系列NFT近24小时交易额为240ETH,增幅达466%,24小时交易额排名位列OpenSea第5。[2022/12/27 22:09:13]
二、OpenSea事件攻击原理分析
攻击者账户(Fake_Phishing5169):0x3e0defb880cd8e163bad68abe66437f99a7a8a74
攻击合约(Fake_Phishing5176):0xa2c0946ad444dccf990394c5cbe019a858a945bd
1. 创建攻击合约
交易:0x2b8bcaa9dc90cf0a174daf0e9f4fd4cbc5fa1a3b32e2213238feb186559e8779
NBA巨星斯蒂芬·库里在Polygon发行\"Genesis Curry Flow\"系列 NFT:12月24日,据官方消息,NBA巨星斯蒂芬·库里已在Polygon网络发行5款\"Genesis Curry Flow\"球鞋系列NFT,目前地板价为0.53 ETH,总销售额突破1200 ETH。[2021/12/24 8:00:58]
2. 发起攻击
以交易0x9ce04d64310e40091c49c53bac83e5c781b3046e53c256f76daf0e8a73458dad为例,
说唱歌手Kanye West的壁画将在Avalanche上作为NFT出售:金色财经报道,最近在芝加哥创作了美国说唱歌手Kanye West的壁画的艺术家Jason Peterson正在Avalanche区块链上以NFT形式出售这幅艺术品。该NFT将在由Peterson、NFT初创公司Kalao和Ava Labs最近开发的新市场YeaProbablyNothing上出售。NFT的拍卖将于美国东部时间10月11日下午1点举行,并于10月22日下午1点结束。据悉,NFT的所有者将通过位于实物壁画上的二维码链接到艺术品,NFT的所有权将随时在Avalanche区块链上可见。[2021/10/12 20:21:37]
执行过程如下:
HDAO 公开课:NFT市场极为广阔,但最好的项目还未出现:11月13日晚8点,加密资产投资机构BKFUND创始人许超逸先生做客超导公开课第34期,表示NFT市场极为广阔,但最好的项目还未出现。
许总认为,实物资产NFT是一个非常有前景的行业,因为实物资产本身的市场空间非常庞大,但是实物资产最关键的问题是需要有可信第三方进行NFT的发行与承兑,这里面有市场教育和用户教育的过程,还有涉及到监管合规的问题。总的来说,实物上链为NFT依然是一个比较漫长的过程,需要大家有足够的耐心去等待。
HDAO作为去中心化的金融服务生态系统,一直致力于创建一个高效、透明和可实现的数字金融生态系统。HDAO作为万物上链先锋践行者,正在稳健推进NFT铸造系统,使用户可以方便地放置真实世界的资产作为抵押品,进行借贷和挖矿,引领NFT行业商业创新与应用落地。[2020/11/13 20:46:06]
WyvernExchange合约atomicMatch函数如下:
其中,订单签名校验requireValidOrder函数如下:
函数中包含了挂单授权(签名)的校验,因此,攻击者发起攻击交易,将NFT从原来持有者账户(0xf2d29bbd9508cc58e2d7fe8427bd2bc0ad58e878, 记为0xf2d2)转账到攻击者账户,需要获取到账户0xf2d2的授权(签名)。
攻击者要想获取到其他账户的签名,可以通过以下方法:
(1)获得账户的私钥
(2)签名重放攻击
(3)通过网络钓鱼等方式获取用户的私钥或者签名。
这里,攻击者明显并没有获取到账户0xf2d2的私钥,而且函数中有防止签名重放的措施:
另外,也没有从交易中发现签名重放攻击。
因此,我们分析,被攻击的用户意外签署了来自攻击者的恶意交易,攻击者获得了用户的挂单授权,然后利用该授权签名窃取了用户的NFT。综上所述,我们认为此次攻击事件是由链下的网络钓鱼攻击引起的,而不是链上合约代码漏洞造成的。
三、X2Y2安全事件
无独有偶,2022年2月18日,大V账号(DiscusFish)在Twitter上面指出,NFT交易平台X2Y2上面NFT挂单挖矿存在风险。
此外,还指出X2Y2上挂单挖矿模式所采用的交易 Exchange 合约是可升级合约,升级权限(proxyAdmin的owner)是官方单地址,理论上存在官方通过升级合约,然后转走用户NFT的可能。
X2X2团队针对可升级合约的漏洞,采用多签钱包和时间锁对合约进行了修复:
四、安全建议
OpenSea被攻击事件属于网络钓鱼攻击,而X2Y2的问题在于合约漏洞。鉴于此,我们提出以下建议:
1.项目方在开发过程中,要保证业务逻辑以及合约代码的严谨性,选择多家知名负责的审计公司进行多伦审计。
2. 项目参与者在涉足区块链项目时请提高警惕,尽可能选择更稳定、更安全,且经过完备多轮审计的公链和项目,在发起交易、签名授权时要谨慎,尽可能地只通过官方指定的网站参与投资。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。