火星链 火星链
Ctrl+D收藏火星链
首页 > 火星币 > 正文

TRA:慢雾:TitanoFinance 被黑简析

作者:

时间:1900/1/1 0:00:00

据慢雾区情报,2022 年 2 月 14 日,BSC 链上的 TitanoFinance 项目遭受攻击。

1. 在 2022-02-10 18:48:04 (UTC),攻击者创建了相关的攻击合约 (0x1866207c355d4c6e0b03b4dc0bf9c658f4d13f8a)

2. 在 2022-02-14 4:36:21 (UTC),攻击者调用第一步中的 0x186620 合约中的 createMultipleWinnersFromExistingPrizeStrategy 函数创建了恶意的 prizeStrategy 合约 0x49D078d25b08f2731cBf5AF8e8CDF1eA3E0a2046

慢雾:过去一周Web3因安全事件损失约265万美元:7月17日消息,慢雾发推称,2023年7月10日至7月16日期间,Web3发生5起安全事件,总损失为265.5万美元,包括Arcadia Finance、Rodeo Finance、LibertiVault、Platypus、Klever。[2023/7/17 10:59:08]

3. 在 2022-02-14 4:39:12 (UTC),StakePrizePool 合约 (0x4d7f0a96967dce1e36dd2fbb131625bbd9106442) 中,owner (0xc8abdb16fd6040c76dfd9b5186abfdc3b96df4b8) 调用了 setPrizeStrategy 函数 ( 该函数仅 owner 可以调用 ),使得 _prizeStrategy 被改成了 0x49D078d25b08f2731cBf5AF8e8CDF1eA3E0a2046

慢雾:Multichain(AnySwap)被黑由于anySwapOutUnderlyingWithPermit函数相关问题:据Multichain(AnySwap)早前消息,2022年01月18日,一个影响6个跨链Token的关键漏洞正在被利用。慢雾安全团队进行分析后表示,此次主要是由于anySwapOutUnderlyingWithPermit函数为检查用户传入的Token的合法性,且未考虑并非所有underlying代币都有实现permit函数,导致用户资产被未授权转出。慢雾安全团队建议:应对用户传入的参数是否符合预期进行检查,且在与其他合约进行对接时应考虑好兼容性问题。[2022/1/19 8:57:49]

4. 在 2022-02-14 4:41:51 (UTC),接着攻击者调用了所创建的恶意的 prizeStrategy 合约 (0x49D078) 中的 _awardTickets 函数,该函数调用了 prizePool 合约中 (0x4d7f0a) 的 award 函数,该函数需要满足 onlyPrizeStrategy 修饰器条件 (_msgSender() == address(prizeStrategy)),该函数会给指定的 to 地址 mint 指定数量的 ticket 代币 (Ticket Titano (TickTitano)

慢雾:Cover协议被黑问题出在rewardWriteoff具体计算参数变化导致差值:2020年12月29日,慢雾安全团队对整个Cover协议被攻击流程进行了简要分析。

1.在Cover协议的Blacksmith合约中,用户可以通过deposit函数抵押BPT代币;

2.攻击者在第一次进行deposit-withdraw后将通过updatePool函数来更新池子,并使用accRewardsPerToken来记录累计奖励;

3.之后将通过_claimCoverRewards函数来分配奖励并使用rewardWriteoff参数进行记录;

4.在攻击者第一次withdraw后还留有一小部分的BPT进行抵押;

5.此时攻击者将第二次进行deposit,并通过claimRewards提取奖励;

6.问题出在rewardWriteoff的具体计算,在攻击者第二次进行deposit-claimRewards时取的Pool值定义为memory,此时memory中获取的Pool是攻击者第一次withdraw进行updatePool时更新的值;

7.由于memory中获取的Pool值是旧的,其对应记录的accRewardsPerToken也是旧的会赋值到miner;

8.之后再进行新的一次updatePool时,由于攻击者在第一次进行withdraw后池子中的lpTotal已经变小,所以最后获得的accRewardsPerToken将变大;

9.此时攻击者被赋值的accRewardsPerToken是旧的是一个较小值,在进行rewardWriteoff计算时获得的值也将偏小,但攻击者在进行claimRewards时用的却是池子更新后的accRewardsPerToken值;

10.因此在进行具体奖励计算时由于这个新旧参数之前差值,会导致计算出一个偏大的数值;

11.所以最后在根据计算结果给攻击者铸造奖励时就会额外铸造出更多的COVER代币,导致COVER代币增发。具体accRewardsPerToken参数差值变化如图所示。[2020/12/29 15:58:07]

此时 prizePool 合约中的 _prizeStrategy 已经在上一步被修改成 0x49D078,满足 onlyPrizeStrategy 的条件,于是 StakePrizePool 合约给攻击者 mint 了 32,000,000 个 ticket 代币

5. 在 2022-02-14 4:43:18 (UTC),StakePrizePool 合约 (0x4d7f0a) 中,owner 再次调用了 setPrizeStrategy 函数,将 _prizeStrategy 改回 0x5739f9F8C9Fc9854a5B6f3667a6fB14144DC40A7

6. 最后攻击者调用 StakePrizePool 合约 (0x4d7f0a) 中的 withdrawInstantlyFrom 函数将 ticket 代币换成 Titano 代币,然后在 pancake 池子中把 Titano 换成 BNB,攻击者重复了这个过程 8 次, 最后共获利 4,828.7 BNB,约 1900w 美元

据慢雾 MistTrack 分析,攻击者最初的获利地址为 0xad9217e427ed9df8a89e582601a8614fd4f74563,目前被黑资金已被攻击者转移到其他 23 个钱包。

总结:此次主要由于 owner 角色可以任意设置 setPrizeStrategy 函数,导致了池子被设置成恶意的 PrizeStrategy 合约造成后续利用。慢雾安全团队建议:对于敏感的函数操作,建议采用多签钱包的角色来操作,或者把 owner 角色权限移交给社区管理。

标签:PRIIZEWARTRAPRIDEhorizen币怎么挖PolkaWarTrapeza Protocol

火星币热门资讯
LAR:当DeFi魔术表演到Lend Flare:「去中心化」结束 「可组合性」奔涌而来

在过去两年来,DeFi展示了令人炫目的财富效应,吸引着传统金融世界的金钱与人才过来。这场魔术表演的核心是「去中心化」——以开源的代码取代复杂且不透明的金融机构.

1900/1/1 0:00:00
THORChain:你应该关注THORchain的下一个产品 可能是改变DeFi的王牌

在最近关于 DeFi 的讨论中,我反复听到了一个名字——THORchain,这个沉默数月的项目,最近似乎又有了一些热度.

1900/1/1 0:00:00
BTC:QBridge 被黑简析:8000 万美元不翼而飞

据慢雾区情报,2022 年 01 月 28 日,Qubit 项目的 QBridge 遭受攻击,损失约 8000 万美金。慢雾安全团队进行分析后以简析的形式分享给大家.

1900/1/1 0:00:00
比特币:Injective:DeFi市场的可互操作交换基础设施协议

以下报告由?Messari Hub的成员 Injective 委托编写。去年,加密行业见证了去中心化市场的广泛扩张.

1900/1/1 0:00:00
NFT:Juno 16号提案大局已定 巨鲸将成为功利主义胜利的牺牲品

3月11日,Cosmos生态智能合约平台链Juno Network发起治理提案Proposal#16,通过社区投票来决定是否将一个持有超300万枚JUNO的巨鲸持币数量削减至5万枚.

1900/1/1 0:00:00
DRE:Dreams:我们的沉浸式未来是否掌握在手中?

“一千个人眼中有一千个元宇宙。”如今元宇宙尚处于1.0时代,许多地方有待完善,因而给了人们广阔的想象空间,而对于游戏玩家来说,《Dreams》就是元宇宙:“一个非凡的数字游乐场.

1900/1/1 0:00:00