前言
2020 年 7 月 1 日,VETH 合约遭遇黑客攻击。慢雾安全团队在收到情报后对本次攻击事件进行了全面的分析,下面为大家就这次攻击事件展开具体的技术分析。
攻击细节
本次攻击交易如下 0xdd1120a90ed4112b634266d6a244b93ca86785317bc75f0e170ab0cd97c65224
通过交易概览可以看到攻击者在 Uniswap 中使用 0.9 ETH 兑换成 VETH,然后使用 VETH 在 Vether 合约中进行操作,最终盗走巨额的 VETH。
华为版ChatGPT将于7月初发布,名为“盘古Chat”:金色财经报道,近日从华为内部获悉,华为公司将发布一款直接对标ChatGPT的多模态千亿级大模型产品,名为“盘古Chat”。预计华为盘古Chat将于今年7月7日举行的华为云开发者大会(HDC.Cloud 2023)上对外发布以及内测,产品主要面向To B/G政企端客户。这意味着,在国产大模型军备竞赛中,继阿里、百度之后,又一重要科技巨头入局。基于华为的技术能力,盘古Chat有望成为国内技术能力最强的ChatGPT产品,同时华为生态产业链企业也将因此受益。(钛媒体)[2023/6/4 21:14:55]
现在使用 OKO 合约浏览器对具体的攻击细节进行分析(下图只展示一部分)https://oko.palkeo.com/0xdd1120a90ed4112b634266d6a244b93ca86785317bc75f0e170ab0cd97c65224/
数据:超52万枚FTT从未知地址转入币安:11月8日消息,WhaleAlert监测数据显示,522114枚FTT(约840万美元)从未知地址转入币安。[2022/11/8 12:31:44]
通过分析交易内具体的细节可以发现:攻击者先创建了一个合约0x47Ed415006C6F8052Fff05fe983f31D6D24B8fDB 通过此合约对 Vether 合约中的 changeExcluded(unknown37217349) 函数与 transferFrom 函数进行了调用。
美元指数DXY站上110:行情显示,美元指数DXY站上110,日内涨0.36%。[2022/9/6 13:11:57]
接下来对这两个函数的具体代码进行分析:
可以看到在 transferFrom 函数中,先对 mapAddress_Excluded[msg.sender] 进行了 if 判断,具体逻辑是mapAddress_Excluded[msg.sender]为 false 时,将会检查对攻击者合约的授权额度,然后调用_transfer函数进行转账。而这个逻辑显然走不通,攻击者合约是没有任何授权额度的。因此mapAddress_Excluded[msg.sender]只能为 true ,然后直接调用_transfer函数进行转账。
Michael Saylor:比特币将使黄金逐渐失去货币价值:金色财经报道,Michael Saylor在接受采访时表示,黄金可能会因比特币的增长而经历“妖魔化”。Saylor承认,比特币取代黄金的道路将有高低起伏的特点。但他指出,与黄金不同,比特币被更多司法管辖区采用为货币的机会更大。
他说:“传统的批评家和主流分析师不了解加密经济,不理解比特币,他们讨厌波动。比特币将随着时间的推移逐渐使黄金非货币化,黄金有黄金的实用价值,但它不会被作为21世纪的货币采用。”(Finbold)[2022/8/13 12:23:36]
接下来具体分析该如何将mapAddress_Excluded[msg.sender]设置为 true:
华尔街日报:三箭资本正考虑出售资产以获得救助:6月17日消息,三箭资本正考虑出售资产以获得救助。三箭联合创始人Kyle Davies在接受采访时表示,在接受采访时表示,已聘请法律和财务顾问帮助为其投资者和贷方制定解决方案。我们一直是加密货币的信徒,现在仍然是,我们致力于解决问题,并为我们所有的投资者找到一个公平的解决方案。(华尔街日报)[2022/6/17 4:35:18]
通过查看合约可以发现:
合约在初始化时只将address(this)和burnAddress的mapAddress_Excluded置为 true,那么可以肯定还有其他逻辑可以设置mapAddress_Excluded,通过分析 Vether 合约可以发现changeExcluded函数可以实现对mapAddress_Excluded的设置。
通过分析changeExcluded函数可以发现其可见性为external,因此攻击者合约可以直接调用changeExcluded函数,此时攻击者合约的mapAddress_Excluded为 false,所以会进入 if 的逻辑中。
接下来对 if 逻辑内的代码进行具体分析:
在进行 if 逻辑后需要先支付手续费,具体为上方代码块中的第 3 行,那这个手续费是从哪里来呢?答案就是攻击者最初转入合约中的 0.9 ETH。
图中可以看到,通过 0.9 ETH 兑换成约 138 VETH。
通过计算代码中的mapEra_Emission/16我们可以得到攻击者需要支付的手续费:我们读取合约中的 mapEra_Emission可以知道 mapEra_Emission为 2048。
此时计算mapEra_Emission/16可得手续费为 2048/16 = 128 VETH,而攻击者兑换了约138 VETH 是足够用来支付手续费的,因此便可以通过上方代码块中的第 4 行将攻击者合约的mapAddress_Excluded置为 true。
创建攻击合约,通过 Uniswap 将 0.9 ETH 兑换成约138 VETH(此处换币为了后续支付手续费)
调用 Vether 合约中的changeExcluded函数并利用先前在 Uniswap 兑换的约 138 VETH 支付 128 VETH 的手续费,然后将mapAddress_Excluded置为 true
调用 transferFrom 函数,利用mapAddress_Excluded为 true,直接进行转账操作
拿钱走人
0xfa2700e67065bc364136b5e7f57112083cb2a0cd
0x75572098dc462f976127f59f8c97dfa291f81d8b
修复建议
此次攻击主要利用 Vether 合约中changeExcluded函数的可见性为external且未有权限限制,用户可以直接进行外部调用为攻击创造了必要的条件。因此应做好对changeExcluded函数的权限或可见性的限制,从而避免任意用户可以直接外部调用changeExcluded函数。
标签:CLULUDEXCLETHBored Pepe Vip ClubLUD价格EXCL价格3X Long Ethereum Classic Token
据零壹智库数据显示,截至2019年末,全球累计有47个国家和地区、5926家公司申请了38064件区块链专利;其中,有3218家公司来自中国,占比54.3%.
1900/1/1 0:00:00狂人说大饼用了两天的时间,从9785跌到9000,合约市场一共才暴了3个亿,这和过去的爆仓量已经不可同日而语,从侧面反应出市场正在进一步冷清,主力想继续从合约市场捞钱已经越来越困难了.
1900/1/1 0:00:00比特币在9470美金附近遇阻回落到了9126美金,这个回撤幅度不大,但速度很快,似乎是主力在震仓,在4小时MA83线获得支撑后,连带着有一次回踩动作,目前价格已经到了9250美金上方.
1900/1/1 0:00:00Dapp.com的2020年第二季度市场报告显示,在DeFi热的催化下,以太坊上的用户量和交易额均有大幅增长.
1900/1/1 0:00:00平台币是加密货币行业相当特殊的存在,随着加密市场热度的暴涨,有着交易所强大实力为支撑的平台币成为了许多投资者眼中最佳的投资标的之一.
1900/1/1 0:00:00金色财经 区块链7月7日讯 加密货币里有各种不同的生态系统,即使在采矿方面,项目也遵循不同的方向.
1900/1/1 0:00:00