北京时间4月8日凌晨01:43:36,CertiK安全技术团队监测到收益聚合平台Starstream因其合约中的一个执行函数漏洞被恶意利用,致使约1500万美元的资产受到损失。
黑客随后将盗取的STARS代币存入AgoraDeFi的借贷合约,并向其借入了包括Metis、WETH和m.USDC在内的多种资产。
Starstream是基于MetisLayer-2rollup的一个可提供及产生聚合收益的产品。该协议由不同的开发者维护,由STARS进行维护并治理。
时间线
北京时间4月8日凌晨02:47,一位用户担心Starstream的风险,于是在推特上发布了相关截图。随后,凌晨03:11,有人在StarstreamDiscord社群宣布资金库已被耗尽,并建议用户们尽快将自己的资产于Agora中提出。
联合国报告:朝鲜黑客将加密货币和全球其他金融交易所作为目标:金色财经报道,据路透社获取的一份未发表的联合国报告,朝鲜在 2023 年继续发展核武器并生产核裂变材料,并逃避联合国旨在切断平壤核计划和弹道导弹计划资金的制裁。报告表示,在 2022 年网络盗窃达到创纪录水平(估计价值 17 亿美元)之后,朝鲜黑客继续将网络加密货币和全球其他金融交易所作为目标。报告的执行摘要写道,朝鲜继续进入国际金融体系并参与非法金融活动,加密货币、国防、能源和卫生领域的公司尤其成为目标,
据悉,该报告将于未来几周内发布,这些监察员每年向联合国安理会报告两次,此前曾指责朝鲜利用网络攻击为其核计划和导弹计划提供资金。[2023/8/11 16:19:41]
Beosin:Arcadia Finance项目遭受攻击,黑客获利约45万美元:金色财经报道,7月10日,Beosin EagleEye监测显示,链上保证金协议Arcadia Finance项目遭受黑客攻击,黑客获利约45万美元。[2023/7/10 10:45:30]
凌晨04:36,另一位发言者于StarstreamDiscord社群的GeneralStarstreamDiscord聊天区中表示"ExecuteFunction"函数存在漏洞风险。
攻击流程
攻击者调用合约并调用了Distributortreasury合约中的外部函数`execute()`。由于该函数为外部函数,可以被任何人调用,因此攻击者顺利将STARS代币从Starstream转移到自己账户。
Beosin:XaveFinance项目遭受黑客攻击事件分析:金色财经报道,据Beosin EagleEye平台监测显示,XaveFinance项目遭受黑客攻击,导致RNBW增发了1000倍。攻击交易为0xc18ec2eb7d41638d9982281e766945d0428aaeda6211b4ccb6626ea7cff31f4a。Beosin安全团队分析发现攻击者首先创建攻击合约0xe167cdaac8718b90c03cf2cb75dc976e24ee86d3,该攻击合约首先调用DaoModule合约0x8f90的executeProposalWithIndex()函数执行提案,提案内容为调用mint()函数铸造100,000,000,000,000个RNBW,并将ownership权限转移给攻击者。最后黑客将其兑换为xRNBW,存放在攻击者地址上(0x0f44f3489D17e42ab13A6beb76E57813081fc1E2)。目前被盗资金还存放在攻击者地址,Beosin Trace将对被盗资金进行持续追踪。[2022/10/9 12:50:38]
合约漏洞分析
加密黑客已通过290次攻击掠夺超130亿美元:金色财经报道,区块链安全公司Slowmist数据显示,加密货币黑客已经通过290次攻击掠夺超130亿美元资金。基于以太坊的协议蒙受了超过1.42亿美元的损失,ERC-20的漏洞被利用也已造成11.5亿美元的损失。分析认为,随着加密市场进入看涨,恶意行为者获利的规模不断扩大,新用户和投资者必须采取预防措施来储存其资金。[2020/8/25]
此次漏洞发生的根本原因是:Distributorytreasury合约中的execute函数没有任何的权限控制,因此可以被任何人调用。这个execute函数其实是一个底层调用,通过这个底层调用,攻击者能够以Distributorytreasury合约身份调用Starstreamtreasury合约的特权函数。
在这次攻击中,攻击者通过execute函数以Distributorytreasury的身份取走了在Starstreamtreasury中的所有STARS代币。
资产追踪
据CertiKSkyTrace显示,4月8日凌晨5点,黑客已顺利将所盗资金转移至TornadoCash。
其他细节
漏洞交易:
https://andromeda-explorer.metis.io/tx/0xb1795ca2e77954007af14d89814c83b2d4f05d1834948f304fd9d731db875435/token-transfers
攻击者地址:
https://andromeda-explorer.metis.io/address/0xFFD90C77eaBa8c9F24580a2E0088C0C940ac9C48/transactions
攻击地址合约:https://andromeda-explorer.metis.io/address/0x75381c1F12733FFf9976525db747ef525646677d/contracts
DistributorTreasury合约:https://andromeda-explorer.metis.io/address/0x6f99b960450662d67bA7DCf78ac959dBF9050725/contracts
StarstreamTreasury合约:
https://andromeda-explorer.metis.io/address/0x1075daD8CFd8bCbCfc7bEB234e23D507990C90e9/contracts
Starstream(STARS)代币合约https://andromeda-explorer.metis.io/address/0xb26F58f0b301a077cFA779c0B0f8281C7f936Ac0/contracts
写在最后
此次事件可通过安全审计发现相关风险。通过审计,可以查出这个函数是所有人都可以调用的,并且是一个底层调用。
在此,CertiK的安全专家建议:
在开发过程中,应该注意函数的Visibility。如果函数中有特殊的调用或逻辑,需要确认函数是否需要相应的权限控制。
前段时间有大量的项目因publicburn()函数而被黑,其根本原因和这次攻击一样,都是由于缺乏必要的权限控制所导致。
作为区块链安全领域的领军者,CertiK致力于提高加密货币及DeFi的安全和透明等级。迄今为止,CertiK已获得了3200家企业客户的认可,保护了超过3110亿美元的数字资产免受损失。
欢迎点击CertiK公众号底部对话框,留言免费获取咨询及报价!
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。