比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

Ronin 黑客計中計 聽說過扭曲攻擊漏洞嗎?_NBS

Author:

Time:1900/1/1 0:00:00

By: Johan

據慢霧安全團隊情報,2023 年 3 月 13 日,Ethereum 鏈上的借貸項目 Euler Finance 遭到攻擊,攻擊者獲利約 2 億美元。

黑客在攻擊完 Euler 后,為了混淆視聽逃避追查,轉了 100 ETH 給盜取了 Ronin 6.25 億多美金的黑客拉撒路。拉撒路順水推舟將計就計,隨即給 Euler 黑客發了一條鏈上加密消息,并回禮了 2 枚 ETH:

消息內容是提示 Euler Exploiter 用 eth-ecies 解密這條消息。

按道理說在公開的環境下,如果 Ronin Exploiter 只是想加密通訊,使?公鑰加密是最簡單的?案。

    公鑰加密:

C = {rG, M + rQ} = {C1, C2}

    私鑰解密:

M = M + r(dG) ? d(rG) = C2 ? d(C1)

其中密? C,公鑰 Q,私鑰 d,隨機數 r,消息 M。協議很簡單,加密過程不需要?到的私鑰,不存在私鑰泄露的路徑。

使? eth-ecies 加密是因為?便還是另有所圖?隨后很快就有?指出 eth-ecies 存在安全漏洞,Ronin Exploiter 是想竊取 Euler Exploiter 的私鑰。

數據:ETH、TRON及BTC位列鏈上手續費用貢獻前三:8月13日消息,Token Terminal數據顯示,今年迄今為止 (YTD) 鏈上手續費用一直呈上升趨勢,每月總費用在5月份達到6.92億美元的峰值;從貢獻占比來看,以太坊、波場(TRON)以及比特幣位列前三;過去7天數據顯示,以太坊總費用為3470萬美元,TRON是1810萬美元,比特幣是480萬美元。此外,波場以148萬日活位列第一,比特幣以65.4萬日活位列第二,以太坊日活33.8萬排名第三。[2023/8/13 16:22:44]

是否真的如此?且讓我們先分析?下 eth-ecies 存在的是怎么樣的?個漏洞。

經過分析,我們發現 eth-ecies 使?了 "elliptic": "^6.4.0",這是個 Javascript 橢圓曲線庫,這個版本的庫存在多個安全漏洞,其中?個就是扭曲曲線攻擊漏洞(twist attacks),這個漏洞的成因是在計算 ECDH 共享密鑰時沒有驗證對?的公鑰是否在曲線上,攻擊者可通過構造??群曲線上的公鑰,誘導受害者計算共享密鑰,從?破解出受害者私鑰。

但是這個漏洞的利?難度是很?的,需要有?常契合的場景才能發起攻擊,Ronin Exploiter 是否有機會發起扭曲攻擊呢?

ECDH 算法是基于橢圓曲線加密的密鑰交換算法。它與傳統的 Diffie-Hellman (DH) 算法類似,但是使?的是橢圓曲線上的數學運算來實現密鑰交換,從?提供更?的安全性。

安全團隊:Ronin攻擊者近24小時將4100枚ETH轉移至Tornado Cash:4月29日消息,據CertiK安全團隊監測,Ronin Network攻擊者于近24小時內已將另外4100枚ETH(價值約1190萬美元)轉移至Tornado Cash中。

攻擊者錢包地址:0xDD6458eB5090832eB88BFfc7AdF39B0F3CdD6683。[2022/4/29 2:39:29]

下?是 ECDH 算法的步驟:

1. ?成橢圓曲線:在密鑰交換之前,通信雙?需要選擇?個橢圓曲線,該曲線必須滿??些數學特性,例如離散對數問題。

2. ?成私鑰和公鑰:每個通信?都需要?成?對私鑰和公鑰。私鑰是?個隨機數,?于計算公鑰。公鑰是?個點,它在橢圓曲線上,并由私鑰計算得出。

3. 交換公鑰:通信雙?將??的公鑰發送給對?。

4. 計算共享密鑰:通信雙?使?對?發送的公鑰和??的私鑰計算出?個共享密鑰。這個共享密鑰可以?于加密通信中的數據,保證通信的機密性。

為了?便描述下? Alice 和 Bob 分別代表上?雙?,G 為基點,假設:

Alice 的私鑰是 a,則 Alice 公鑰是 A = aG;

Bob 的私鑰中 b,則 Bob 公鑰是 B = bG。

核?知識點在共享密鑰計算?法,根據群的乘法交換律,他們只要獲取到對?的公鑰就可以計算出共享密鑰:

                                               S = aB = a(bG) = b(aG) = bA

波場TRON交易總數突破28億:2022年1月27日,根據TRONSCAN最新數據顯示,波場TRON交易總數達到2,805,854,208,正式突破28億。波場TRON各項數據一直穩中前進,波場生態逐漸強大的同時,也將迎來更多交易量。[2022/1/27 9:17:08]

如果 Alice 想要刺探 Bob 的私鑰,她可以選擇?個階數 q ?常?(點的數量?常少)的曲線點 H(這個點不是對應任何特定私鑰的公鑰,但是 Bob 并不知道),由于群是循環群,Bob 在計算 S′  = bH 時,他得到的 S′  將在這些少量點群以內。Alice 不知道 Bob 的私鑰 b,但可以通過窮舉得到滿? S′ = xH 的 x,此時 b ≡ x  mod q 。顯然 x 很?,最?為 q。

需要多少個扭曲點呢?這取決于每?次選擇的階數 q,需要階數相乘能超過私鑰的最?值,即滿?:

如果我每次選擇的 q ??點,那么需要交互的次數 n 就可以少?點,但 q 越?意味著窮舉的難度越?,所以這?需要根據 Alice 的運算性能做?個取舍。

孫宇晨:TRC20-TUSD會上線JustLink和JustLend,也將參與到波場TRON世紀挖礦中:據官方消息,波場TRON創始人兼BitTorrent CEO孫宇晨正在一直播平臺進行直播,全面解析合規穩定幣TUSD入駐波場TRON的未來和機遇。他在直播中表示:“我們鼓勵用戶體驗TUSD的秒級服務,TRC20-TUSD已經上線了JustSwap,并且即將參與到波場TRON世紀挖礦中,未來會上線JustLink和JustLend等,除此之外,波場TRON也會與更多的穩定幣合作,讓更多通證有機會享受到波場TRON公鏈高吞吐量、低延遲的優勢。

波場TRON的責任不僅僅停留在為波場TRON生態上的DeFi和DAPP搭建基礎設施,我們已經成為了整個去中心化金融的基礎設施,波場TRON上的每一筆轉賬都是流淌的金融的血液,為人類去中心化的金融保留著火種。”[2021/4/15 20:24:02]

上?我們分析了 ECDH 算法的?險和攻擊原理,我們再回來看 eth-ecies 這個庫,實際上它使?的只是?個類似 ECDH 的算法,它在構造共享私鑰時使?的是臨時密鑰,根本不需要?到加密?的私鑰,所以并不會對加密?構成?險。

那么有沒有可能 Ronin Exploiter 是想利?社會?程學引導 Euler Exploiter 使?其它有問題的?具呢??如我們熟知的 PGP 加密協議?

巧的很,我們很快就發現被?泛使?的開源庫 openpgpjs 最新版本 v5.7.0 還在使?了低版本的 "@openpgp/elliptic": "^6.5.1" ,更巧的是,它?持基于 Curve25519 的 ECDH 協議,故事本應該進??潮,但經過分析發現,openpgpjs 的 ECDH 協議在實現時,和 Ecies 協議?樣引?了臨時密鑰,即使加密?導?了私鑰,也僅僅?于消息簽名,?不會?于構造共享密鑰。

以波場TRON網絡為基礎發行的穩定幣借貸平臺JUST已被DApp Total收錄:據最新消息顯示,以波場TRON網絡為基礎發行的穩定幣借貸平臺JUST已正式被DApp Total收錄,用戶可以在DApp Total平臺上查看JUST項目的用戶數、交易額、排名等基本數據。JUST旨在建立一個公平、去中心化的金融系統,為世界各地的用戶提供穩定的貨幣借貸和治理機制。此外,JUST(JST)作為Poloniex(P網)LaunchBase首發項目,將于5月5日正式上線。[2020/4/22]

故事結束了,我覺得 Ronin Exploiter 使?低版本 elliptic 存在的漏洞去隱秘的竊取 Euler Exploiter 私鑰的可能性不?,?于那條鏈上消息,可能真的是為了共商?計,更進?步的圖謀不軌需要更加?超的社會?程學?段了,但 Euler Exploiter 已經警覺。

上?提到了扭曲攻擊的原理,實際?程實現上仍然有?個問題需要解決:

1. 如何構造扭曲的點?

2. 當 Bob ?共享密鑰 S' 加密消息時,它并不會把 S' 傳輸給 Alice,因為根據協議 Bob 認為 Alice 是已經知道這個密鑰的,那么 Alice 如何獲取 S' 呢?

這?以 Curve25519 曲線為例,它的曲線?程是:

我們隨意改變其中的?個參數,得到?條新的曲線,?如:

使? sagemath 數學軟件來表示:

p = 2**255-19 E = EllipticCurve(GF(p), [0,48666,0,1,0])然后我們計算它的階數,并對這個階數進?因式分解:

Grp = E.abelian_group() G = Grp.gens() Gorder = G.order() print( "{0} = {1}".format(Gorder, factor(Gorder)) )計算結果:

...= 2 * 3049 * 14821 * 19442993 * 32947377140686418620740736789682514948650410565397852612808537選擇 19442993 這個??適中的數,?中國剩余定理創建?個含有 19442993 個元素的?群: 

x = crt([1,0], [19442993, Gorder//19442993]) P1 = x * G到這?我們就得到了第?個扭曲的點,把它當作公鑰發送給 Bob,Bob 就可以計算第?個共享密鑰:

最終得到的結果可表示為:

使?中國剩余定理即可計算出私鑰 b:

x = crt([ x1, x2, x3, x4, x5, x6, x7, x8, x9], [ 19442993, 3645143, 184879577, 5110460161, 15272631587, 208137522259, 64927105657, 60824497, 213156431]) print(x == b) print(hex(x))總結本?我們通過?個不同常理的對話開始研究了橢圓曲線加密算法中的扭曲曲線攻擊,分析了漏洞的存在的原因,雖然漏洞利?場景有限,但不失為?個很有價值的漏洞,希望能對?家的學習研究有所啟發。

最后,感謝領先的?站式數字資產?托管服務商 Safeheron 提供的專業技術建議。

參考資料:

.https://etherscan.io/tx/0xcf0b3487dc443f1ef92b4fe27ff7f89e07588cdc0e2b37d50adb8158c697cea6

. https://github.com/LimelabsTech/eth-ecies

. GitHub - openpgpjs/openpgpjs: OpenPGP implementation for JavaScript

. Elliptic curve constructor - Elliptic curves

慢霧科技

個人專欄

閱讀更多

金色財經 善歐巴

金色早8點

白話區塊鏈

歐科云鏈

Odaily星球日報

Arcane Labs

MarsBit

深潮TechFlow

BTCStudy

鏈得得

Tags:BSPNBSRONtronBSP幣nbs幣最新消息Frontiertronlink錢包怎么充值

以太坊交易
Web3新經濟 我們的近憂和遠慮_RES

近期,香港在擁抱Web3的進程中大動作頻頻,來自全世界的Web3 Builder們都迫不及待的加入了此次盛會,分享新知表達觀點的同時,也與新伙伴相識、與老伙計“奔現”.

1900/1/1 0:00:00
從“某安”被起訴事件 看看加密資產在美國有多難混_CFT

颯姐前幾天為大家分析過某幣圈大佬及其旗下公司,涉嫌違反美國1933年《證券法》和1934年《證券交易法》,向美國公眾發行和售賣未受美國證監會(SEC)規管的非法證券加密資產.

1900/1/1 0:00:00
AC Capital:上海升級在即 LSD 為何備受期待_ETH

去中心化世界剛剛經歷了一波歷史級別的牛市,無數創新呈現在我們的面前。相較于2018年牛熊轉換后的一地雞毛,這次去中心化世界擁有了DeFi、NFT、衍生品、Lanuchpad、Incubator.

1900/1/1 0:00:00
年內漲幅已超70% 比特幣價格逼近3萬美元關口_比特幣

界面新聞記者:司林威 4月11日,行情數據顯示,全球最大加密貨幣比特幣價格突破29000美元關口,截止發稿前報價來到29690美元,24小時漲幅4.55%,無限逼近30000美元關口.

1900/1/1 0:00:00
貨幣的界碑(代自序)_數字貨幣

作者:徐遠(北京大學金融學教授) 看見風暴 開始關注比特幣,是很早的事情。早先市場不成熟,有很多免費的利潤,導師國青先生看得清楚,談笑間輕松撿錢.

1900/1/1 0:00:00
3月區塊鏈安全報告:典型事件超21起 損失總金額約2.18億美元_區塊鏈

原文:《3月發生較典型安全事件超21起,各類攻擊事件損失總金額約2.18億美元!》 作者:Beosin 本月損失的主要金額來自于3月13日Euler Finance遭受攻擊損失的1.97億美元.

1900/1/1 0:00:00
ads