全球数字财富领导者

10万个交易所账户受影响:诈骗者用假APT代币蒙混了Upbit

2023-09-26 22:45:56
金色财经
金色财经
关注
0
0
获赞
粉丝
喜欢 0 0收藏举报
— 分享 —
摘要:巨额损失恐难追回:Upbit交易所分不清真假APT代币,后果谁负?

近日,韩国最大的交易所Upbit遭遇了一个重大的充值漏洞,诈骗者创造的假APT代币被识别为真实 APT 代币。随后机器人将大量假币被存入大量用户账户中,不少用户将其直接出售。

?code=ODI4MDcwNjkyZWY3MTlmYmY4YTY2YTA0ZWFlNTdmNTBfeG5TZUludTdyZjczTWFuUkFGc0Y1YlFsTFpGcEl5SHFfVG9rZW46Q0R6dmIyc0Fjb3U1VnZ4NzNFaHVScTZZc2xhXzE2OTU3MzMwMzk6MTY5NTczNjYzOV9WNA

Upbit平台的logo

在发觉这一情况后,Upbit电话要求出售假币的用户退款,并紧急暂停了APT的充值与提币服务,预计有10万个账户受到影响。Upbit表示:这不是你的财产,需要将其归还。如果您拒绝,我们可能会采取法律行动。

为什么身为大交易所的Upbit无法识别这以假乱真的戏码?APT在韩国市场又有怎样的特殊待遇?痛定思痛后这一事件能给行业带来哪些启发?下面我们一一来看。

APT在韩国受到狂热的追捧,所以此事件将对Upbit造成重大打击

APT在上线初期,曾被韩国用户疯狂炒作,价格急速上涨。APT在韩国有“一币一公寓”的 MEME 称号,粉丝群体众多,Upbit也长期是APT现货交易量最大的交易所,最近24小时Upbit APT现货交易量为7100万美金,是币安的两倍以上。所以此次事件让Upbit颜面尽失。

另外,绝大部分用户已经出售了这笔虚假资产,如果他们回避电话或不同意赎回,势必会让Upbit产生经济损失。即使按照该国KYC政策Upbit能追回大部分资产,但依旧会对用户体验与交易所口碑造成不可挽回的影响。

事实上,到底发生了什么?我们可以从该虚假代币的链上转移记录来整理此次事件。

仔细剖析此次事件的经过:Upbit将虚假代币的充值当成了APT代币的充值

虚假代币的名称为ClaimAPTGift.com,只是一个普通的aptos链上的衍生代币。该代币被铸造后,铸造者向约38万个地址各发送了约3000-5000枚该代币, 其中大部分地址应该是Upbit的充值地址。

由于该虚假代币的Decimal属性为6位,而APT的Decimal属性为8位,因此Upbit将这些笔转账视为充值了30-50枚APT代币。按照APT市价折算,总金额在8000万美元之上。之所以攻击者只对每个地址发送了这些数额而非更大金额的代币,是为了规避之前规定的旅行规则。同时向大量地址发送,也为Upbit增加了巨大的处理工作量。

之所以Upbit会出现此漏洞,极有可能是Upbit自身犯了一个简单的错误,没有对代币种类的参数进行检查。我们可以对比一下虚假代币与真实APT代币的转账记录。(以下图片来自于 aptos 浏览器截图)

可以看出二者的转账链上记录在参数上有明显区别,其转账时的type_arguments有所不同。

?code=MTJmMTQ5ODA4NmQ0MTFhN2I1OTQ5OTkyYmI3ZWU2NmFfSVN3eEp2VlV5NXdlS0VxbENvSDBrdUoxTE52clVMWWdfVG9rZW46U1R0cWJ5bmtwb3BRdlp4U0U2VXVURGNac1BPXzE2OTU3MzMwMzk6MTY5NTczNjYzOV9WNA

虚假代币的转账参数

事实上,APT是aptos链上的基础代币,由coin.move模块提供支持。在coin模块的基础上,move提供了MoonCoin 模块,来定义新的衍生代币。第一张图中的虚假代币,既是按MoonCoin模块的标准构建的。

?code=YWQ0NWIxYTE1NzJmMDZiZjEwNmJmZjY1ZThmZjMxYjVfQkhKSmxBV01MNmpwQ1RFc3BTWk5qazhnVWFIdUdTOHJfVG9rZW46SU9JZ2JlQzgxb0ZUY254U0I5a3Vlb3V1c1hlXzE2OTU3MzMwMzk6MTY5NTczNjYzOV9WNA

真实APT代币的转账参数

transfer即转账是coin.move模块中的一个EntryFunction,即Move中的一个入口函数,可以直接调用。因为 coin模块可以被其他衍生代币使用,所以转账必须明确地使用TypeTag来定义要对哪种coin进行转账。交易入参必须被放入带有类型指定器(Serializer.{type})的TransactionArguments 中,这将在交易生成时将入参序列化为适当的类型。

该参数也对应上图的 type_arguments 参数,如果没有指定coinType,则默认为0x1::aptos_coin::AptosCoin,也就是第二张图中的APT代币。

而Upbit未能将这两种交易识别区分出来,极有可能是未对type_arguments参数做检查,把aptos链上的衍生 MoonCoin代币也当成了APT代币,将虚假代币的充值当成了APT代币的充值。

一次简单的疏忽让Upbit蒙受损失,更是为行业敲响了警钟

查阅aptos官方的api文档,可以发现其中对于交易查询参数也规定了明确的代币种类,即type_arguments标识。因此目前看来,这次的充值漏洞很可能完全是由Upbit自身造成的。由于其本身代币类型参数检查的疏忽,让攻击者有机可乘。

?code=NmJkMjhmYzk1YjM1ZjE0YzViNWZmMTIyZWIwZWY2YjdfUXpJWmRvcDczdW5DeGVpMGxsWmVNbDBUQVNrUWlLQjhfVG9rZW46WDRibWJtVDV4b0tSWnJ4ZVpWMnVUT1R6c3llXzE2OTU3MzMwMzk6MTY5NTczNjYzOV9WNA

aptos官方API文档中的type_arguments标识

从另一个角度看,EVM公链为衍生代币提供了ERC-20这一协议标准,这与其原生代币ETH是完全区分开的。ETH转账直接通过以太坊内置的转账机制进行,而ERC-20代币转账则需要通过调用代币合约的transfer函数来实现,这样更方便开发人员做出区分。

而aptos中的原生代币APT与其衍生代币采用了相同的 coin 标准,衍生代币可以重用APT的代币框架,也包括相同的转账函数,只是在代币种类等参数上有所区别,这也有可能是引发此次漏洞的原因之一。

此次事件,为交易所重新敲响了安全警钟。在智能合约的世界里,代码即规则,即使是微小的错误,也有可能造成巨大的经济损失,中心化交易所缺乏第三方审计,被黑客攻击暴雷事件屡见不鲜,安全性依然是重中之重。

来源:金色财经

敬告读者:本文为转载发布,不代表本网站赞同其观点和对其真实性负责。FX168财经仅提供信息发布平台,文章或有细微删改。
go