Gnosis:SafeDollar攻击事件分析

一、事件概览北京时间6月28日,链必安-区块链安全态势感知平台舆情监测显示,Polygon生态算法稳定币项目SafeDollar遭到黑客攻击。攻击事件发生后,SafeDollar项目所发行的稳定币价格从1.07美元,瞬间跌至归零。有消息指出,一份未经证实的合约抽走了25万美元的USDC和USDT;后经Rugdoc.io分析证实,此次攻击事件中黑客总共获利价值25万美元的USDC和USDT。随后,SafeDollar项目方发布公告,要求投资者停止所有与SDO相关的交易。目前,SDO交易已暂时中止。鉴于此次攻击事件所具备的标志意义,成都链安·安全团队第一时间介入分析。继5月初BSC诸多链上项目频频被黑之后,6月末Polygon生态也开始被黑客盯上,“潘多拉魔盒”是否已经悄然开启?借此事件,成都链安通过梳理攻击流程和攻击手法,提醒Polygon生态项目加强安全预警和防范工作。

Safe:将为推动“混合托管”发展的团队发放共计100万美元赠款:11月16日消息,数字资产管理平台 Safe(原 Gnosis Safe)在社交媒体发文表示,FTX 近期相关事件地不断发酵证明了集中式加密托管人固有的交易对手风险。同时,大多数用户使用的外部账户(EOA)会产生单点故障,如私钥丢失或受到黑客或网络钓鱼攻击。

Safe 基金会承诺,将向致力于推动自托管、混合托管的项目/团队提供共计 100 万美元的赠款,包括:探索框架的监管机构和研究人员;帮助新用户理解自托管的传播者;通过 Safe 打造创新型混合托管解决方案、工具或基础设施的构建者。[2022/11/16 13:11:55]

Gnosis Safe:以太坊合并后将仅支持PoS链:9月2日消息,数字资产管理平台 Safe(原 Gnosis Safe)发布公告表示,以太坊合并后将仅支持 PoS 链,即用户无法再通过官方接口与 PoW 链进行交互。Safe 用户无需因合并执行任何操作,用户资产仍是安全的。但仍建议用户不要将任何重要的交易安排在合并时点前后,以防出现问题。

在合并之后,可能会有 2 个以太坊链:即 PoW 和 PoS,已创建的 Safe 账户将存在于这两条链上。在合并后,如果用户自行决定与 PoW 链进行交互,请确保知道自己在做什么。[2022/9/2 13:05:07]

二、事件分析此次攻击事件中,攻击者利用PLX代币转账时实际到账数量小于发送数量以及SdoRewardPool合约抵押和计算奖励上存在的逻辑缺陷,借助“闪电贷”控制SdoRewardPool合约中抵押池的抵押代币数量,进而操纵奖励计算,从而获得巨额的SDO奖励代币,最后使用SDO代币将SDO-USDC和SDO-USDT两种兑换池中USDC和USDT全部兑换出来。攻击者地址:0xFeDC2487Ed4BB740A268c565daCdD39C17Be7eBd攻击合约:0xC44e71deBf89D414a262edadc44797eBA093c6B00x358483BAB9A813e3aB840ed8e0a167E20f54E9FB攻击交易:0xd78ff27f33576ff7ece3a58943f3e74caaa9321bcc3238e4cf014eca2e89ce3f0x4dda5f3338457dfb6648e8b959e70ca1513e434299eebfebeb9dc862db3722f30x1360315a16aec1c7403d369bd139f0fd55a99578d117cb5637b234a0a0ee5c14以下分析基于以下两笔交易:0xd78ff27f33576ff7ece3a58943f3e74caaa9321bcc3238e4cf014eca2e89ce3f0x1360315a16aec1c7403d369bd139f0fd55a99578d117cb5637b234a0a0ee5c14攻击者首先使用PolyDex的WMATIC和WETH池进行PLX借贷,如下图所示:

多签钱包Gnosis Safe GIP-29提案已通过,将向积极用户发放Token空投:4月17日消息,Gnosis 团队产品经理 Lukas Schor 在社交媒体上发文表示,多签钱包 Gnosis Safe GIP-29 提案已通过。Gnosis Safe 将从 Gnosis Ltd. 中拆分出来,类似于 CowSwap 此前的拆分。同时将建立 SafeDAO,并通过发行 SAFE Token 来管理 Gnosis Safe 生态系统和基础设施。

根据提案,SAFE 总量共计 10 亿枚,由 SAFE 基金会铸造。10% 的 SAFE 将空投于推进项目的社区成员和 Gnosis Safe 的积极用户,并已完成快照,快照时间暂未披露。[2022/4/17 14:29:21]

多签钱包Gnosis Safe提示用户,尚未发行任何Token:金色财经消息,多签钱包GnosisSafe团队提示社区用户,其尚未发行任何Token。有伪造的GnosisSafeToken被发送到用户地址且在流通,请用户谨慎与任何不明来源的资产进行交互。[2022/4/7 14:10:05]

接下来,攻击者通过攻击合约反复进行抵押提取,主要是为了减少SdoRewardPool合约中SDO抵押池中的抵押代币数量。

PLX代币合约进行代币转移时,如果from地址不在_isExcludedFromFee列表中,并且to地址也不在_isExcludedToFee列表中,会对转移的代币收取一次奖励基金以及销毁本次转移代币数量的0.05%。

Safello完成130万美元融资,计划在2021年上半年进行IPO:欧洲比特币交易所Safello表示已完成了1100万瑞典克朗(约合130万美元)的融资,以支付其计划于2021年上半年在纳斯达克第一北方成长市场上市的费用。本次融资由CoinDesk的母公司Digital Currency Group领投,风险投资公司Northzone、White Star Capital和Techstars也参与其中。(CoinDesk)[2020/12/18 15:42:20]

而在SdoRewardPool合约中,记录的数量为调用者所转移的数量,没有减去转移过程中损耗的部分,在进行提取操作时,提取的数量为记录的数量,超出了用户实际抵押到本合约的数量,故会造成该抵押池中抵押代币的异常减少。

攻击者事先通过攻击合约在该抵押池中抵押214.235502909238707603PLX,在攻击合约攻击完成后,控制攻击合约在该抵押池中进行奖励领取,由于SdoRewardPool合约中更新抵押池信息时使用的是balanceOf函数获取本合约中抵押代币数量,故获取到的数量是恶意减少之后的数量,继而造成PLX抵押池中accSdoPerShare变量异常增大,从而获取到巨额的SDO代币奖励。最后利用获取到的SDO代币将SDO-USDC和SDO-USDT两种兑换池中USDC和USDT全部兑换出来。

三、事件复盘事实上,此次攻击事件并不复杂,但是值得引起注意。首先添加抵押池时添加了非标准代币,再加上计算奖励时使用了balanceOf函数进行抵押代币数量的获取,所以导致了此次攻击事件的发生。从安全审计的角度看,项目方作为添加抵押池的管理员,对于将要添加的抵押池中的抵押贷币,一定要三思而后行。通胀通缩类以及转移数量与实际到账数量不同的代币,不建议作为抵押池的抵押代币;如果因业务需要一定要添加这些类型的代币作为奖励代币,务必与其他标准代币分开处理。同时在抵押池中建议使用一个单独的变量作为抵押数量的记录,然后计算奖励时,使用通过此变量来获取抵押代币数量,而不是使用balanceOf函数。另外,此次攻击事件对于Polygon生态链上项目而言,是否会是一个“危险信号”,Polygon生态的“潘多拉魔盒”是否会就此打开,这还需要观望后续态势发展。不过,回望5月,BSC生态发生第一起闪电贷攻击之后,便就此拉开了“BSC黑色五月”序幕。鉴于前车之鉴,成都链安在此提醒,Polygon生态链上项目未雨绸缪,切实提高安全意识。

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

金星链

[0:15ms0-1:395ms