Orion Protocol - 翻车



猎户成了猎物。

Orion Protocol周四陷入了重入漏洞,在ETH和BSC上总共损失了300万美元。

该项目是一个"流动性聚合器",旨在将CEX流动性引入链上(不要与Orion Finance混淆,后者前一天在Arbitrum上损失了32万美元)。

消息在Twitter上传播几个小时后,Orion的CEO才宣布了这一损失,并澄清说,损失被控制在一个内部经纪人账户上,用户资金仍然安全。

Orion的网站宣称:

我们存在的原因

没有人在一个平台上解决了流动性、托管、易用性和可扩展性的挑战。

直到现在。

也许他们应该把安全性加入到这个列表中...

信息来源:SlowMist, Peckshield

黑客利用闪电贷获得的稳定币操纵交易,人为地将资产存入两次,然后再提取通胀的余额。

通过创建一个假的代币(ATK),并通过ATK路由兑换闪电贷的资金,利用ATK的转账函数中一个名为depositAsset的重入钩子,成功地将黑客的账户余额翻倍。

Slowmist提供了详细的攻击细节:

黑客首先调用ExchangeWithAtomic合约的depositAsset函数,存入0.5美元的代币,为接下来的攻击做准备。

接下来,攻击者借入284,700 USDT的闪电贷,然后调用ExchangeWithAtomic合约的doSwapThroughOrionPool函数来交易代币,交易路径是"USDC -> ATK(攻击者创建的恶意代币) -> USDT"。

交易的金额是交易后ExchangeWithAtomic合约中的USDT余额减去初始余额2,844,700 USDT。

问题出现在交易过程中对ATK代币转账函数的调用导致黑客重新进入ExchangeWithAtomic合约的depositAsset功能,导致2.844亿USDT从闪电贷转移到ExchangeWithAtomic合约。

黑客在ExchangeWithAtomic合约中的存款被记录为2,844,700,合约中的USDT代币余额变为5,689,000。因此,黑客兑换的USDT被计算为5,689,000减去2,844,700。

通过调用库函数creditUserAssets来更新黑客在ExchangeWithAtomic合约中的账本,使用了交易的USDT,结果黑客在ExchangeWithAtomic合约中的USDT的最终存款被记录为568万。

最后,黑客提取USDT并将其返还闪电贷,将剩余的283.6万USDT的利润换成WETH。攻击者用同样的方法对BSC链发起攻击,获利19.1万美元。

攻击的根本原因是合约交易功能没有受到重入保护...

Peckshield制作的下图显示了攻击的基本步骤:

黑客地址1(ETH, BSC): 0x3dabf5e36df28f6064a7c5638d0c4e01539e35f1

黑客地址2(ETH, BSC): 0x837962b686fd5a407fb4e5f92e8be86a230484bd

交易示例(BSC):0xfb153c57…

交易示例(ETH):0xa6f63fcb…

被盗资金大部分已存入Tornado Cash,以太坊地址中仍有约100万美元的ETH。黑客的账户资金来自一个标记为Binance的钱包,不过据称最初来源是另一个CEX,SimpleSwap。

Orion的CEO Alexey Koloskov在他关于该事件的推文中表示,他对自己团队的代码有信心。

我们有理由相信,这个问题不是由我们核心协议代码的任何缺陷造成的,而可能是由我们的实验性和私人经纪人使用的一个智能合约中混合第三方库的漏洞造成的。

但是,当如此大量的资金处于危险之中时,必须在项目堆栈的各个层面考虑安全问题。

而这300万美元的损失似乎促使Orion采取了更多的控制方案。

今后,所有的合约都将在内部开发,以消除第三方库的任何潜在漏洞。我们的重点是强化Orion协议,确保它保持稳健。

很高兴听到Orion将采取更严肃(Sirius-ly)的安全措施。


分享本文

REKT作为匿名作者的公共平台,我们对REKT上托管的观点或内容不承担任何责任。

捐赠 (ETH / ERC20): 0x3C5c2F4bCeC51a36494682f91Dbc6cA7c63B514C

声明:

REKT对我们网站上发布的或与我们的服务相关的任何内容不承担任何责任,无论是由我们网站的匿名作者,还是由 REKT发布或引起的。虽然我们为匿名作者的行为和发文设置规则,我们不控制也不对匿名作者在我们的网站或服务上发布、传输或分享的内容负责,也不对您在我们的网站或服务上可能遇到的任何冒犯性、不适当、淫秽、非法或其他令人反感的内容负责。REKT不对我们网站或服务的任何用户的线上或线下行为负责。