解读FTX交易所免手续费漏洞致使被薅20W刀XEN的羊毛案

被朋友Q到近期火热的羊毛事件,截止目前,不仅是黑客获利超20W刀,FTX损失108+个ETH,合计有38名同样思路的攻击者部署合约发起攻击。本文从技术维度出发,深入分析此利用FTX交易所免手续费提币的漏洞,结合智能合约回调发起的攻击方式,并通过样例代码复现实现原理。由于FTX已经通过人工审计针对攻击者进行惩罚,该漏洞处于风险可控阶段。切勿尝试可能导致封号没收质押物。1、背景

1.1XEN是什么?

是近期大火的一个XEN币,到10-15为止已有超过120W笔交易,其实笔者对这类缺乏长期价值对Web3毫无建设性意义的项目一直没什么兴趣,因为他的机制就是只要发起的交易消耗了多少的GAS,就可以铸造出一定数量的XEN币,而众所周知Etherscan有针对gas消耗的排行榜可以看到真正出色的项目往往由于服务用户多交易量大,所以gas消耗高排名靠前,仿佛成了另一种的应用商店热门榜单,而XEN一举通过“冲票“成了冠绝以太坊整个生态的Top1,且等于其他好项目的总和。

动态 | 比特币COT持仓周报解读:Asset Manager账户空头持仓为0 短期维持看多判断:美国商品期货委员(CFTC)今日发布了截止5月7日的交易员持仓报告(COT),报告显示,芝加哥期货交易所(Cboe)比特币期货持仓量共2607手,环比减少103手。杠杆基金多单226手,空单887手,净空头数量为661手。芝加哥商品交易所(CME)比特币期货持仓量为4388手,环比增加75手,杠杆基金多头合约为1941手,空头合约为2692手,净空头合约为751手。上周Ass..[2019/5/11]

可拓展阅读:当我们在看Etherscan的时候,到底在看什么?1.2受害方FTX交易所

分析 | 2100ETH交易手续费事件不宜过分解读:据猎豹区块链安全中心舆情数据监控显示,2100ETH交易手续费事件引起了超过20余家主流媒体关注报道。猎豹区块链安全中心研究员对2月19日以太坊上的交易全面分析后发现,剔除这5笔异常交易后,平均交易手续费(总交易手续费/交易笔数)为0.000906ETH,约为0.13美元,与最近7日的数据相比没有明显异常。[2019/2/20]

本次被攻击的也正是其免费提币的优惠活动,在平台有质押且有一定交易记录后即可发起免费提币,而提币会受制于之前交易量

以太坊安全主管解读硬分叉Constantinople:重建区块哈希值:据Ethnews的报道,今日,以太坊安全主管Martin Swende发布了一系列文章,介绍即将到来的以太坊硬分叉Constantinople正在讨论中的一些特点。文章讨论了V神提出的EIP210提案,Swende解释道,提案将分成三个阶段重建区块哈希值,允许新的区块直接与旧区块不按顺序地连接,增加区块间的连接性。EIP210将按照EDCC或智能合约的方式算入哈希值,“将会强化轻客户端要求”,这个区块哈希值升级将使以太坊用户免于查看历史区块哈希值。[2018/5/1]

1.3链上数分结果

其实mirror上爆出的还不是最大的攻击者,而此攻击手法最早出现在10-10号,截止10-15号,合计类似逻辑的攻击地址有38个,合计1.45W笔攻击。计算依据:FTX热钱包单笔转移gas消耗大于5W,且to地址是合约地址的交易。下图为其中top10的攻击者,其交易数占总攻击数的80%,致使FTX手续费损失86个ETH笔者通过对其交易的gas消耗总值核算后,得出FTX本次损失总值为:108.19个ETH合计铸造出XEN约24亿个。按14号日常价格估算的话,则黑客总收益在24W美金以上

证券时报发文解读比特币价格暴力拉升的背后原因: 证券时报发文称,这次拉升从各交易所分钟级时间差来看,是从Bitfinex开始拉,然后被套利交易者迅速扩散到了其他平台上。据币圈一位专业投资者介绍,由于Bitfinex自己发行了USDT,然后用自己发行的USDT买入BTC,短时间内拉升比特币价格,同时平台上的空仓悉数爆仓,从而获得大量BTC,接着再以BTC交换海量增发出去的USDT进而回收大部分的增发,并盈余大量BTC。[2018/4/15]

详细数据可<十四君>公众号后台输入”FTX与XEN”获得2、黑客攻击流程分析

中国人民大学法学院教授杨东解读《政府工作报告》:互联网金融的核心是对移动互联网技术、云计算、大数据、区块链技术运用,这将导致我们的金融体系回归金融的本质。目前互联网金融更多地带有金融科技的色彩,而监管科技的广泛运用更是有望将互联网金融信息不对称的问题根本解决,而未来信息在网络上的无障碍流动也必将导致人类生产方式的改变。[2018/3/10]

2.1核心原理

智能合约的fallback/receive可任意执行逻辑。任何一个合约都有默认的fallback函数,典型的功能就是让合约可以接收以太币并对其做出反应,这也是代币型合约用来拒绝转账、发出事件或转发以太币的典型模式。后来更多场景是应用在代理升级模式总之就是,一笔指向合约地址的交易,如果没有匹配到对应执行的函数,就必然会执行fallback函数,而fallback可以将输入参数指向另一个合约地址,从而执行对应的逻辑。参考:https://blog.soliditylang.org/2020/03/26/fallback-receive-split/2.2攻击流程

其实看完手法核心,已经很明显了黑客先部署了一个攻击合约0xCba9b1然后利用FTX的交易免费提币功能让FTX的热钱包0xc098b2,发起了一笔指向攻击合约的提币导致交易触发指向XEN合约的Mint函数调用由于XEN合约可以设置Mint出代币的收益方,从而将代币转入黑客地址

2.3手法还原

其实任意fallback非常好触发,咱们通过现场手搓实现下,当然并不是MintXen,而是临时随意的一个20token来示意。下文便是最简单的一个ERC20代币了,任何人均可执行mint函数,雷同于XEN了对于ERC20/721实现原理可拓展阅读:你买的NFT到底是什么?

而攻击合约也很简单,设置写死要调用Mint的XEN合约地址以及黑客收益的地址。

可以看到实验中,对此攻击合约发起的任意一笔交易,即会触发了receive,且myAddr的GLD余额增加1e18个,当然并不能拿着这个代码就去复现黑客的实现了,因为要铸造更多的GEX还得增加工厂合约部署的逻辑,即能提高gas消耗也吻合XEG的mint管理。

3、总结-从攻击事件看“元交易”

其实如果不是黑客本身知道FTX有免费提币优惠,且其提币的交易的gasLimit设置为固定值50W,则很难发起这样的攻击,因为依据以太坊黄皮书,普通转账也仅仅需要2.1W的gas即可。黑暗森林的web里知其雄守其雌,这样的攻击从历史进程来看,其实更有警示性意义笔者想谈谈元交易的发展元交易是来自于ChristianLundkvist教授在2015年的一个设想如今上手Dapp实在是太麻烦了,以太坊生态若想普及,就应该允许新用户直接使用其功能,而不是先安排几座大山让用户翻山越岭。这意味着需要为新来的用户垫付Gas费用。当前的以太坊协议并没有提供原生方法来实现这一点。然而,得益于公/私密钥对,用户可以通过对元交易进行签名并证明所有权。相信未来元交易终会成为应用主流,本次的FTX代付gas执行免费提币转账还只是元交易的某种小小实现,但只有安全+无感才能迎接全民低成本上链时代的到来,为此安全与风控都需要特别注意,这也是笔者分析安全案件的初衷。欢迎你从后台提交web3行业问题探讨点赞关注十四,用技术视角带给你价值

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

银河链

FilAmulet:为Web3构建简单、可靠的保险协议

进入十月以来,「BNBChain被盗:200万枚BNB被盗」、「Mango因闪电贷攻击潜在损失达1亿美元」等安全事故层出不穷,似乎让加密市场沦为「黑客表演」的主旋律,安全相关问题再次被推上风口浪尖.

MEXCEIP-4844发展简史:创建一个Blobspace世界

EIP-4844正在获得更多的关注度,凭借其开发、模因以及社区支持,EIP-4844有望成为以太坊的下一次重大升级。但它到底是什么?简而言之,它是一种新的事务类型,这使得在L1上可以容易地编写廉价且短暂的数据.

以太坊交易以Uniswap为例,详谈MEV对AMM的长期影响

MEV距离最初的概念被提出不久,已然成为2022年的一个核心话题,MEV也被视为区块链中的无许可激励措施,用户可在先到先得的基础上提取。然而,黑暗森林中诱人的财富机会也很难发现,而是需要专门的能力.

[0:78ms0-1:365ms