月亮链 月亮链
Ctrl+D收藏月亮链

BIT:BitDAO的3.5亿美元险些被盗,白帽黑客讲述一场惊心动魄拯救行动全程_ETH

作者:

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

8月17日,区块链投资机构Paradigm研究合伙人、著名白帽黑客samczsun撰文披露了BitDAO在SushiSwapIDO平台MISO进行的荷兰拍的智能合约存在安全漏洞,多名白帽黑客联手从众筹资金池中拯救回10

}

看看上面这个函数,它似乎被正确地实现了。然而,在我脑海的角落里,有什么东西在提醒着我。那时我意识到我过去曾看到过非常相似的东西。

二、发现

上午9:47

距离今天打印一年多前,我在与Opyn团队的Zoom视频通话中,试图弄清楚如何在遭受毁灭性黑客攻击后恢复和保护用户资金。

黑客攻击手法本身很简单但很巧妙:它使用一次ETH支付来行使多个期权,因为Opyn合约在循环中使用了msg.value变量。

Bitget合约大数据中心:BTC合约亏损用户过半:据Bitget合约大数据中心行情播报,截至今日11:00,Bitget交易所BTC/USDT合约过去24小时交易量高达10亿美金,其中:盈利用户占比20%,多头盈利52%,空头盈利13%;亏损用户占80%,多头亏损10%,空头亏损25%。此外,Bitget正向合约当前盘口价差在0.5USDT左右,合约基差在0.2USDT左右。Bitget合约分析师表示,BTC四小时线看,布林向上开口,MACD无明显变化,KDJ拐头向下有粘合迹象。[2020/8/1]

虽然处理代币支付涉及每个循环迭代的单独transferFrom调用,但处理ETH支付只是检查msg.value是否足够。这允许攻击者多次重复使用相同的ETH。

回到今天,我意识到我正在看到的是两个完全相同的漏洞,只是形式不同。在委托调用中,msg.sender和msg.value被持久化。这意味着我应该能够批量调用commitEth并在每个commitment中重复使用我的msg.value,这将允许我在拍卖中能够免费出价。

日本加密货币交易所BitFlyer时隔两年将再次投放电视广告:日本加密货币交易所BitFlyer将从5月13日开始,在电视上投放其商业广告,广告片将以动画的形式展示围绕比特币的生活。据悉,这是BitFlyer时隔2年再次播放电视广告。日本加密货币相关法案5月实施,,电视广告的播放将成为该行业积极的动向。(coinpost)[2020/5/13]

上午9:52

我的直觉告诉我这是真实的交易,但我无法在没有实际验证的情况下确定。我迅速打开Remix并编写了一个概念验证。

令我沮丧的是,我的主网分叉环境之前不久被完全损坏了。我一定是在伦敦硬分叉期间不小心弄坏了它。有这么多资金正处于风险之中,而我却没有足够的时间。我很快在命令行上拼凑了一个简陋的主网分叉并测试了我的漏洞。结果跟我想的一样。

动态 | Bitfinex暂时不需将文件移交给纽约总检察长办公室:纽约一家上诉法院裁定,Bitfinex目前暂时不需要继续将文件移交给纽约总检察长办公室(OAG)。根据周二发布的法院命令,最高法院上诉庭暂时保留了纽约最高法院法官Joel Cohen的先前裁决。Cohen在8月裁定,Tether及其关联实体必须出示向Bitfinex发放9亿美元贷款的文件。[2019/9/25]

上午10:13

在对外报告这个漏洞风险之前,我给我的同事GeorgiosKonstantopoulos打了电话,让他??们再看一遍。在等待回应的同时,我又回到合约中寻找确定严重性的方法。在这种情况下,能够免费参加拍卖是一回事,但能够窃取所有其他参与者的出价则是另一回事。

我注意到在我最初的扫描过程中有一些退款逻辑,但当时我并未多想。现在,这已是一种让ETH退出合约的方法。我很快检查了我需要满足哪些条件才能让合约为我提供退款。

动态 | 区块链活跃度指数排名BitShares居首位:据IMEOS报道,根据blocktivity.info的数据显示,截至北京时间18年10月13日11点00分 ,区块链活跃度指数排名前五名分别为:BitShares,EOS,Steem,Bitcoin,Ethereum。其中EOS的Activity指数为1,790,208,排名第2。Activity指数为最近24小时内在区块链上执行的操作数量。[2018/10/13]

令我惊讶的是,我发现发送的任何超过拍卖硬上限的ETH都会获得退款。即使达到硬上限,这也适用,这意味着合约不会完全拒绝交易,而是简单地退还您的所有ETH。

突然间,我发现的这个漏洞变得巨大。我不是在处理一个让你出价可以超过其他参与者的漏洞。我在看的是一个价值3.5亿美元的漏洞。

行情 | 区块链活跃度指数排名:BitShares居首:据IMEOS报道,根据blocktivity.info的数据显示,截止北京时间18年09月25日11点00分 ,区块链活跃度指数排名前五名分别为:BitShares,Steem,EOS,Bitcoin,Ethereum。其中EOS的Activity指数为967,762,排名第3。Activity指数为最近24小时内在区块链上执行的操作数量。[2018/9/25]

三、披露

上午10:38

在与Georgios确认这个漏洞后,我让他和DanRobinson尝试联系SushiCTOJosephDelong。几分钟后,Joseph做出了回应,然后我与Georgios、Joseph、Mudit、Keno和Omakase一起进行了Zoom通话。我就漏洞向其他参与者进行了快速汇报,然后他们开始四处协调响应。整个通话只持续了几分钟。

四、准备

上午11:26

在救援行动室里,Mudit,Keno,Georgios和我正在忙着写一份简单的救援合约。我们决定最干净的做法是发起一笔闪电贷,直接购买到硬上限,结束拍卖,然后使用拍卖本身的收益偿还闪电贷。这种方法不需要前期准备资金,效果非常好。

下午1:36

当我们完成救援合约的工作时,我们讨论了批量拍卖的后续步骤。Mudit指出,即使在拍卖进行时也可以设置一个积分列表,并且在每次ETHcommitment期间都会调用它。我们立即意识到这可能是我们正在寻找的暂停功能。

我们集思广益,想出了不同的方法来使用这个方法。立即还原是一个显而易见的解决方案,但我们想要更好的方案。

我考虑添加一个检查,每个源只能为每个区块做出一个commitment,但我们注意到该函数被标记为视图,这意味着Solidity编译器将使用静态调用操作码。我们的方式不允许进行任何状态修改。

经过一番思考,我意识到我们可以使用积分列表来验证拍卖合约是否有足够的ETH来匹配所做的commitment。换句话说,如果有人试图利用这个漏洞,那么commitment会比ETH多。我们可以很容易地检测到这一点并还原交易。Mudit和Keno开始编写测试以进行验证。

五、救援

下午2:01

通信突围团队与救援突围团队合并工作以同步进度。他们已经与执行拍卖的团队取得了联系,但该团队希望手动完成拍卖。我们讨论了风险并认为某个自动化机器人注意到这笔交易或能够对其采取任何行动的可能性很小。

下午2:44

执行拍卖的团队完成了拍卖,消除了直接威胁。我们互相祝贺成功,然后各自解散。这次批量拍卖将在当天晚些时候悄悄结束。不知情的人恐怕不知道刚刚避免了一场多么严重的灾难。

六、反思

下午4:03

过去的几个小时让人感觉很模糊,时间好像静止一样。我从相遇这个项目到发现漏洞只用了半个多小时,20分钟内进行了披露,另外30分钟内作战室,三个小时内修复漏洞。总而言之,只用了五个小时就保护了3.5亿美元不落入坏人之手。

即使没有金钱上的损失,我相信所有参与其中的人都更愿意一开始就没有经历过这个过程。针对这次事件,我有两个主要的要点给你。

首先,在复杂系统中使用msg.value很困难。它是一个全局变量,您无法更改并在委托调用中保持不变。如果您使用msg.value来检查是否已收到付款,则绝对不能将该逻辑置于循环中。

随着代码库复杂性的增加,很容易忘记发生的位置并意外地在错误的位置循环某些内容。虽然封装和释放ETH很麻烦并且引入了额外的步骤,但如果想要避免这样的事情,那么WETH和其他ERC20代币之间的统一接口可能值得一试。

其次,两个安全组件组合在一起,可能就会得到不安全的东西。我之前曾在可组合性和DeFi协议的背景下声明过这一点,但这次事件表明,即使是安全的合约级组件也可能以产生不安全的合约级行为的方式混合。这里没有像“检查-效果-交互”这样的包罗万象的建议,所以你只需要了解新组件引入的额外交互。

我要感谢Sushi的贡献者,Joseph、Mudit、Keno和Omakase对这个问题的快速响应,以及我的同事Georgios、Dan和Jim在整个过程中提供的帮助,包括审阅了这篇文章。

标签:BITETHMSG区块链bitkeep钱包下载ethicalissuesMSGO币区块链证据保全怎么操作流程

币安app官方下载最新版热门资讯
比特币:Vitalik Buterin:萨尔瓦多比特币法违背了加密领域的自由理想_Vitalick Neuterin

原文标题:《以太坊的V神抨击了萨尔瓦多的比特币法案,他究竟发现了什么?》撰文:EduardoPróspero编译:区块链骑士近日,V神针对萨尔瓦多的比特币法发表了评论.

1900/1/1 0:00:00
EFI:每周DeFi数据观察 | 各公链TVL总计达到1489亿美元,DDX、QUICK、FARM等代币涨幅最大_VeraSwap

作者:谷昱本周,DeFi市场继续保持上升态势,各大公链DeFi项目TVL达到1489亿美元。在头部DeFi协议中,本周TVL增速最快的头部协议包括TrueFi、Synthetix、Venus,而.

1900/1/1 0:00:00
ENT:固定收益协议 Exactly Finance 完成 300 万美元种子轮融资,拉丁美洲风投基金 Kaszek 领投_VENT

链捕手消息,固定收益协议ExactlyFinance宣布完成300万美元种子轮融资,拉丁美洲风投基金Kaszek领投.

1900/1/1 0:00:00
DEF:DeFi期权协议Lyra要求Divergence撤回投资,目前投资已终止_DeFi Coin

链捕手消息,Synthetix生态二层原生期权协议Lyra今日在Discord社区发布公告称,由于近期其种子投资机构DivergenceVentures在Ribbon空投事件中存在的问题.

1900/1/1 0:00:00
MET:对话Kevin Liu :Metis挖矿三部曲如何赋能社区_LAYER

在激烈竞争的Layer2战事中,Metis是一颗正在冉冉兴起的新星,凭借其Layer2+DAO的组合特性赢得大量用户的青睐,近期代币METIS上涨超过10倍.

1900/1/1 0:00:00
EFI:DeFi 收益率和储蓄协议 Gro Protocol 将推出治理代币 GRO_squidgrow币消息

链捕手消息,DeFi收益率和储蓄协议GroProtocol宣布将推出治理代币GRO,并公布了代币的功能及分配比例.

1900/1/1 0:00:00