本文由Certik原创,授权金色财经**。
2021年3月5日,PAID Network遭受了由于私钥管理不善而引起的 “铸币 “攻击。
攻击者使用**合约私钥,将原先经过CertiK审计的PAID合约代码掉包,添加了销毁(burn)和铸币(mint)的功能函数。
因为PAID代币已达上限,攻击者先销毁(burn)了6000万枚PAID代币,然后再重新铸造了59,471,745枚PAID,并通过Uniswap出售。
CertiK团队第一时间和PAIDNetwork团队沟通调查,确认了原代码并无漏洞,攻击事件是由私钥泄露导致的。目前CertiK团队仍无法确认私钥泄露的原因,但已经可以将整个攻击过程还原。
PAID事件时间线
2021年3月5日,PAID遭受了持续约30分钟的攻击。
通过链上分析,CertiK团队总结了攻击的时间线及操作步骤如下:
第一步:合约所有权被转移给了攻击者,此时攻击者在得到私钥后就已经完全获得了**合约的控制权。
第二步:攻击者利用**更新合约,添加了销毁(burn)和铸币(mint)的功能函数。
第三步:攻击者销毁(burn)了6000万枚PAID,留出铸币空间。
第四步:攻击者开始铸币,并向Uniswap倾销PAID代币以换取以太坊。
**,本次事件并没有攻击智能合约的代码本身,而是通过某种渠道获得了**合约的私钥。
CertiK在审计报告中的PTN-10章节提出了: Ambiguous Functionality (模糊功能)以及其他章节强调了PAID合约中心化的问题。
总结
2021年3月5日,攻击者获得PAID**合约私钥,替换原有代码,添加了销毁(burn)和铸币(mint)的功能函数。
攻击者之后销毁了6000万枚PAID代币,留出铸币空间。
**,铸造了59,471,745枚PAID,并通过Uniswap出售了2,401,203枚代币。
客观来看,本次攻击事件中攻击者并没有找到任何原合约的漏洞,而是直接获得了**合约私钥。
当合约的可升级性作为项目的预期功能而存在时,它在智能合约中确实有其存在的价值。
而这种类的功能要求合约所有者以及部署者在确保代码基本安全的同时,同样必须保证私钥的安全。
CertiK将会在未来更多地强调并关注中心化及私钥保护等相关问题。
**下方链接至浏览器,查看CertiK于2021年1月24日为PAID Network出具的审计报告:
https://certik.org/projects/paidnetwork
文章链接:https://www.btchangqing.cn/205953.html
更新时间:2021年03月08日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。