近日Opensea(OS)出现了多个低价成交的头部项目,疑似挂单有bug被黑客攻击,黑客通过低价买到头部的NFT项目Bored Ape Yacht Club等等,再立马高价售出,以此获利数百ETH,以下为分析结果。
先看OS挂单逻辑:出售NFT时授权(授权完成以后OS的撮合合约可以调用用户地址的这个NFT)--》确定价格--》签名--》挂单完成。这时候签名信息会保存在OS的中心化服务器,并且会有API对外开放。
正常交易流程中,买方购买完后这个订单的签名信息就作废。
“被攻击”的情况中,用户在地址A下挂了一个价格为1ETH的NFT卖单,这时候可能会再把NFT转到地址B。后面NFT价格如果涨到了10ETH这个NFT再回到A地址,OS上这个NFT依然会以1ETH的挂单价出现(亲测确实会出现,但是用户可能不知道),这时候立马会被人购买,卖家会遭受巨大的差价损失。而买方可以立马转手卖出赚取差价,下面黑客地址就是,低价买入三个Bored Ape Yacht Club并立马卖出赚取了280ETH,约70万美金。
加密矿企HIVE因财报推迟要求加拿大监管机构禁止高管交易其股票:金色财经报道,加密矿企HIVE Blockchain Technologies 要求加拿大的证券监管机构禁止高管交易该公司的股票,原因是其财务报表延迟。HIVE预计将在 7 月 15 日之前提交其本财年的年度申报,而不是最初预计的6月29日。由于延迟,HIVE要求加拿大所有省和地区的监管机构发布一项临时命令,禁止董事、高级职员和内部人员交易HIVE股票。一旦文件最终确定,对公司员工的禁令有望解除。
数据显示,HIVE的股价当天从4.42加元(3.43 美元)跌至4.01加元(3.01 美元),跌幅超过 10%。(blockworks)[2022/6/30 1:40:43]
这个问题对NFT交易平台方有点棘手:OS把订单信息开放在了API中,公开透明,科学家可以通过API拿到订单信息。所以上文中的这个NFT一旦回到A地址,就存在被立马买走的风险。就算OS的功能立马调整,不再展示1ETH的卖单信息,又或者是直接从数据库删除order信息,都解决不了这个问题。
并且现在关闭API也解决不了这个问题,之前存量的挂单信息可以视为已经完全泄露。而且可以从OS界面用爬虫爬出order信息。所以只要准备足够充分,NFT再次回到A地址,黑客可以在任何地方以1ETH买走这个NFT。
当然平台可以在用户转走NFT的时候提醒cancel order,这个操作后将作废掉之前挂单的签名信息,但会上链消耗GAS Fee,挂单多次需取消多次。Opensea的撮合合约里也没有一次取消多个order的方法,这是其他OS竞品交易市场可以进行优化的功能。可以一键取消多个挂单,减少用户操作,不过GAS Fee肯定是少不了的。
平台提醒目前看来是一个比较简单快速的方式,但是是用户也可以在其他平台直接转走NFT。比如我在OS挂了个卖单,我也可以imToken、Looksrare、Mintverse等其他平台直接转走NFT。总结一下就是没法保证NFT挂单签名信息百分百和NFT转移一起失效。这个问题对NFT交易平台来说有点无解,不仅仅是OS,任何NFT交易平台都一样。除非是中心化的交易平台,所以对平台来说只能不断的提醒引导用户,提高用户风险意识。
对用户而言,如果知道这个漏洞后注意别再把NFT转回到之前的地址就没问题。不过这个行业用户知识水平参差不齐,转错ERC20到合约地址的情况都时有发生,NFT这个问题个人觉得后面也会一直有。也有用户在挂了卖单情况下去进行质押之类的操作,这种情况取回来只能到原地址。这种情况如果有价格差,肯定有被撸走的风险。如果有这种情况的用户,可用先取消掉授权,再取回NFT。
2022肯定还会出现一大批NFT交易市场,数据完整性,实时性,准确性;产品安全性,可用性,稳定性;肯定会成为未来NFT交易市场的竞争点。用户也需要提高安全意识,保管好自己宝贵的NFT。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。