2000 万 OP 代币被盗关键:交易重放
By:Kong@慢雾安全团队
背景
6 月 9 日,Optimism 与 Wintermute 双双发布公告,向社区披露了一起 2000 万 OP 代币丢失的事件。Optimism 委托了 Wintermute 来为 OP 在二级市场上提供流动性服务,同时将向 Wintermute 提供 2000 万枚 OP 代币。为了接收这笔代币,Wintermute 给了 Optimism 一个多签地址,在 Optimism 测试发送了两笔交易且 Wintermute 确认无误后,Optimism 将 2000 万 OP 转移到了该地址。在 Optimism 转完币之后,Wintermute 却发现自己没办法控制这些代币,因为他们所提供的多签地址暂时只部署在了以太坊主网上,尚未向 Optimism 网络部署。Wintermute 立即启动了补救操作,但已有攻击者察觉到了这一漏洞,并抢在 Wintermute 之前将多签部署到了 Optimism 网络的该地址之上,成功控制了这 2000 万代币。那么问题来了,为什么会出现这种漏洞?
前置知识
首先需要确定交易签名是否符合 [EIP155] 标准,符合 [EIP155] 标准的签名会对 9 个 RLP 编码元素 (nonce, gasprice, gas, to, value, data, chainid, 0, 0) 进行哈希,其中包含了 chainid,因此符合 [EIP155] 标准的签名 v 值就为 {0,1} + chainid * 2 + 35。而对不符合 [EIP155] 标准的签名,其只对 6 个元素进行哈希 (nonce, gasprice, gas, to, value, data),因此签名后 v 值为 {0,1} + 27。而不同的链会定义有不同的 chainid,不同的 chainid 会得到不同的 v 值。根据 ECDSA 我们知道在 v 值不同的情况下,就算 r 与 s 值相同,签名所还原出的公钥也是不同的。因此对于符合 [EIP155] 标准的交易是无法在其他链上成功进行重放的。
值得一提的是在以太坊伦敦升级时实施的 [EIP2718] 引入了新的交易格式 0x02 || RLP([chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, destination, amount, data, access_list, signature_y_parity, signature_r, signature_s]),chainid 是单独编码的,而不包含在签名 v 值中了,签名 v 值只是作为一个简单的奇偶校验位,因此当前交易签名得到的 v 值变为 0 或 1。
交易重放
在我们了解完以上交易签名构造后我们就可以很清晰的知道签名 v 值为 27 或 28 是可以在不同链上被重放的。那么该如何在不同链上进行重放呢?这与我们发送交易并无不同,只需要将原始交易内容再其他链上进行发送即可。
以 Wintermute 2000 万个 OP 代币被窃取事件为例,攻击者在此次事件中重放了 Gnosis Safe 部署 Factory 合约的交易。我们在这里尝试重放 Gnosis Safe Deployer 3 的 nonce 为 3 的交易。
一种较为简单的方法是先通过 Etherscan 获取原始交易:
然后直接通过 Optimistic 的 eth_sendRawTransaction [RPC]
(https://eth.wiki/json-rpc/API) 接口进行发送即可。
若无法直接获取到原始交易内容,我们可以先通过 eth_getTransactionByHash
[RPC](https://eth.wiki/json-rpc/API) 接口获取交易内容。
再对交易内容进行 RLP 编码后得到原始交易内容:
然后再通过 Optimistic 的 eth_sendRawTransaction [RPC]
(https://eth.wiki/json-rpc/API) 接口进行发送即可。
参考:
https://eips.ethereum.org/EIPS/eip-155
https://eips.ethereum.org/EIPS/eip-2718
https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm
https://github.com/ethereum/go-ethereum/blob/master/core/types/transaction_signing.go
往期回顾
慢雾 AML 与 Go+ Security 达成合作,为反洗钱再增力量
慢雾:29 枚 Moonbirds NFT 被盗事件溯源分析
智能合约安全审计入门篇 —— delegatecall (1)
慢雾导航
慢雾科技官网
https://www.slowmist.com/
慢雾区官网
https://slowmist.io/
慢雾 GitHub
https://github.com/slowmist
Telegram
https://t.me/slowmistteam
https://twitter.com/@slowmist_team
Medium
https://medium.com/@slowmist
知识星球
https://t.zsxq.com/Q3zNvvF
金色趋势丨矿工投降 买入机会来了?
PuellMultiple是追踪矿工何时可能开始大规模抛售比特币以此来获利的过程,PuellMultiple是当前矿工收入和其365天平均之间的比率,该指标用于识别BTC的价格周期,使交易者可以从矿工的角度判断新开采的比特币的价格在...
4年募资10亿美元 揭秘加密基金蜻蜓资本的投资逻辑据区块链日报记者不完全统计,截至目前,DragonflyCapital已投资了近80家公司,且今年以来投资节奏明显加快,截至目前今年已投了28个项目。近日,DragonflyCapital(蜻蜓资本)宣布其6.5亿美元的加密基金获得超额认...
加密冬天来了 如何在加密货币熊市期间管理你的资产加密货币冬天——相当于华尔街熊市的加密货币——已经到来。虽然金融专家有一个特定的基准来定义熊市,这意味着股票从最高价下跌了20%,但加密冬天的定义并不那么具体。一般来说,如果价格下跌并在很长一段时间内保...
人民网:虚拟货币终究是黄粱一梦、庞氏骗局近日,比特币一路暴跌,至6月19日跌破1.8万美元关口,这是2020年12月以来比特币的最低点,虚拟货币交易炒作风险再度成为舆论焦点。近年来,虚拟货币价格频频暴涨暴跌,我国金融部门多次发文,明确虚拟货币相关业务活...
摇滚乐队Muse将以NFT形式发行新专辑近日,英国摇滚乐队Muse宣布其第九张录音室专辑《WillofthePeople》将于8月26日作为限量版NFT在Polygon驱动的平台Serenade上发行,并将成为首张进入英国和澳大利亚排行榜的专辑。据了解,Muse成立于2014年,曾在2007...
Solana 链上的 NFT Mint 数量达到了 31.2 万个创历史新高据TheBlockResearch数据,9月7日Solana链上的NFTMint数量达到了31.2万个,创历史新高。同时Cryptoslam数据显示,近期Solana链上NFT交易量也有大幅上涨,7日交易量涨幅达123.73%,30日交易量涨幅达40.83%。...
韩国虚拟货币交易市场现状:20-30岁为主力炒币人群一提到韩国大家首先想到的是发达的娱乐文化业?整容技术?是泡菜?还是宇宙起源?然而在这些耳熟能详的标签背后,还有一个不被大众所熟知的称号:炒币之国。韩国目前几乎是全民炒币的现状,我们不妨先来看一组数据:...
回应 FUD:Circle CFO解释 USDC 储备管理与降低风险原文链接:https://www.circle.com/blog/usdc-trust-transparency-minimizing-risk前言:近日一位自称@CryptoInsider23的内部人士披露了所谓Circle(USDC)的内幕。我们也进行了简单的分析。CircleCFO刚刚发布的文章...
金色观察|俄罗斯:加密货币挖矿将有条件的合法化7月5日,俄罗斯中央银行(CBR)表示,将同意加密货币挖矿的合法化,前提是在俄罗斯的矿工所挖产出只能在俄罗斯境外转换为法定货币。关键是要避免为随后在国内支付中使用加密货币创造激励措施。俄罗斯央行一直是关于俄...
dYdX 创始人 Antonio 认为 Tornado Cash 事件是对自由的非法攻击编译:wade原文如下:本周一项重要的“技术”遭受制裁。今天,一名开源软件开发人员因该软件的内容而被捕。事情就是这样,下面就是关于这件事的线程。我们都需要表明这应该是对自由的非法攻击。TornadoCash的团队不...
近期最火热的 NFT:goblintown.wtf 市值达 1.5 亿美金,地板价达 7.9ETH
OpenSea数据显示,近24小时,goblintown.wtf交易量超过4800ETH,位列站内第一,地板价已达7.9ETH,是近期最...
巴哈马银行 Capital Union 表示持有 Tether(USDT)稳定币发行商的部分准备金
巴哈马银行CapitalUnion表示持有Tether(USDT)稳定币发行商的部分准备金,并已经向其专业客户推出了加密货...
BLOCKv 和 Tether 联创 Reeve Collins:Terra 的崩溃给加密货币市场带来了冲击波,可能带来大多数算法稳定币的终结
据CNBC报道,BLOCKv和Tether联创ReeveCollins表示,“像terraUSD这样的算法稳定币不太可能存活,它的崩溃给...
Web3收入情况概览:Ethereum成最强收入机器
TLDR;结论:(1)总收入:Web3商业模式已经大有发展,其中最强大的仍然是“出售区块空间”,其次是NFT交易...