预言机被黑客任意利用什么时候是个头?Rikkei Finance被攻击事件分析_SCAN:YFSCAN

北京时间2022年4月15日11点18分,CertiK审计团队监测到RikkeiFinance被攻击,导致约合701万元人民币资产遭受损失。

由于缺乏对函数`setOracleData`的访问控制,攻击者将预言机修改为恶意合约,并获取了从合约中提取USDC、BTCB、DAI、USDT、BUSD和BNB的权限。攻击者随后将这些代币全部交易为BNB,并通过tornado.cash将这些BNB转移一空。

?攻击步骤

①攻击者向rBNB合约发送了0.0001个BNB以铸造4995533044307111个rBNB。

②攻击者通过公共函数`setOracleData()`将预言机设置为一个恶意的预言机。

③由于预言机已被替换,预言机输出的rTokens价格被操纵。

④攻击者用被操纵的价格借到了346,199USDC。

⑤攻击者将步骤4中获得的USDC换成BNB,并将BNB发送到攻击合约中。

⑥攻击者重复步骤4和5,耗尽BTCB、DAI、USDT和BUSD。

⑦攻击者使用函数`setOracleData()`再次改变预言机,还原了该预言机的状态。

合约漏洞分析

SimplePrice预言机?:?

https://bscscan.com/address/0xd55f01b4b51b7f48912cd8ca3cdd8070a1a9dba5#code

Cointroller:?https://bscscan.com/address/0x00aa3a4cf3f7528b2465e39af420bb3fb1474b7b#code

资产地址:?Rtoken0x157822ac5fa0efe98daa4b0a55450f4a182c10ca

新的预言机:?

0xa36f6f78b2170a29359c74cefcb8751e452116f9

原始价格:416247538680000000000

更新后的价格:416881147930000000000000000000000

RikketFinance是利用Cointroller中的SimplePrice预言机来计算价格的。然而,函数`setOracleData()`没有权限控制,也就是说它可以被任何用户调用。攻击者使用自己的预言机来替换原有的预言机,并将rToken的价格从416247538680000000000提升到4168811479300000000000000。

资产去向

攻击者在两次交易中获得了2671枚BNB。攻击者已使用tornado.cash将所有的代币进行了转移。

其他细节

漏洞交易:

●?https://bscscan.com/tx/0x4e06760884fd7bfdc076e25258ccef9b043401bc95f5aa1b8f4ff2780fa45d44?

●?https://bscscan.com/tx/0x93a9b022df260f1953420cd3e18789e7d1e095459e36fe2eb534918ed1687492

相关地址:

●攻击者地址:

0x803e0930357ba577dc414b552402f71656c093ab

●攻击者合约:

0x9aE92CB9a3cA241D76641D73B57c78F1bCF0B209

0xe6df12a9f33605f2271d2a2ddc92e509e54e6b5f

●恶意预言机:

https://bscscan.com/address/0x99423d4dfce26c7228238aa17982fd7719fb6d7f

https://bscscan.com/address/0xa36f6f78b2170a29359c74cefcb8751e452116f9

●攻击者地址:

0x803e0930357ba577dc414b552402f71656c093ab

●攻击者合约:

0x9aE92CB9a3cA241D76641D73B57c78F1bCF0B209

0xe6df12a9f33605f2271d2a2ddc92e509e54e6b5f

●恶意预言机:

https://bscscan.com/address/0x99423d4dfce26c7228238aa17982fd7719fb6d7f

https://bscscan.com/address/0xa36f6f78b2170a29359c74cefcb8751e452116f9

●被攻击预言机地址:

https://bscscan.com/address/0xd55f01b4b51b7f48912cd8ca3cdd8070a1a9dba5#code

写在最后

该次事件可通过安全审计发现相关风险。CertiK的技术团队在此提醒大家,限制函数的访问权限是不可忽略的一步。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:0ms0-3:290ms