一些天前我們注意到 IOTA 暫停了主網,雖然早前我們也知道 IOTA 用戶遭遇了盜幣攻擊,但沒想到 IOTA 官方會通過暫停主網方式來進行這次盜幣攻擊的阻攔與調查,看來問題很嚴重。隨后,2020/02/19,我們深入分析了官方披露在 status.iota.org 上的一些線索,開始獨立調查這次嚴重安全事故的具體原因。
通過對 IOTA 官方錢包 Trinity 新版本發布的分析,我們在其 GitHub 上進行了版本比對,注意到了 MoonPay 這個第三方組件被移除,且我們注意到 Trinitiy 桌面錢包是基于 Electron 開發的,安全經驗告訴我們,這可能是個大坑,于是,我們 2020/02/19 時發布了一些推測:
慢霧:IOTA 用戶 Trinity 錢包被盜幣攻擊推測
IOTA 因為近期不少用戶的 Trinity 錢包被盜幣攻擊,為了阻止攻擊繼續、調查與修復具體原因,主網協調器都暫停運行了。這是一個被低估的經典攻擊,官方沒披露具體攻擊細節,但通過我們的分析,可以做出某些重要推測,首先可以明確的幾個點:
慢霧:遠程命令執行漏洞CVE-2023-37582在互聯網上公開,已出現攻擊案例:金色財經報道,據慢霧消息,7.12日Apache RocketMQ發布嚴重安全提醒,披露遠程命令執行漏洞(CVE-2023-37582)目前PoC在互聯網上公開,已出現攻擊案例。Apache RocketMQ是一款開源的分布式消息和流處理平臺,提供高效、可靠、可擴展的低延遲消息和流數據處理能力,廣泛用于異步通信、應用解耦、系統集等場景。加密貨幣行業有大量平臺采用此產品用來處理消息服務,注意風險。漏洞描述:當RocketMQ的NameServer組件暴露在外網時,并且缺乏有效的身份認證機制時,攻擊者可以利用更新配置功能,以RocketMQ運行的系統用戶身份執行命令。[2023/7/14 10:54:22]
不是 IOTA 區塊鏈協議的問題,是 IOTA 的 Trinity 桌面錢包的問題(官方說的,且先相信)
這款桌面錢包基于 Electron(一個使用 JavaScript 為核心構建桌面應用的框架),意味著核心代碼是 JavaScript 寫的
慢霧:Inverse Finance遭遇閃電貸攻擊簡析:據慢霧安全團隊鏈上情報,Inverse Finance遭遇閃電貸攻擊,損失53.2445WBTC和99,976.29USDT。慢霧安全團隊以簡訊的形式將攻擊原理分享如下:
1.攻擊者先從AAVE閃電貸借出27,000WBTC,然后存225WBTC到CurveUSDT-WETH-WBTC的池子獲得5,375.5個crv3crypto和4,906.7yvCurve-3Crypto,隨后攻擊者把獲得的2個憑證存入Inverse Finance獲得245,337.73個存款憑證anYvCrv3Crypto。
2.接下來攻擊者在CurveUSDT-WETH-WBTC的池子進行了一次swap,用26,775個WBTC兌換出了75,403,376.18USDT,由于anYvCrv3Crypto的存款憑證使用的價格計算合約除了采用Chainlink的喂價之外還會根據CurveUSDT-WETH-WBTC的池子的WBTC,WETH,USDT的實時余額變化進行計算所以在攻擊者進行swap之后anYvCrv3Crypto的價格被拉高從而導致攻擊者可以從合約中借出超額的10,133,949.1個DOLA。
3.借貸完DOLA之后攻擊者在把第二步獲取的75,403,376.18USDT再次swap成26,626.4個WBTC,攻擊者在把10,133,949.1DOLAswap成9,881,355個3crv,之后攻擊者通過移除3crv的流動性獲得10,099,976.2個USDT。
4.最后攻擊者把去除流動性的10,000,000個USDTswap成451.0個WBT,歸還閃電貸獲利離場。
針對該事件,慢霧給出以下防范建議:本次攻擊的原因主要在于使用了不安全的預言機來計算LP價格,慢霧安全團隊建議可以參考Alpha Finance關于獲取公平LP價格的方法。[2022/6/16 4:32:58]
在做該做錢包新舊版本代碼的 diff 分析時,發現去除了之前內置的一個交易所功能模塊 MoonPay,這其中關鍵點是去掉了一段可怕的代碼:
慢霧:Multichain(AnySwap)被黑由于anySwapOutUnderlyingWithPermit函數相關問題:據Multichain(AnySwap)早前消息,2022年01月18日,一個影響6個跨鏈Token的關鍵漏洞正在被利用。慢霧安全團隊進行分析后表示,此次主要是由于anySwapOutUnderlyingWithPermit函數為檢查用戶傳入的Token的合法性,且未考慮并非所有underlying代幣都有實現permit函數,導致用戶資產被未授權轉出。慢霧安全團隊建議:應對用戶傳入的參數是否符合預期進行檢查,且在與其他合約進行對接時應考慮好兼容性問題。[2022/1/19 8:57:49]
const script = document.createElement('script');script.src = 'https://cdn.moonpay.io/moonpay-sdk.js';document.write(script.outerHTML);如果這個第三方 JavaScript 鏈接主動或被黑作惡,那該桌面版錢包就可以認為是完全淪陷了。到這,我們很有理由相信這是個很大的定時炸彈,如果這個定時炸彈是真的炸了,那很吻合官方的一些說辭與解釋,如:盡快升級新版本的 Trinity 桌面錢包,盡快改密碼,盡快轉移資產到安全種子里等等。且看官方的后續披露。
慢霧:Badger DAO黑客已通過renBTC將約1125 BTC跨鏈轉移到10 個BTC地址:12月2日消息,Badger DAO遭遇黑客攻擊,用戶資產在未經授權的情況下被轉移。據慢霧MistTrack分析,截止目前黑客已將獲利的加密貨幣換成 renBTC,并通過renBTC 將約 1125 BTC 跨鏈轉移到 10 個 BTC 地址。慢霧 MistTrack 將持續監控被盜資金的轉移。[2021/12/2 12:46:11]
今天(2020/02/22),我們注意到了官方披露了一些細節,基本驗證了我們的推測。
https://blog.iota.org/trinity-attack-incident-part-1-summary-and-next-steps-8c7ccc4d81e8
重點關注下這段:
The attacker started on November 27th, 2019 with a DNS-interception Proof of Concept that used a Cloudflare API key to rewrite the api.moonpay.io endpoints, capturing all data going to api.moonpay.io for potential analysis or exfiltration. Another longer-running Proof of Concept was evaluated by the attacker one month later, on December 22nd, 2019. On January 25th, 2020, the active-jozw attack on Trinity began, where the attacker started shipping illicit code via Moonpay’s DNS provider at Cloudflare.
動態 | 慢霧:9 月共發生 12 起較典型的安全事件,供應鏈攻擊趨勢愈發明顯:過去的 9 月區塊鏈生態共發生 12 起較典型的安全事件,包括:EOSPlay 遭受新型隨機數攻擊、資金盤項目 FairWin 智能合約權限管理缺陷、EOS 黑名單賬號 craigspys211 利用新晉 BP 黑名單缺陷轉移走 19.999 萬枚 EOS 等典型安全事件。此外,慢霧區塊鏈威脅情報(BTI)系統監測發現,針對區塊鏈生態的供應鏈攻擊越來越多,形如:去年 11 月慢霧披露的污染 NPM 模塊 EventStream、今年 7 月披露的對數字貨幣錢包 Agama 構建鏈的攻擊、今年 8 月披露的針對數字貨幣行情/導航站的 URL 劫持攻擊,還有 9 月慢霧披露的針對交易所使用的第三方統計、客服 js 的惡意代碼植入,進行實施盜幣攻擊。[2019/10/1]
攻擊者利用 MoonPay 的 Cloudflare API Key 完成了后續一系列劫持攻擊,預估被盜的 IOTA 達 8.55 Ti(8550000 枚 MIOTA,MIOTA 現在是交易所默認最小交易單元,當前價格 0.267 美金/MIOTA)。根據我們歷史經驗,如果 Web 服務方使用了 Cloudflare,而其 Cloudflare 賬號權限被控制,就可以做到非常完美的中間人劫持攻擊,注入惡意 JavaScript。而 Trinity 桌面錢包又是基于 Electron,一個完美的 JavaScript 執行環境就擺在這,不需要任何特別的越權,JavaScript 可以完成用戶或 Trinity 錢包可以完成的任何事情,其中就包括密碼和種子的盜取等等。
由于我們不像 IOTA 和 MoonPay 官方,他們擁有足夠的日志記錄來將攻擊過程完整掌握,我們只能通過我們所能接觸到的完成以上推測與相關分析工作。剩下的就希望官方公布具體細節并盡快完成主網的重新運行。
在這,我們不得不提的一些安全看法及建議:
第三方是可以邪惡的,默認都不可信,軟件安全開發過程一定要警惕第三方依賴,包括第三方組件與第三方 JavaScript 鏈接
注:IOTA 基金會聯合創始人 Dominik Schiener 表示:“此次攻擊是由于集成 MoonPay 的漏洞造成,「Trinity 錢包所犯的最大錯誤是沒有集成 NPM 軟件包,并且沒有適當地對集成進行安全審核」”我們站在第三方獨立安全審計的角度認為,這種說法是不嚴謹的,在加密貨幣發展的歷史上,因為 NPM 包中引用的第三方源而導致的加密貨幣被盜案件不在少數。如知名的 "event-stream" 事件
Cloudflare 等第三方 CDN/WAF 服務很優秀很強大,但如果使用者沒安全管理好自己的賬號權限,其 Web 服務將會遭遇完美的中間人攻擊
公鏈官方錢包的一個致命缺陷可能搞垮一條公鏈,鏈上安全關注的同時,鏈下安全也不能忽視,他們是一直整體,這也是為什么我們關注的是區塊鏈生態安全,而不是僅僅區塊鏈本身的鏈上安全
作為 IOTA 官方錢包 Trinity 的使用者來說,盡快按官方的指導完成安全加固工作,這個就不多說了
相關鏈接:
Trinity Attack Incident Part 1: Summary and next steps https://blog.iota.org/trinity-attack-incident-part-1-summary-and-next-steps-8c7ccc4d81e8
Trinity Attack Incident Part 2: Trinity Seed Migration Plan https://blog.iota.org/trinity-attack-incident-part-2-trinity-seed-migration-plan-4c52086699b6
Trinity Attack Incident Part 3: Key Learnings & Takeaways https://blog.iota.org/trinity-attack-incident-part-3-key-learnings-takeaways-c933de22fd0a
IOTA Status Page: https://status.iota.org/
如何看待 NPM 包 event-stream 被黑客篡改,發現包含惡意代碼?https://www.zhihu.com/question/303815270
BTC周線收線處于前期突破的下降趨勢線之上,這一帶也存在2.618斐波支撐,同時也有55周均線支撐,還有年線支撐,屬于密集支撐區域,周線級別的下跌動能開始減弱.
1900/1/1 0:00:00金色晚報?|?8月31日晚間重要動態一覽:12:00-21:00關鍵詞:SushiSwap、工商銀行、韓國央行、YAM V2、灰度 1. 工商銀行宣布發行數字信用卡.
1900/1/1 0:00:00政務、金融、文創、工業互聯網、食品溯源、快捷支付、教育……這些與城市高質量發展、老百姓生活密切相關的領域,已經有了區塊鏈的身影.
1900/1/1 0:00:005月12日03:23,比特幣正式完成獎勵減半。此次是比特幣誕生以來的第三次減半,減半后每個區塊的獎勵將變為6.25BTC.
1900/1/1 0:00:00算法穩定幣可以分為single-token 和 multi-token 兩種模型。single-token模型的算法穩定幣有:AMPL、ESD等;multi-token模型的算法穩定幣有:Bas.
1900/1/1 0:00:00昨天,一條“礦圈豪賭減半行情”的微博引發了很多人的關注和討論。 以下是微博內容: 對于“礦圈豪賭”的觀點,白話就減半行情、礦圈長期發展、礦工等相關問題,訪談了四位礦圈資深從業人士:魚池 Cobo.
1900/1/1 0:00:00