如何 0 成本启动全员 AI 技能提升?戳> 了解详情
写点什么

黑客利用一个漏洞攻击 8 次获利 630 万美元,币安智能链被盯上了?

  • 2021-06-04
  • 本文字数:2101 字

    阅读完需:约 7 分钟

黑客利用一个漏洞攻击8次获利630 万美元,币安智能链被盯上了?

Belt Finance 是一种基于币安智能链(BSC)的去中心化借贷协议,5 月 29 日,攻击者通过智能合约开始对 4Belt BLP 池发起闪电贷攻击。


据悉,攻击方创建了一份使用 PancakeSwap 进行闪电贷的智能合约,并利用 BeltBUSD 池及其底层策略协议先后对合约内容执行了 8 次,借此攫取了高达 6234753 BUSD 的收益。BeltBUSD 金库用户遭受 21.36% 的资金损失,而 4Belt 币池用户则遭受 5.51% 资金损失。


攻击过程


据 Belt Finance 团队介绍,攻击者首先利用 PancakeSwap 中的漏洞获得了总值 3.9 亿 BUSD 的闪电贷额度,这已经接近 PancakeSwap 上全部 BUSD 池所能提供的最大 BUSD 金额。之后,攻击方将其中约 2 亿 BUSD 存入 BeltBUSD 金库(使用 Venus 策略协议),并借此极大提升了 Venus 策略的整体占比。


在攻击活动发生之前,BeltBUSD 金库的协议比例为:Venus 约占 6000 万 BUSD,Alpaca 占 6000 万 BUSD,Ellipsis 占 6000 万 BUSD,而 ForTube 约占 2000 万 BUSD,总量约为 2 亿 BUSD。但在吸纳了攻击者的存入之后,Venus 掌握了约 2.6 亿 BUSD,也让 BeltBUSD 的总储量快速提升至 4 亿左右。


攻击者同时还将 1.9 亿 BUSD 转移至 Ellipsis.fi 3pool,并将这 1.9 亿 BUSD 兑换为约 1.695 亿 USDT。此次兑换令 Ellipsis 3pool LP 值在短时间内猛增。3pool LP 的供应关系虽然没有改变,但这 2150 万美元的差值仍然令 3pool LP 快速增值约 3%。这又将 4Belt 池 Ellipsis 策略的币值占比由 6000 万 BUSD 增加至 6180 万 BUSD,也让整个 BeltBUSD 金库总值由 4 亿 BUSD 增加至 4.018 亿 BUSD(涨幅约 0.5%)。


在此之后,攻击者开始从 BeltBUSD 金库中提现离场,获得了 2 亿 BUSD 总额中约 0.5% 的存入收益,即约 100 万 BUSD(进场前 2 亿 BUSD,离场时 2.01 亿 BUSD)收益。接下来,攻击方在 Ellipsis 上将 USDT 兑换回 BUSD,令 LP 重新回归之前的正常值,而 BeltBUSD 金库则因此凭空损失掉了这 100 万 BUSD。


之后,攻击者通过智能合约多次重复执行这同一笔交易(由 Tx gas 允许的上限而定),去掉闪电贷费用与 Ellipsis 掉期费用外的即为最终实际获利。接下来,攻击者将 BUSD 形式的利润转至自有地址并兑换为 anyETH,再使用 Nerve Bridge 将这笔 anyETH 发往以太坊主网。整个攻击流程从 PancakeSwap 闪电贷开始,到向以太坊主见发送 anyETH 结束,前后共重复了 8 次。


解决方案


在使用 StrategyEllipsis 的情况下,Belt Finance 团队使用 isPoolSafe() 限制发生价格缺口时的提现活动。现在,面向各项策略,团队决定通过检查 Ellipsis 的掉期状态解决这一隐患。当 USDC、BUSD 与 USDT 之间存在比例偏差时,会限制用户的提现与存入操作。如此一来,攻击者将无法顺利操纵 Ellipsis LP 价格。


在开发过程中,Belt Finance 团队添加了以下函数,以防止 Ellipsis Pool 值出现异常时被攻击者所利用:





这里的 isPoolSafe 函数将通过衡量 Ellipsis 3pool 的代币比率(即包含的最大与最低代币数量间的比值)来检查其健康状况。此函数能够防止 Belt 受到异常 StableWap AMM 比率的影响。


isPoolSafe 函数将在 _deposit() 与 _withdraw() 函数执行之前与之后检查池健康状况,如果池比率发生偏差,则交易将被直接还原以防止语句的实际更新。如此,Belt Finance 团队就能有效防止 Ellipsis 策略受到闪电贷攻击的影响。



通过使用 Ellipsis 掉期,攻击者即可瞬时操纵 ellipsisSwap 合约中 BUSD、USDC 与 USDT 的比例,借此操纵 3pool LP 的价格。


在之前的设计中,Belt Finance 团队并没有考虑到负责计算 Ellipsis 策略中 wantTotalLocked() Ellipsis 3Pool 比率的 epsToWant() (一项 MultiToken 函数)被破坏并影响到其他策略存取交易的情况。这项函数只是与 Read 相关的接口,Belt Finance 团队表示没有想到它会与闪电贷发生直接关联。


结果,闪电贷导致 Ellipsis 策略中的 wantTotalLocked 值增加,MultiVault 则以高于实际资产量的值运行了提取操作。此次攻击活动,在根本上利用的也正是这项漏洞。


黑客盯上 BSC


Belt Finance 只是 BSC 上被攻击的项目之一。5 月份,PancakeBunny 遭受攻击,损失了 300 万美元;类似的项目 Bogged Finance 也在闪电贷款攻击中损失了几乎相同的金额;Burgerswap 在一次闪电贷攻击中损失 720 万美元。


“最近已经接连发生超过 8 起针对 BSC 链上项目的闪电贷攻击,我们认为现在有一个有组织的黑客团队盯上了 BSC。”BSC 官方发文表示。The Block 数据显示,因为近期的黑客攻击事件,BSC 已有部分锁仓资金回流至以太坊,总锁仓量回落至 20 亿美元。


因此,BSC 官方呼吁所有 DApp 采取如下措施进行预防保护:


  1. 与审计公司合作进行另一次健康检查。如果是分叉项目,请反复检查相对原始版本进行的更改;

  2. 采取必要的风险控制措施,实时主动监控异常情况,一旦出现异常及时暂停协议;

  3. 制定应急计划,以防真的出现最坏的情况;

  4. 如果条件允许可设定漏洞赏金计划;

  5. 安全公司 PeckShield 和 CertiK 也为 BSC 项目的任何安全咨询服务提供绿色通道。


随着 DeFi 发展以及整个加密社区的发展,黑客攻击事件一直层出不穷。区块链网络和链上项目需要更多的安全规范和相应审查机制来防止攻击事件频繁发生。


相关链接:


https://belt-fi.medium.com/


2021-06-04 14:096486

评论

发布
暂无评论
发现更多内容

自主AI代理:未来的生产力引擎

互联网工科生

人工智能 AI代理

openGauss数据库源码解析系列文章——事务机制源码解析(四)

daydayup

Nautilus Chain:主权模块化区块链的早期实践

西柚子

提示工程101|与 AI 交谈的技巧和艺术

SEAL安全

人工智能 AI LLM 提示工程 企业号 7 月 PK 榜

Java Web应用开发案例|使用监听器统计Web站点的在线用户数

TiAmo

Java web 用户统计 开发案例

Java中的JDBC的使用方法有哪些?

java易二三

Java 编程 程序员 计算机

REST API 版本控制:高效管理

Apifox

程序员 RESTful API REST API API 测试

飞桨大模型分布式训练技术

Baidu AICLOUD

飞桨 百度百舸 AI 大底座

openGauss数据库荣获中国计算机学会(CCF)科技成果特等奖

daydayup

openGauss数据库源码解析系列文章——事务机制源码解析(三)

daydayup

TypeScript 玩转类型操作之字符串处理能力

小乌龟快跑

JavaScript typescript 类型推断

Oracle单表数据量大的优化思路

zhengzai7

oracle 分区

从电商指标洞察到运营归因,只需几句话?AI 数智助理准备好了!

Kyligence

数据分析 数智助理

高性能、高扩展、高稳定:解读 EasyMR 大数据组件自定义可扩展能力

袋鼠云数栈

大数据 大数据组件

年内实现全面自动驾驶?快来恶补一下自动驾驶技术吧!

博文视点Broadview

运用事件与定时器实现字幕滚动效果(Qt开发)

芯动大师

Docker学习路线11:Docker命令行

小万哥

Java c++ Python Go Docker

使用show effective grants查看权限

GreatSQL

greatsql greatsql社区

Burp Suite 几个基本工具的使用

QE_LAB

渗透测试 测试工具 安全测试

基于Hologres向量计算与大模型免费定制专属聊天机器人

阿里云大数据AI技术

人工智能 hologres

全彩LED显示屏品质由什么决定

Dylan

媒体 广告 科技 LED LED显示屏

Coral Finance 将为 Zepoch 节点空投,Nautilus生态空投季开启

BlockChain先知

Java基础之IO流

java易二三

Java 编程 程序员 io 计算机

浅聊一下大模型

鲸品堂

大模型训练 大模型

Deel、Whatnot、Nowports,YC 净收入最高公司生意秘诀

B Impact

内部Java内存模型与硬件层面内存模型的关系是什么?

java易二三

Java 编程 程序员 硬件 计算机

openGauss数据库源码解析系列文章——事务机制源码解析(一)

daydayup

数字化转型与架构-规划篇|殊途同归的解决方案框架

数字随行

数字化转型

免费SAFe大规模敏捷管理工具

顿顿顿

Scrum #敏捷开发 敏捷开发管理工具 SAFe框架

黑客利用一个漏洞攻击8次获利630 万美元,币安智能链被盯上了?_区块链_Belt Finance_InfoQ精选文章