铸币疑云——Paid Network 被盗细节分析

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

攻击细节分析

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

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

超4683枚BTC从币安转出:金色财经报道,Whale Alert数据显示,北京时间10月17日00:59,4683.4346枚BTC从币安交易所转移至1C4i3Gz开头未知钱包地址,价值约5300万美元,交易哈希为:3f02c761d534add47d5cd1a767de9ca5da594b9aebbc25d87e872e4f5897ad6e。[2020/10/17]

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

但是,事实真是如此吗?

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

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

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

总结

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

参考链接:

攻击交易:

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

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

区块博客

OKB从虚拟货币 电子货币与比特币的区别看区块链的价值与机遇

比特币是一种P2P形式的数字货币,比特币没有货币发行机构,而是由特定算法通过大量的计算产生,通过区块链保证其交易的安全性。 需要注意的是,虽然比特币的币值无法通过大量制造来人为操控,但却可以通过在交易市场注入资金来人为操控。 基于密码学的设计可以使比特币只能被真实的拥有者转移或支付,这同样确保了货币所有权与流通交易的匿名性。

BTC首发 | PAID Network攻击事件还原

本文由Certik原创,授权金色财经首发。 2021年3月5日,PAID Network遭受了由于私钥管理不善而引起的 "铸币 "攻击。 攻击者使用代理合约私钥,将原先经过CertiK审计的PAID合约代码掉包,添加了销毁(burn)和铸币(mint)的功能函数。

DAI三个投资建议 教你玩转NFT

自今年1月以来,NFT领域呈现出前所未有的生机和活力,朋友圈、微信群、微博、Twitter、Clubhouse上关于NFT的讨论也与日俱增。根据Google Trends的数据显示,NFT的搜索热度于2月21日首次超过DeFi,3月2日首次超过ETH。毫无疑问,这是属于NFT的爆炸式春天。

狗狗币3.5晚间行情:恐慌的好机会又要来了?

文章系金色财经专栏作者币圈北冥供稿,发表言论仅代表其个人观点,仅供学习交流!金色盘面不会主动提供任何交易指导,亦不会收取任何费用指导交易,请读者仔细甄别防上当。据OKEx的数据显示,当前BTC/USDT现货报价为 47222,24小时涨幅/跌幅为 -4.85%。两会期间大资金和机构持谨慎观望态度,Btc和主流币延续下跌。

[0:15ms0-8:72ms