摘要
Coinbase沒有成為任何攻擊交易的目標,也沒有任何資金的損失。
在PST7/31/2020晚上10:57,EthereumClassic(ETC)受到51%攻擊,導致約80萬ETC(約580萬美元)的雙花交易。
PST8/5/2020晚上8:15,EthereumClassic再次受到51%攻擊,導致約46萬ETC的雙花交易。
在第一次攻擊中,運行在精簡模式下的Parity(OpenEthereum)節點忽略了攻擊區塊,而其余網絡則接受了攻擊區塊為,導致修精簡Parity節點與其余網絡出現了分區網絡
如果攻擊者控制了大部分挖礦權,他們就能夠51%攻擊區塊鏈網絡。攻擊者會重組區塊鏈的歷史,通過雙花交易竊取資金。
Coinbase的觀點
在PST7/31/2020晚上11:10,Coinbase區塊鏈安全部接到警報,Coinbase的ETC節點在預期的時間區間內沒有看到新的區塊。經調查發現,我們的節點在區塊鏈狀態上已經分叉。Coinbase內部精簡的Parity節點與我們非精簡的Parity節點和Geth節點看到的區塊不同,這是第一個說明有問題的指標。我們得出的結論是,在PST7/31晚上10:57的大規模重組導致了網絡分叉,是由于不同的節點造成的。
數據復盤:火幣主力短多獲利出局,當前或有新動作:AlCoin PRO版K線主力大單統計顯示:7月7日凌晨左右,火而BTC當季合約累計成交15筆,共計3856.77萬美元大額委托買單,這一過程Al-PD-持倉差值為較高綠柱,即持倉增加明顯,可判斷或為主力開多。
7月9日晚間,該合約累計成交8筆,1883.35萬元大額委托賣單,這一過程Al-PD-持倉差值為較高紅柱,即持倉減少明顯,可判斷或為主力平多。
可見,火幣主力短多獲利出局。剛剛該合約主力大單成交頻繁,或有新動作。[2020/7/10]
大型的重組是潛在雙重花費的顯著指標。此時,Coinbase選擇大幅提高我們的確認次數要求。這確保了Coinbase平臺上沒有雙花交易入賬。
兩個公開的問題隨之而來:首先,重組的交易中是否包含雙花?第二,考慮到網絡分區,Coinbase如何確保我們在正確的鏈上呢?
為了回答第一個問題,我們比較了孤鏈和導致重組的新鏈。我們發現,在53個孤塊交易中,有約580萬美元的ETC被雙花。然而Coinbase沒有成為這些攻擊的目標。
我們接下來的重點是了解ETC網絡分區。我們發現精簡的Parity節點會忽略超過一定高度的區塊。因為大規模的重組試圖對超過這個閾值的區塊進行孤塊化處理,所以被精簡的Parity節點認為重組是無效的。需要注意的是,網絡中的其他節點選擇跟隨重組,這一現象導致了網絡的分區。在觀察了網絡分區的每一方后,Coinbase開始跟隨規范的主鏈。
主力數據復盤:幣安現貨主力3142.71枚BTC砸盤引發瀑布:AICoin PRO版K線主力成交數據顯示:通過秒級周期數據對比,昨晚的劇烈下跌或由幣安現貨主力砸盤引起。 22:46:21,幣安BTC/USDT以10055.01美元市價賣出709.82枚BTC,最終被買價格10000美元,賣出滑點95.01美元,價格直接跌至9905美元。
3秒后,繼續以9969美元市價賣出361.96枚BTC,最終被買價格9905.99,賣出滑點73.44美元,價格跌至9871美元。 隨后繼續有大額市價賣單成交,3分鐘內累計主動賣出41筆,共計3142.71枚BTC。
可見,幣安現貨主力的大量市價賣出或引起了此輪瀑布。[2020/6/3]
8月5日晚,區塊鏈安全部又收到警報,發生了大規模的重組。由于精簡后的奇偶性節點不再被操作,沒有出現類似第一次重組的網絡分區。因此,唯一的問題是Coinbase是否是這次攻擊的受害者。做了和上面類似的分析,我們確認ETC再次被攻擊,這次的攻擊金額約為320萬美元,涉及9筆孤塊交易。我們再次發現,Coinbase不是任何一筆孤塊交易的受害者。
作為額外的預防措施,我們進一步提高了確認次數以確保客戶資金的安全。需要注意的是,這并不是ETC第一次被雙花。
主力成交數據復盤:1097萬張主力賣出確認5分鐘周期三角形破位:AICoin PRO版K線主力成交數據顯示:BitMEX XBT永續合約在5月21日00:00-16:00做5分鐘周期中做三角形震蕩。
16:10分,價格接近平臺下沿支撐線線并很快跌破。跌破后的20分鐘內,共計有6筆,共計1097萬張主力賣出;有3筆,共計440萬張主力買入,成交差-657.75萬張。較多的主力賣出跟進可以判斷該周期的三角形突破為真跌破。
隨后的16:40,比特幣再次下跌,最低一度跌至9250美元。[2020/5/21]
雖然ETC近幾日看起來已經穩定下來,但我們會繼續監測ETC是否有進一步的動蕩。
技術分析
基于Nonce的雙花攻擊
在這次ETC攻擊中,我們發現了一個有趣的模式,用來執行雙花。我們在下面討論攻擊者雙花策略的一個例子。
攻擊者使用一個攻擊交易來雙重花費多個孤塊交易的例子:
攻擊者利用一個攻擊交易將多個單個交易進行雙重消費的例子。
攻擊模式
1.攻擊者通過多次交易向被攻擊交易所發送大量ETC。
主力成交數據復盤:2054萬張主力賣出確認5分鐘周期三角形破位:AICoin PRO版K線主力成交數據顯示:BitMEX XBT永續合約在5月18日09:30沖高回落在5分鐘周期中做三角形震蕩。
14:05分,價格接近平臺下沿支撐線線并很快跌破。跌破后的20分鐘內,共計有9筆,共計2054.84萬張主力賣出;有4筆,共計700萬張主力買入,成交差-1354.84萬張。
較多的主力賣出跟進可以判斷該周期的三角形突破為真跌破。 隨后的16:35,比特幣再次下跌,最低一度跌至9280美元。[2020/5/18]
2.攻擊者利用被攻擊交易所服務,將ETC兌換成其他貨幣,然后將資金移出平臺。
3.攻擊者重新記錄區塊鏈,"刪除"步驟1的交易。
4.現在,攻擊者可以使用他們原來的ETC。然后他們用一筆大的交易將資金轉移到他們控制的另一個地址。為了使任何重復的遺棄交易變得無效,這一點是必要的。
結束狀態:攻擊者現在控制了他們從被攻擊交易所那里轉出的一定數量的非ETC資產,同時還保持對原始ETC的控制。
有趣的是,通過使用這種基于非ce的增量技術,每筆孤塊交易的移動量不到3萬ETC。我們相信,攻擊者使用這些增量的孤塊交易是由于被攻擊交易所的一些基于價值的速率限制。例如,被攻擊交易所交易所可能有一個功能,防止用戶在一次存款中收到大于X金額的ETC。
主力數據復盤:主力此輪拉盤始于9500美元:AICoin PRO版K線主力數據指標顯示:
昨晚21:00-21:30間,火幣BTC現貨共有20筆,共計1999.87BTC主動買入大單成交,買入均價9485.79美元。
昨晚22:00-22:30間,OKEx BTC現貨共計有9筆,掛單量4563.12BTC的大額委托買單出現,最終成交2232.75BTC,買入均價9507.3美元。
今晨01:15-05:00,Bitstamp BTC現貨共計有2筆,掛買量為850.58BTC的大額委托買單出現,最終成交798BTC,買入均價9736.05美元。
可見,此輪主力拉升始于火幣、OKEx等有大量國內用戶平臺,價格在9500美元附近,此位置正是市場普遍認為的壓力位。Bitstamp凌晨跟上。?[2020/5/8]
攻擊者利用一筆攻擊交易對多筆無主交易進行雙花的例子。
在這里,我們發現孤塊鏈上發生了三筆交易。發送方和接收方的地址在三筆交易中都是一致的。如上所述,每筆交易的轉賬金額都在約20萬美元左右。此外,后兩筆交易與前一筆交易相比,nonces增加了。根據賬戶nonces的工作方式,這是可以被預估的。
關鍵點是在主鏈上,只要攻擊者賬戶沒有持有足夠的資金來支付轉賬,后兩筆交易都是無效的。在主鏈上,我們發現一個來自攻擊者地址的大額雙花交易,而不是三個獨立的雙花交易,并且各有一個孤塊交易。
主鏈上的攻擊交易,將資金合并并轉移到攻擊者控制的地址上。
值得注意,這個大交易的轉移值等于三個孤塊交易的值之和。這確保了所有三個孤塊交易在主鏈上都是無效的。
精簡奇偶節點網絡分區
除了正常的51%攻擊雙花攻擊模式外,由于這次事件,還出現了第二個有趣的情況。當配置在精簡模式下時,ParityOpenEthereum客戶端會選擇忽略任何超過一定高度的區塊,并認為這些區塊無效。
一個"古老"的錯誤,導致精簡后的奇偶性節點拒絕reorg。
因此,精簡后的ParityOpenEthereum客戶端忽略重組以及繼續挖掘自己的獨立鏈。如上所述,我們稱之為孤鏈。重組鏈的無效性導致網絡按節點和節點配置進行了分區。
ETC網絡如何分區
在這個分區發生后,礦工繼續在精簡后的Parity鏈以及網絡其他部分所遵循的主鏈上采礦。
為了清晰起見,請注意,被精簡的Parity節點的當前狀態等同于未被精簡的Parity、Geth節點在被重組之前的狀態。在重組內請求一定高度的區塊,會從被精簡的Parity節點返回孤兒區塊,而未精簡的Parity節點則返回攻擊者區塊。從unpruned節點接收到的孤塊曾是unprunedParity節點的狀態的一部分,然而孤塊被重組出unpruned節點的視圖。
繼續運行被精簡的奇偶性節點的節點操作者維護并擴展了孤鏈。在這些運營商重新同步他們的精簡奇偶節點或切換到不同的節點類型之前,網絡化仍然是分區的。Coinbase強烈建議切換到支持的節點。
Reorgs
根據Coinbase非精簡節點的日志,曾經有一次極其龐大的重組,從區塊高度10904147開始直到區塊高度10907434。在攻擊時,主鏈的高度為10907434,而孤鏈的高度為10907836。孤鏈和主鏈之間的共同原型區塊高度為10904146。這意味著重組了孤鏈3692個,新增了3287個區塊。需要注意的是,雖然攻擊鏈的高度較低,但因為難度較高,它取代并超越了孤兒鏈成為ETC的正統鏈。假設區塊時間為15秒,攻擊者必須用多數hashpower挖礦約13.7小時才能執行這次攻擊。
重組8/1的示意圖
被精簡的節點忽略了這個重組,而未被精簡的節點則接受這個重組為有效。更多信息請參見上文的網絡分區部分。
我們的分析顯示,在鏈式重組中,有15個雙花交易對和38個基于孤塊的交易。這些雙花都沒有影響到Coinbase。
2020年5月8日,ETC在主鏈上發生了第二次大規模的重組。
在重組時,孤鏈區塊為0x9555,高度為10939866。重組后,主鏈鏈頭塊為0x7521,高度為10939975。孤鏈和主鏈之間的共同原型區塊在高度10935622。重組孤鏈4244塊,而攻擊鏈包含4353塊。假設區塊時間為15秒,攻擊者必須用多數算力挖礦約18.1小時才能執行這次攻擊。
reorg8/5的示意圖
區塊鏈安全公司對這次重組進行了與上述相同的分析,發現了7個雙花交易對和另外2個發送到受害者地址的孤兒交易。同樣這些雙花都沒有影響到Coinbase。
雙花
在第一輪雙花交易中,我們發現約有580萬美元被雙花。有5個獨立的地址向5個獨立的受害者地址發送了大量的雙花交易。攻擊者和受害者地址一對一地進行了映射。
在檢查了來往地址后,區塊鏈安全公司得出結論,這些雙消費都沒有影響到Coinbase:
在第二輪雙花中,我們發現約有320萬元被雙花。這一次,只有一個目標受害者地址為0x38cd54fc7b1fe7994355fce1d75c9c4bd7335a46。此外,每筆交易的雙花金額有更高的差異,在約9.7萬美元到高達約108萬美元之間。我們發現,在第二次攻擊中,攻擊者傾向于不拆分孤塊交易,這意味著孤塊交易和攻擊交易一般是一對一映射的。一個例外是特定的攻擊者地址0xa56cfaef495a45f17f44fd0b2d85e0fe63b9ba7d,它發送了三個孤塊交易。
需要注意的是,在第一次重組中,我們的分析還發現了一些其他的小額雙花,數量在10美元左右。我們認為這些都是非惡意用戶在重組期間與區塊鏈互動導致的非惡意雙花消費。
Coinbase??作者
olivia??翻譯
李翰博??編輯
我們很高興地宣布發布LINK-USD永續合約市場,并集成Chainlink的LINK-USD價格參考數據為鏈上清算提供參考價格.
1900/1/1 0:00:00本篇文章主要針對新入門用戶,介紹什么是DeFi、如何參與DeFi、基礎應用等內容,力爭能讓新人可以理解并真正參與到DeFi的進程中.
1900/1/1 0:00:00親愛的BKEXer:? BKEXGlobal現已支持SLINK彈性供應機制,將于每日7:50~8:20以及19:50~20:20根據SLINK官方安排同步對用戶持有的SLINK進行對應的動態調整.
1900/1/1 0:00:00尊敬的中幣用戶: 為了回饋客戶,中幣聯合CENNZ社區推出“CENNZ交易大賽”活動。活動期間,所有在中幣官網和APP參與CENNZ交易的用戶,即可有機會瓜分200,000CENNZ獎勵.
1900/1/1 0:00:00尊敬的用戶: 為使合約生態更多樣化,給予用戶更多交易選擇,BMEX將于2020年9月2日16時正式上線DOT/USDT、LINK/USDT合約交易對.
1900/1/1 0:00:008月24日,“萬匯Dovey”在社交媒體上爆料稱,新的流動性挖礦項目chick被審計團隊發現留有合約后門,團隊可以隨時將合約中的資金轉走.
1900/1/1 0:00:00