以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads

EPE:從安全研究視角看Poly Network事件

Author:

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

在過去的一周里,陸續發生了幾起安全事件,包括PolyNetwork和DaoMaker等造成大額資金損失的安全事件。雖然后續損失資金大部分或者全部被追回,但仍然給DeFi的安全敲響了警鐘。

PolyNetwork: 6億美金

DaoMaker: 700萬美金

Maze: 500萬美金

Punk Protocol:800多萬美金

在本文中,我們主要從安全研究的視角來分析一下Poly Network攻擊事件,包括如何對安全事件進行分析和復盤以及如何能將整個生態的安全性做的更好。

事件發生在2021年8月10日傍晚,網上一些渠道傳出Poly Network被攻擊的消息,但是對于攻擊的手段是什么,項目方的漏洞成因并沒有準確的消息。對安全研究團隊來說,第一時間需要能搞清楚問題的根本原因所在(對于項目來說,更重要的是如何能通過應急響應挽回損失)。在明白問題所在之后,才能對事情的性質做基本判斷:是代碼漏洞所致、還是人為因素造成、亦或者是虛假消息。

BlockSec團隊首先從以太坊的攻擊交易入手,這源于我們已經有一個比較好的交易trace分析系統(https://tx.blocksecteam.com),能用可視化的方式將函數調用過程恢復。

對沖基金經理Jim Cramer:第一共和銀行的倒閉可能標志著銀行業危機的結束:金色財經報道,對沖基金經理Jim Cramer表示,第一共和銀行的倒閉可能標志著銀行業危機的結束。[2023/4/29 14:34:35]

因此,我們首先在分析系統中重放了以太坊上的一筆攻擊交易,交易hash值是:0xd8c1f7424593ddba11a0e072b61082bf3d931583cb75f7843fc2a8685d20033a。

函數調用非常清晰和簡單,這和之前利用價格操縱來進行攻擊的情況有非常顯著的區別。在價格操縱中,攻擊的trace往往非常復雜,攻擊者需要經過多次的trade才能完成攻擊。而在本次攻擊中,攻擊者只進行了有限的操作,最后就完成了資金轉賬。

在捋清楚調用序列后,我們需要研究攻擊合約和被攻擊合約的源代碼。有意思的是,被攻擊合約在etherscan上是沒有提交源代碼驗證的。也就是說,這樣一個高TVL的項目方的合約居然未發布驗證的源代碼!

雖然etherscan上并沒有源代碼,但是我們通過項目方的github一些線索和函數簽名,找到了可能的源代碼。因此接下來的事情就是分析源代碼了。

美國法院拒絕SEC主要證人作證,Ripple根據最新法院裁決提交“合理通知”辯護:3月7日消息,美國證券交易委員會(SEC)和Ripple Labs之間正在進行的法律斗爭隨著一項新的法院裁決繼續進行。法院現在已經對雙方的動議做出了裁決,即決判決和審判中不考慮專家證詞。在判決中,法官Analisa Torres批準了部分動議,駁回了其他動議,原告和被告都沒有占上風。然而,該裁決的一個關鍵結果是排除了1號專家Patrick Doody就合理的瑞波幣購買者的看法作證。值得注意的是,SEC此前曾聘請Doody來分析代幣購買者的期望,但法官現在批準了Ripple的動議,排除他的證詞。沒有Doody的證詞,目前尚不清楚SEC將如何證明投資者對XRP有“合理的”利潤預期。

此外,Ripple最近提交的文件指向了最高法院最近就Bittner案的一項裁決,該裁決涉及Ripple律師采用的所謂“合理通知”辯護。美國憲法的正當程序條款要求個人被公平告知哪些行為是法律禁止的。對于Ripple來說,公平通知的辯護為:它不可能知道要在證券監管機構注冊XRP,因為該機構從未就加密環境下的證券構成提供足夠明確的說明。Ripple Labs的律師認為Bittner和Ripple高管之間存在相似之處,并表示Bittner最近的裁決類似于它與SEC的斗爭,應該予以考慮。Ripple Labs依賴于SEC之前的聲明和行動,這些聲明和行動使他們明白XRP不是證券,或者說它的辯護是這樣的。因此,該公司沒有理由相信他們違反了證券法。

據悉,Ripple Labs與美國證券交易委員會(SEC)的漫長斗爭即將結束。雙方一直在等待法官Analisa Torres對Ripple多年來出售XRP是否構成未注冊證券發行做出裁決。結論可能需要幾個月的時間,但SEC和Ripple仍可以向法院提交申請,以考慮新的信息。(Blockworks)[2023/3/7 12:46:45]

在分析源代碼的過程中,我們仔細比對了代碼邏輯,并沒有發現明顯的邏輯漏洞。我們將該攻擊交易和其他正常交易的trace進行了比較,攻擊的整個調用trace和一條正常合法的交易并沒有本質區別。?

Web3 SaaS開發者工具集平臺Hamster Network完成百萬美元種子輪融資,測試版產品正式上線:1月30日消息,據官方消息,Web3 SaaS 開發者工具集平臺 Hamster 宣布完成種子輪融資,本輪融資由 Waterdrip Capital 和 Stratified Capital 等機構參投。

Hamster 是一個一站式 DevOps 開發及運維工具,此次 Hamster 發布的版本里,Solidity5 模板、NFT,DAO 等多個合約模板被順利集成,用戶可以選擇相應模板來實現快速創建智能合約以及一鍵部署。同時可以使用 Hamster 進行合約的檢測和運維、有效提高開發的效率及質量。

Hamster 目前已開放公開測評,用戶可以自行注冊測試并在 Hamster Discord 相應頻道中提供反饋。[2023/1/30 11:36:31]

自此,分析進入了死胡同,而時間也到了深夜。在從外圍沒辦法打開局面的情況下,我們只能去對執行過程中的關鍵變量進行恢復。整個的攻擊過程是從函數VerifyHeaderAndExecuteTxEvent開始,我們恢復出來了函數的調用參數和函數執行過程中關鍵變量的值。這就有了我們當時在blog ?中所提到的關鍵參數的值。

CZ:幣安將圍繞儲備證明和償付能力證明發布多個產品:金色財經報道,幣安官方博客發布了CZ最新AMA內容總結,CZ透露幣安的下一個大產品旨在解決上述信任和透明度問題,將圍繞幣安的儲備證明和償付能力證明發布多個產品,以提供更高的透明度和公開發布的路線圖。在 DeFi 話題上,幣安將繼續投資,讓 DeFi 更易于訪問和使用。最后,產品團隊的目標是通過進一步簡化 KYC 流程來實現 10 億經過驗證的幣安用戶。 CZ 表示,他應對可擴展性技術挑戰的解決方案是從最大的傳統、互聯網和金融應用程序中聘請最優秀的人才來應對這些挑戰,到目前為止,這種方法運作良好。[2023/1/29 11:35:19]

通過這個過程,我們發現驗證的keeper只有一個(如上圖)。由于這個值是從真實的攻擊交易中恢復出來的,因此是準確的。并且我們發現攻擊者的交易確實在整個過程中都通過了簽名校驗。結合只有一個keeper的發現,當時我們的判斷是唯一的keeper私鑰泄露了或者服務端簽名程序有bug。

這里我們犯了一個錯誤,做攻擊分析,要像剝洋蔥一樣一層一層深入進行,只有找到真正的“root root root cause”才能結束。因此,雖然我們從當時的表象“一個keeper,簽名校驗也是通過的”得出了兩個可能“私鑰泄露或者服務端簽名有bug”,但是沒有并沒有進一步去研究keeper是否被人修改過,而這正是整個攻擊比較關鍵的一步。寫完初步分析文章已經是凌晨3點,于是就各自回家休息。

PeckShield:XCarnival攻擊者疑似返還1467枚ETH:6月27日消息,派盾(PeckShield)監測顯示,XCarnival攻擊者疑似已返還1467枚ETH。

今晨報道,XCarnival表示(在攻擊者退還盜取資金的前提下)將給予攻擊者(0xb7CBB4d43F1e08327A90B32A8417688C9D0B800a)1500枚ETH的賞金,并明確免除對此人的法律訴訟。[2022/6/27 1:33:54]

在早上醒來后,發現twitter上Kelvin和慢霧都分別給出了新的線索。新的線索表明,keeper曾經被修改過,并且修改keeper是通過hash 碰撞來完成的。

這個時候,我們意識到第一次的分析還不完整。因此,根據新的線索,我們很快也確認了修改keeper的交易是0xb1f70464bd95b774c6ce60fc706eb5f9e35cb5f06e6cfe7c17dcda46ffd59581。

修改keeper的交易并沒有復雜之處(除了Kevin在twitter上提到的hash碰撞是一個非常巧的攻擊技巧 -- CTF選手注意了,以后可能會有類似的CTF賽題)。

但是請注意,在這一次修改keeper的交易中,keeper還沒有被修改,是4個keeper(見下圖),而且這4個keeper和合法交易一樣 -- 說明key是官方的。這一筆惡意交易也完整地通過了簽名校驗。那么攻擊者是如何能讓這一筆攻擊交易上鏈并且能得到執行呢?也就是說,這個時候,最根本的原因還沒有找到。

由于有了第一次的教訓,我們并沒有到此就結束分析,而是繼續挖掘下去,并且在twitter上和社區交流。

既然從以太坊來看這是一條合法的交易,那么這個交易是怎么最初到以太坊上的呢?我們沿著這個思路,仔細研究了項目的白皮書和源代碼。Poly是一個跨鏈的平臺,用來在不同的鏈之間進行資產轉移。因此在以太坊上的調用是目標鏈,那么必然存在一條源頭鏈,用來發起交易。

我們通過以太坊上的交易進而找到了poly chain(中間鏈)上的交易。根據poly chain上的中間交易,進而找到了源頭的Ontology鏈。

這里有一個非常隱蔽的點,曾經困擾了我們很久。因為有了修改keeper的以太坊交易trace,我們已經能恢復出來關鍵的交易hash。比如下圖中的txHash。從ChainID,我們很容易知道Poly chain和 Ontology鏈上的交易hash,但是我們使用這個hash并沒有在這兩個鏈上找到完整的交易,難道是恢復出來的數據不對?

經過一番的努力,我們終于發現,是因為參數中的hash和在鏈上的交易hash數據表達方式不同(類似大端和小端)。比如圖中的polychain的txHash是0x80cc978479eb082e1e656993c63dee7a5d08a00dc2b2aab88bc0e465cfa0721a。

但是在polychain瀏覽器中,hash是1a72a0cf65e4c08bb8aab2c20da0085d7aee3dc69369651e2e08eb798497cc80(發現區別了嗎?)。發現這個關鍵的點之后,我們找到了polychain上的交易以及源頭本體鏈上的交易,于是在11號下午16:55我們在tg上向社區分享了我們的發現。

但是這個時候,仍然不能回答”為什么這個交易會被上鏈“?如果不能回答這個問題,對于漏洞仍然沒有找到根本原因。因此我們繼續從 Ontology鏈入手,追蹤整個交易流向。我們發現整個交易的流向如下:

Ontology transaction -> Ontology relayer -> Poly chain -> Ethereum relayer -> Ethereum

因此想要弄清楚問題的本質,還需要對Ontology 和 relayer進行研究。我們通讀了Ontology 和 relayer的代碼,發現原因是 Ontology 的relayer對交易缺乏驗證。在團隊成員反復討論和互相challenge之后,我們認為這個發現是接近事實真相的。因此在12號凌晨2點41 Twitter上公布我們的發現,并且在medium上公開我們的分析全文。

自此我們的分析結束,其他安全廠商也陸續發布獨立的分析報告,比如派盾在12號早上也公布了是由Ontology鏈發起了攻擊交易。

0x2 經驗和教訓

本次事件對于整個DeFi社區是非常重要的一起安全事件,雖然攻擊者最終返還了被攻擊的數字貨幣,但就像余弦所說”這種能力太過消耗,成本也非常高,也有運氣成分”。我們不能期待每一次的攻擊事件都會有好的結局。因此,社區如何做才能讓整個生態的安全變得更好?

要讓安全滲透到項目方的血液當中,包括安全的意識、設計、編碼、管理、運營、監控、事件處理等每一個方面。一個好的DeFi項目必須首先要是一個安全優先的項目,否則用戶將資產投入到項目里面,他們的資產安全由誰來守護?很遺憾的是,從這個事件來看,項目方的安全設計意識是不足的。作者本人在講授本科生的軟件安全課程,我們在軟件安全第一堂課就會講威脅模型和攻擊面。很顯然,這一次的跨鏈設計并沒有對攻擊面做一個梳理,沒有在預防可能的攻擊面上有過深入思考。或者有過深入的分析,但是最后的實現并沒有完全能遵循設計。

項目方的上線合約代碼沒有經過驗證,雖然項目方在github開源了一些代碼,但是其在鏈上并沒有上傳經過驗證的代碼。去中心的基礎是信任,信任的基礎是透明。而這樣一個沒有驗證源代碼的黑盒項目居然有那么大的鎖倉量,說明社區在繁榮的同時,用戶也缺乏必要的安全意識。如何在用戶安全意識上破局,需要新的解決方案。

Tags:EPEKEEPKEEPOLPEPERUNNER價格bitkeep在蘋果怎么下載bitkeep老板polkawallet切換astar

芝麻開門交易所
API:a16z合伙人Chris Dixon:區塊鏈是新時代的應用商店

如果你在 2009-12 年左右的移動黃金時代是一位雄心勃勃、喜歡冒險的創始人,那么你開發了一款新的移動應用.

1900/1/1 0:00:00
ORA:有哪些可能會發空投的NFT平臺與項目

在如今的區塊鏈領域中,最為矚目的當屬 NFT 板塊。隨著一個個 NFT 盲盒項目的出圈,越來越多 DeFi 用戶、加密用戶甚至加密世界之外的人們開始關注并加入到這一領域中來.

1900/1/1 0:00:00
NFT:Visa斥15萬美元買入加密朋克背后:NFT進擊主流+三大發展階段探討

最流行的NFT之加密朋克于2021年5月12日在時代廣場展出。(來源:Getty Images)摘要:為什么VISA要如此“神圣”地購買加密朋克NFT,一小筆15萬美元的支出背后的蝴蝶效應是?N.

1900/1/1 0:00:00
okx:字節、騰訊悄悄殺入 “區塊鏈韭菜”真來了

今年7月中旬,一個 “區塊鏈韭菜”項目再次被熱議。這是在山東濰坊剛剛落地的被稱為“區塊鏈+韭菜”的合規、合法的項目。政府等相關部門人士都來站臺.

1900/1/1 0:00:00
COIN:金色觀察 | Coinbase的加密帝國

雖然二季度以比特幣為代表的加密貨幣遭遇腰斬行情,但激增的交易量仍然使加密貨幣交易所保持“旱澇保收”的狀態.

1900/1/1 0:00:00
GAS:從終端用戶角度理解以太坊發展路線

讓我們來看看以太坊生態系統的擴容路線圖吧!不過這次是從終端用戶的角度來看。當然我們將會看到很多在細節上的更新,但我在本文介紹的將是主要的更新.

1900/1/1 0:00:00
ads