DeFi协议bZx再次遭遇攻击,损失超过800万美元
北京时间9月14日消息,DeFi借贷协议bZx再次遭到攻击,而这次攻击共造成了大约800万美元的损失,据bZx联合创始人Kyle Kistner最初提到称:“这似乎是一次预言机操纵攻击。”
在攻击被发现后,bZx团队立即使用管理密钥暂停了协议,据悉这次攻击交易利用了闪电贷和Synthetix,“但它不会影响Synthetix系统,尽管它确实涉及了sUSD,” bZx在twitter上 写道 。
而bZx官方在最新公布的安全报告中提到称:
“由于一次代币重复事件,协议保险基金暂时累积了一笔债务。除了协议现金流外,保险基金还会得到代币库的支持。”以下是这次安全事故的时间线:
- bZx团队注意到协议锁定值(TVL)出现了异常变动;
- 发现iToken合约有异常,该异常的发生与 _internalTransferFrom() 函数相关;
- 在确定修复方案后,iToken的铸造和燃烧被暂停(借款和交易不受影响);
- 受影响的iToken合约的新版本得到部署,余额得到更正;
- 团队将补丁代码发送给派盾(Peckshield)和Certik进行审查;
- iToken的铸造及燃烧恢复;
攻击技术细节
每个ERC20代币都有一个
transferFrom()
函数是用于负责传输代币的。你可以调用这个函数来创建一个 iToken并将其传递给自己,从而允许你人为地增加余额。
下面是攻击涉及的技术细节:
- 使用相同的_from和 _to地址调用了传输函数;
- 用相同的参数调用Immediately _internalTransferFrom;
- 下面的代码行存在故障:
当_from和_to地址相同时,会导致_balancesFrom和_balancesTo相等。
那么
上面的问题导致 _balancesFrom余额的减少,并增加_balancesTo的余额,最后最重要的部分是保存_balancesFromNew和 _balancesToNew。那么攻击者就能够有效地人工增加自己的余额。
然后,下面就是补丁代码:
这可以防止攻击者增加自己的余额,据悉,修补后的代码已被发送给Peckshield和Certik进行审查,而双方都批准了这些更改。
安全事故造成近800万美元债务
尽管,bZx代码漏洞很快得到了解决,但这次安全事故确实造成了协议很大的损失,根据官方公布的信息显示,这次事件导致了以下这些债务:
- 219,199.66 LINK
- 4,502.70 ETH
- 1,756,351.27 USDT
- 1,412,048.48 USDC
- 667,988.62 DAI
审计并不是灵丹妙药
根据Bzx团队公开的信息显示,该协议此前已经过安全公司Peckshield及Certik的严格审计,其中Peckshield对bzx协议的审计用到了12人周的工作量,而Certik则花费了7人周的工作量。此外,bzx协议团队还进行了广泛的自动化测试,不幸的是,审计并不是灵丹妙药。
而在这次安全事件中,由于bzx协议团队控制了管理密钥,因而能够及时地应对这一事件,否则损失问题将会更大。
显然,这次事故再次为我们敲响了DeFi安全性的警钟,即便是得到审计公司的把关,也无法确保代码不存在漏洞,而近期涌现出来的大量新DeFi项目,它们的安全隐患显然要更大。
最后,一首凉凉,送给流动性挖矿。
原文:https://bzx.network/blog/incident 编译:隔夜的粥 稿源(译):巴比特资讯(http://www.8btc.com/media/646719)
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류 l 탈중앙화 자율조직 형태로 결성…구성원 모두가 위믹스3.0 운영에 참여 가능l 스마트 컨트랙트 기반 모듈화 ...
[주간톡톡] 양의 탈을 쓴 늑대는 양일까? 늑대일까?
주간톡톡은 한주간의 블록체인 소식을 재구성해 독자들과 재미있게 이야기해보는 코너입니다. 이번주는 페이스북의 스테이블 코인 프로젝트 '디엠(Diem)'에 대해 알아보겠습니다. 그럼 ...
IBM, 블록체인 와인 추적 서비스 '빈어슈어(Assure)' 공개
IBM이 재배지부터 매장까지 와인 공급망을 추적할 수 있는 블록체인 기반 플랫폼을 공개했다.10일(현지시간) 발표에 따르면 IBM은 와인 모니터링 업체 e프로브넌스(eProven...