北京时间9月14日消息,DeFi借贷协议bZx再次遭到攻击,而这次攻击共造成了大约800万美元的损失,据bZx联合创始人KyleKistner最初提到称:“这似乎是一次预言机操纵攻击。”
在攻击被发现后,bZx团队立即使用管理密钥暂停了协议,据悉这次攻击交易利用了闪电贷和Synthetix,“但它不会影响Synthetix系统,尽管它确实涉及了sUSD,”bZx在twitter上写道。
而在bZx官方公布的安全报告中提到:
“由于一次代币重复事件,协议保险基金暂时累积了一笔债务。除了协议现金流外,保险基金还会得到代币库的支持。”以下是这次安全事故的时间线:
数据:Solana上DeFi协议总锁仓量为97.5亿美元:金色财经报道,DeFiLlama数据显示,Solana上DeFi协议总锁仓量为97.5亿美元。其中,锁仓量排名前三的协议分别是Raydium(12.4亿美元)、Marinade Finance(11亿美元)、Sunny(29.3亿美元)、Serum(9.07亿美元)。[2022/1/9 8:35:40]
bZx团队注意到协议锁定值出现了异常变动;
发现iToken合约有异常,该异常的发生与_internalTransferFrom()函数相关;
在确定修复方案后,iToken的铸造和燃烧被暂停;
DeFiBox数据:DeFi 总锁仓量再创新高,挖矿平均年化收益51.66%:据DeFi 门户DeFiBox.com实时数据显示,DeFi 市场锁仓量到291.18亿美元,再创新高,其中Maker锁仓量为46.1亿美元。DeFi挖矿平均年化收益为51.66%,略有回升。[2021/1/26 13:35:45]
受影响的iToken合约的新版本得到部署,余额得到更正;
团队将补丁代码发送给派盾和Certik进行审查;
iToken的铸造及燃烧恢复;
攻击技术细节
每个ERC20代币都有一个transferFrom()函数是用于负责传输代币的。可以调用这个函数来创建一个iToken并将其传递给自己,从而允许你人为地增加余额。
聚币Jubi DeFi推出锁仓JT挖矿SUN创世矿币:据官方消息,聚币Jubi DeFi板块在推出质押JT借贷挖矿JFI后,即将上线锁仓JT挖矿SUN创世矿币。用户通过锁仓JT即可0成本挖矿(获得)波场DeFi创世矿币SUN。用户最终获得SUN数量将按照功能上线日起至9月16日时间段内,个人锁仓JT数量x个人锁仓时长/∑用户锁仓JT数量*锁仓时长 的占比分配。具体规则以聚币官网后续公告为准。
SUN太阳币是一个专注于波场DeFi建设的社会实验,零VC投资,零私募投资,零预挖,零团队预留,完全依靠社区与开源的智能合约。[2020/9/3]
下面是攻击涉及的技术细节:
使用相同的_from和_to地址调用了传输函数;
用相同的参数调用Immediately_internalTransferFrom;
下面的代码行存在故障:
当_from和_to地址相同时,会导致_balancesFrom和_balancesTo相等。
那么
上面的问题导致_balancesFrom余额的减少,并增加_balancesTo的余额,最后最重要的部分是保存_balancesFromNew和_balancesToNew。那么攻击者就能够有效地人工增加自己的余额。
然后,下面就是补丁代码:
这可以防止攻击者增加自己的余额,据悉,修补后的代码已被发送给Peckshield和Certik进行审查,而双方都批准了这些更改。
安全事故造成近800万美元债务
尽管,问题很快得到了解决,但这次安全事故确实造成了协议很大的损失,根据官方公布的信息显示,这次事件导致了以下这些债务:
219,199.66LINK
4,502.70ETH
1,756,351.27USDT
1,412,048.48USDC
667,988.62DAI
以当前市场价计算,这些损失的代币的价值达到了800万美元。
审计并不是灵丹妙药
根据Bzx团队公开的信息显示,该协议此前已经过安全公司Peckshield及Certik的严格审计,其中Peckshield对bzx协议的审计用到了12人周的工作量,而Certik则花费了7人周的工作量。此外,bzx协议团队还进行了广泛的自动化测试,不幸的是,审计并不是灵丹妙药。
而在这次安全事件中,由于bzx协议团队控制了管理密钥,因而能够及时地应对这一事件,否则损失问题将会更大。
显然,这次事故再次为我们敲响了DeFi安全性的警钟,即便是得到审计公司的把关,也无法确保代码不存在漏洞,而近期涌现出来的大量新DeFi项目,它们的安全隐患显然要更大。
最后,一首凉凉,送给流动性挖矿。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。