「數」說wannacry的比特幣錢包
*本文原創作者:追影人,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
前 言
5月12日一場互聯網領域的「巨震」席捲全球,wannacry蠕蟲式勒索軟體已驚人的速度席捲上百國家,所到之處,哀鴻遍野,寸草不生(詞窮編不下去了),上一張來自malwaretech的全球感染地圖自己感受。
各安全公司的大牛們從感染初期便開始進行樣本分析,發表諸多技術分析文章,其中均提到了wannacry使用的三個比特幣賬戶,本文便是利用比特幣交易明細公開化的特性,從數據的角度扒一扒這三個賬戶的秘密。
為什麼會是比特幣
當中招者絕望,想花錢買平安時,才發現對方只支持比特幣支付,這讓日常用慣快捷支付的客戶們情何以堪。選擇如此小眾的支付方式使得門檻提升,用戶體驗太差,讓不少到手的鴨子飛了,這也一定程度上影響了病毒製作者的收益。Why???!!!為什麼會選擇比特幣進行支付?
比特幣已不是新鮮事物,自誕生以來,便憑藉去中心化、高匿名性的優勢快速發展,也因匿名性吸引了不少犯罪力量關注,給比特幣的發展帶來不少爭議。勒索軟體使用比特幣已經由來已久,安全公司曝光的諸多勒索軟體,為了反追蹤溯源絕大部分均使用該支付手段。
Q:比特幣帳戶為何會是匿名的?
A:與以銀行為代表的中心化交易體系相比,比特幣採用分布式結構將所有交易記錄分布存儲在不同的區塊鏈中,沒有統一的中心節點,且所有交易記錄均公開。同時用戶可無需實名認證,隨意生成若干個比特幣錢包地址,且錢包之間的轉帳可隨意進行,無需中間機構認證,這些因素共同確保了比特幣錢包的高匿名性。由於比特幣的使用模式與銀行相比較為複雜,一定程度上屏蔽了很多潛在客戶,為了降低使用門檻,滿足市場需求,一些投資者成立比特幣交易所,來提供貨幣兌換、交易等服務。但是交易所會以一些制度強制力或者帳戶安全性為名,讓客戶提供更多的個人資料,這在一定程度上降低了比特幣錢包的匿名性。這也導致勒索軟體這樣的專業化團伙會盡量避免去交易所進行交易,而選擇地下市場交易。
Q:比特幣交易記錄里能獲得什麼?
A:銀行的交易記錄只能由交易參與者查看,而比特幣的交易記錄則是全網公開,至於為什麼要這樣做,感興趣的童鞋可以查閱比特幣的交易原理。有很多網站提供比特幣交易記錄的查詢功能,在這推薦btc.com,在該網站上可以查看任何錢包、區塊、礦產等基本信息。在交易記錄上,我們可以很容易獲取與本次交易相關聯的前後交易記錄,這樣我們沿著上下游一直追溯就可以獲取完整的比特幣流向。
Q:獲取到完整交易鏈後,我們能夠幹什麼?
A:與銀行轉賬一樣,比特幣賬戶的轉賬次數也是無限制的,且轉賬額度無限。通常電信詐騙集團為了逃避打擊,常將大筆交易化整為零,分轉入多個賬戶,然後跨境轉出;而比特幣賬戶無國籍屬性,且每個人都可以註冊N個賬戶,這更加降低了成本,犯罪集團會使用大量賬戶進行轉賬操作,從而提升分析者挖掘有價值信息的成本。需要強調的是,比特幣的交易記錄以區塊的形式進行存儲,而不是一對一存儲,這就會導致如下圖形式的記錄出現。
從這條記錄上我們只能看到輸入輸出,無法精確到是哪一個賬戶轉給哪一個賬戶,所以這也給分析工作帶來一定干擾。在下一節中就可以體會到分析過程的複雜性,其交易資金流並非簡單的鏈條關係就能描述清楚,而是複雜的樹型結構,甚至是龐大的圖。
準備數據源
巧婦難為無米之炊。在對數據分析前首先要做的就是數據採集,曾經有人在我評論下稱我為「freebuf爬蟲帝」,這次依舊老套路上python爬蟲來扒數據,具體的技術細節就不再重複。
針對py爬蟲的編寫大體分兩個路子:
1、基於url2、bs4等python庫的爬蟲;
2、基於scrapy等框架的爬蟲。
推薦新手使用方法一進行編寫,這樣可以通過一次次的碰壁更清楚的了解爬蟲的架構和底層技術細節;而老司機便可選用效率更高中間件更加完善的各類框架來進行數據採集。在本次爬取中為了去重引入redis來處理重複數據,使用mysql資料庫進行本地化存儲數據,數據分析則由
sql語句直接完成。
本次分析的交易記錄均來自於逆向獲取的wannacry硬編碼的三個比特幣賬戶:
115p7UMMngoj1pMvkpHijcRdfJNXj6LrLn
12t9YDPgwueZ9NyMgw519p7AA8isjr6SMw
13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94
另外有部分安全廠商分析顯示,wannacry在連接TOR網路後,會動態為每個用戶獲取一個比特幣收款賬戶,這樣每台受害者的電腦都會得到不同的付款地址,分析人員也無法統計攻擊者使用了多少個付款地址,牽扯到的勒索金額也無法確切統計。顯然這已經超出本次分析的能力,所以本文只對上面的三個賬戶進行分析。
選取btc.com網站作為交易記錄的數據源,對相關數據進行爬取分析,爬蟲爬取數據的路線大致如下:
由錢包地址,可獲取該錢包的所有交易明細。
由錢包頁面的交易明細可以進入某次交易的詳情頁面。
交易信息都記錄在區塊上,而與本次交易相關聯的區塊(即比特幣的上/下次交易信息)的鏈接,同樣可在本頁面獲取(上圖紅色區域)。
由此可知,我們只要不斷去迭代追溯交易的上下游,就可以獲得整個比特幣的運動軌跡,即資金流向。這樣豈不是可以查到這三個賬戶的資金去向嗎?很遺憾,截至發稿前,這三個賬戶沒有資金流出,即沒有構成下游來供分析者追查。
Q:為何收了錢卻不用呢?
A:我們不妨大開腦洞猜測一下:
maybe1:這次事情波及範圍太廣,遠超作案者預期,導致心怯不敢用錢; maybe2:這三個錢包只是掩護,從tor網路動態獲取的錢包地址才是作案者真實使用的; maybe3:作案者根本就不是為了錢而來的。maybe4:.......(歡迎大家一起在評論區大開腦洞)
至此,我們無法對資金的去向進行分析,但是既然上游是可以查的,不妨讓我們一起看看匯入這三個賬戶的錢都是怎麼來的吧!!!
「數」說wannacry交易記錄
爬蟲主要收集兩類信息:
1、交易區塊基本信息
2、交易明細
由於交易區塊中記錄的賬戶並非一對一,往往出現多對多的形式,所以在存儲時按條存儲,分輸入、輸出兩類。
分析一:攻擊者賬戶交易基本信息
對三個賬戶進行收集,三個賬戶共有300次交易,共532個輸入賬戶,3790個輸出賬戶。
從交易次數可以看出,12日wannacry爆發後,13日迎來了第一個交易高峰,共61次。隨著15日(星期一)的到來,許多公司可能出於恢復業務的需要,選擇花錢買平安,迎來了最高峰84次。
三個賬戶餘額分布圖可以看出金額基本均分,從一定程度上可以看出程序內部對各賬戶的選擇是隨機的。
其賬戶具體金額為
三個賬戶的第一筆交易id為cce780ee91f0eda86d733f8fa93e23eb676ea1dd43c0822353501de61414ece9,轉入13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94賬戶。圖11.png
其中最大的交易發生在下圖,有1.999BTC。最小的則只有0.00000563BTC。
分析二:資金流
我們提取賬戶13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94的所有交易記錄,畫出資金關係圖。
PS:紅色點:交易區塊;綠色點:比特幣錢包賬戶;藍色線:資金由錢包輸入;橙色線:資金輸出到錢包。
該圖很明顯看出位於中心的節點便是賬戶13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94,局部放大圖。
然後順著這個賬戶的所有交易記錄向上追溯(由於數據量太大,只追溯一部分),得到的關係圖如下。
如此複雜的圖已經很難從中找到關係了。。。。希望大牛給出一個解決方案
為了降低難度,簡化問題。現只對id為f25d1ab85c889d601f3981c7bd3d33c55e91ec549cf46d69104bbef30361c81e的交易記錄進行追溯,並且只沿第一個輸入賬戶向上追溯,即只把第一個輸入賬戶的前一個交易塊作為追溯路徑,而不對其他輸入項進行追溯,這樣會減少節點規模。共提取184筆交易,涉及賬戶5446個,有一筆交易是來源於挖礦3437518aef70276e2b0101d7556e436a4cb00fc4dda6b5db9822b9aafb91be52。
上圖為根據上述數據繪製的交易關係全局圖,可以看到雖然經過了一定的簡化,依舊形成了複雜的圖。
局部放大圖可以看到很多綠點連接同一個紅點形成樹狀結構,這代表同一筆交易由多個賬戶共同完成。
紅點為交易記錄塊,綠點為錢包,藍線為轉出,橙線的轉入,這樣我們就可以得到一條如上圖所示的資金流向圖。
寫在最後
由於wannacry的三個賬戶並沒有發生任何的轉出行為,所以不能順著資金的下游流向來進行分析,這是本文的遺憾之處。而對於比特幣賬戶的匿名性,並不能確保在任何時候均有效,在本次勒索軟體事件發生後,一些數據分析師則表示比特幣在一定情況下是可以追溯的,只是需要更多的數據和成本來完成。大數據時代,只要有行為發生就會被記錄,通過不同渠道來源的數據匯合分析後,也許就會破除數據的匿名性。
*本文原創作者:追影人,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
※改造Nginx,讓郵件系統也支持雙因子驗證
※看個視頻也被黑?載入字幕文件觸發播放器漏洞實現系統入侵
※看我如何發現Twitter任意賬戶發送推文漏洞並獲得7560美元賞金
TAG:FreeBuf |
※[圖]不亞於WannaCry:微軟面向Windows XP發布緊急修復補丁
※Windows RDP服務蠕蟲級漏洞預警 堪比WannaCry
※去年的WannaCrypt,帶給我們什麼啟示
※美一企業銷售武器化BlueKeep漏洞利用 或再現WannaCry噩夢
※淺談WannaCry勒索病毒的分析及防禦
※「WannaCry英雄」最終被判監督釋放
※比特幣勒索病毒WannaCry一周年了,下一波如果再來你準備好了嗎
※台積電感染的可能是勒索軟體 WannaCry
※又有人打著WannaCry的幌子來嚇唬人了
※WannaCry蠕蟲一周年,勒索病毒狼煙四起
※WannaCry捲土重來,波音部分系統遭入侵
※「WannaCry」一周年記:移動端勒索病毒如今會「討價還價」
※一年過去了 波音居然還能被WannaCry攻擊?
※WannaCry陰魂不散 仍然是最流行的勒索軟體
※卡巴斯基實驗室:WannaCry仍在亞洲活躍
※WannaCry周年紀——新一代網路攻擊的曙光
※波音一飛機工廠遭WannaCry勒索軟體攻擊
※網路釣魚騙局 聲稱WannaCry歸來,要求交付贖金
※再談Wannacry,安全狗CEO陳奮道出網路安全新時代三大特徵
※勒索病毒WannaCry仍然潛藏在世界各地的電腦上