铸币疑云 —— Paid Network 被盗细节分析_莱特币:USD

据消息,以太坊DApp项目PaidNetwork遭受攻击。攻击者通过合约漏洞铸造近1.6亿美元的PAID代币,并获利2000ETH(约300万美元)。慢雾安全团队在第一时间跟进并分析,现在将细节分析给大家参考。

攻击细节分析

TrueUSD:正努力恢复Prime Trust上的TUSD铸币:6月13日消息,美元稳定币TrueUSD表示,团队正在努力恢复Prime Trust上的TUSD铸币,将在有新进展时立即提供更新。

此前报道,6月10日TrueUSD宣布暂停通过PrimeTrust铸造TUSD,待进一步通知。[2023/6/13 21:33:47]

以上是整个攻击过程的调用流程细节。

可以看到整个攻击过程非常的简单,攻击者通过调用代理合约中函数签名为(0x40c10f19)的这个函数,然后就结束了整个攻击流程。由于这个函数签名未知,我们需要查阅这个函数签名对应的函数是什么。

加密交易所KuCoin指出Acala错误铸币提案存在数据问题:金色财经消息,加密货币交易所KuCoin近日发文指出Acala社区提案中的数据不准确,该提议旨在追回在8月中旬漏洞期间错误发行的价值数十亿美元的aUSD。KuCoin表示,黑客向KuCoin发送了803万美元,而不是493.7万美元,并且在平台上交易了530万美元,而不是100万美元。Acala昨日发布完整的aUSD事件报告称,aUSD已基本恢复锚定,当前价格为0.99美元。Acala将等待社区就错误铸造的代币做出集体治理决定。(CoinDesk)[2022/9/7 13:13:03]

BoringDAO莱特币锚定币铸币正式开通:2月21日,BoringDAO的莱特币隧道达到3000枚BOR基础质押要求,正式开放莱特币(oLTC)铸币。截至2月21日18:30,根据BoringDAO官网显示,以太坊上oLTC铸币量已经达到1665枚,“无聊农场”的莱特币单币池的APY达到660%,莱特币隧道的BOR池APY达到193%。

BoringDAO Core Enki表示,莱特币拥有一个强大的社区,我们希望未来让莱特币自由在DeFi世界穿梭,为莱特币带来更多生息可能性,也为BOR持有者带来更多手续费收入,同时未来将会持续推进和莱特币社区以及头部DeFi的合作与组合。[2021/2/21 17:37:23]

通过查阅这个函数签名,我们发现这个签名对应的正是mint函数。也就是说,攻击者直接调用了mint函数后就结束了攻击过程。那么到这里,我们似乎可以得出一个mint函数未鉴权导致任意铸币的漏洞了。通过Etherscan的代币转移过程分析,似乎也能佐证这个猜想。

但是,事实真是如此吗?

为了验证未鉴权任意铸币的这个想法,我们需要分析合约的具体逻辑。由于PaidNetwork使用的是合约可升级模型,所以我们要分析具体的逻辑合约(0xb8...9c7)。但是在Etherscan上查询的时候,我们竟然发现该逻辑合约没有开源。

这个时候,为了一探究竟,我们只能使用反编译对合约的逻辑进行解码了。通过Etherscan自带的反编译工具,可以直接对未开源合约进行反编译。在反编译后,我们却发现了一个惊人的事实:

通过反编译,我们不难发现,合约的mint函数是存在鉴权的,而这个地址,正是攻击者地址(0x187...65be)。那么为什么一个存在鉴权的函数会被盗呢?由于合约未开源,无法查看更具体的逻辑,只能基于现有的情况分析。我们分析可能是地址(0x187...65be)私钥被盗,或者是其他原因,导致攻击者直接调用mint函数进行任意铸币。

总结

本次攻击过程虽然简单,但是经过细节分析后却有了惊人的发现。同时这次的攻击也再次对权限过大问题敲响了警钟。如果这次的mint函数给到的鉴权是一个多签名地址或是使用其他方法分散权限,那么此次攻击就不会发生。

参考链接:

攻击交易:

https://etherscan.io/tx/0x4bb10927ea7afc2336033574b74ebd6f73ef35ac0db1bb96229627c9d77555a0

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:0ms0-4:883ms