Petya勒索蠕蟲完全分析報告
目錄
第一章 前言
第二章 Petya老樣本簡介
第三章 Petya新樣本詳細介紹
第四章 Petya勒索蠕蟲感染傳播趨勢分析
第五章 Petya橫向移動及傳播技術分析
1. 提升許可權,設置執行標記
2. MBR修改
3. 設置重啟計劃任務
4. 遍歷IP
5. 釋放並運行資源
6. 枚舉網路資源
7. 使用永恆之藍漏洞攻擊
8. 文件加密
9. 清除日誌並重啟
第六章 Petya勒索加密技術分析
1. 篡改MBR
2. 加密文件
第七章 Petya勒索殺毒軟體攻防分析
第八章 總結
第一章 前言
2017年6月27日晚,烏克蘭、俄羅斯、印度、西班牙、法國、英國以及歐洲多國遭受大規模Petya勒索病毒襲擊,該病毒遠程鎖定設備,然後索要贖金。其中,烏克蘭地區受災最為嚴重,政府、銀行、電力系統、通訊系統、企業以及機場都不同程度的受到了影響,包括首都基輔的鮑里斯波爾國際機場(Boryspil International Airport)、烏克蘭國家儲蓄銀行(Oschadbank)、船舶公司(AP Moller-Maersk)、俄羅斯石油公司(Rosneft)和烏克蘭一些商業銀行以及部分私人公司、零售企業和政府系統都遭到了攻擊。
此次黑客使用的是Petya勒索病毒的變種,使用的傳播攻擊形式和WannaCry類似,但該病毒除了使用了永恆之藍(MS17-010)漏洞,還罕見的使用了黑客的橫向滲透攻擊技術。在勒索技術方面與WannaCry等勒索軟體不同之處在於,Petya木馬主要通過加密硬碟驅動器主文件表(MFT),使主引導記錄(MBR)不可操作,通過佔用物理磁碟上的文件名、大小和位置的信息來限制對完整系統的訪問,從而讓電腦無法啟動,故而其影響更加嚴重。如果想要恢復,需要支付價值相當於300美元的比特幣。
由於這次攻擊有很強的定向性,所以目前歐洲被感染的受害者較多。目前國內感染量較少,但是考慮到其橫向攻擊傳播能力,未來存在較高風險在國內傳播。
第二章 Petya老樣本簡介
2016年4月,敲詐勒索類木馬Petya被安全廠商曝光,被稱作是第一個將敲詐和修改MBR合二為一的惡意木馬。木馬Petya的主要特點是會先修改系統MBR引導扇區,強制重啟後執行MBR引導扇區中的惡意代碼,加密受害者硬碟數據後顯示敲詐信息,並通過Tor匿名網路索取比特幣。
Petya與其他流行的勒索軟體的不同點在於,Petya不是逐個加密文件,而是通過攻擊磁碟上的低級結構來拒絕用戶訪問完整的系統。這個敲詐勒索木馬的作者不僅創建了自己的引導載入程序,還創建了一個32個扇區長的小內核。
Petya的木馬釋放器會將惡意代碼寫入磁碟的開頭。被感染的系統的主引導記錄(MBR)將被載入一個小型惡意內核的自定義引導載入程序覆蓋,然後該內核會進一步加密。 Petya的敲詐信息顯示其加密了整個磁碟,但這只是木馬作者放出的煙霧彈,事實上,Petya只是加密了主文件表(MFT),使文件系統不可讀,來拒絕用戶訪問完整的系統。
圖 1 Petya的敲詐信息
第三章 Petya新樣本詳細介紹
病毒樣本類型為DLL,有一個導出序號為1的函數。當這個函數被調用時,首先嘗試提升當前進程的許可權並設置標記,查找是否有指定的安全軟體,後面會根據是否存在指定的安全軟體跳過相應的流程。繞過安全軟體的行為監控。
接下來修改磁碟的MBR,並將生成的Key,IV,比特幣支付地址以及用戶序列號寫入磁碟的固定扇區。然後創建計劃任務於1小時後重啟。遍歷區域網可以連通的ip列表,用於後續的區域網攻擊。釋放並執行抓取密碼的進程,釋放psexec進程用於後續執行遠程命令。對系統的網路資源列表進行過濾,篩選本地保存的憑據,使用保存的憑據連接,成功後執行遠程命令,進行區域網感染。
下一步生成隨機ip,連接445埠進行永恆之藍漏洞攻擊。然後遍歷磁碟,對指定擴展名的文件進行加密。執行完所有流程後,清除日誌並強行重啟。
圖 2總體流程圖
第四章 Petya勒索蠕蟲感染傳播趨勢分析
自6月27日在歐洲爆發的起,Petya勒索病毒在短時間內襲擊了多國。
根據360互聯網安全中心的監測,對每一個小時的遠程攻擊進程的主防攔截進行了統計。從6月28號0點至6月28日晚上7點整,平均每小時攻擊峰值在5000次以內。上午10點攻擊攔截達到最高峰,後緩慢波動,在14點達到一個小高峰,然後攻擊頻率開始緩慢下降。由此可見,Petya的攻擊趨勢在國內並不呈現幾何級增長的趨勢,而是緩慢下降的,並不具備進一步泛濫的趨勢。
圖 3 攻擊頻率
除烏克蘭、俄羅斯、印度、西班牙、法國、英國以及歐洲多國遭受大規模的Petya攻擊外,我國也遭受了同樣的攻擊。針對我國的攻擊,主要集中在北京、上海、廣州、深圳、香港等大城市,根據360互聯網安全中心的監測,在全中國八十多個城市攔截到了攻擊。
第五章 Petya橫向移動及傳播技術分析
1. 提升許可權,設置執行標記
首先,Petya病毒會嘗試提升當前進程的3種許可權:SeShutdownPrivilege、SeDebugPrivilege和SeTcbPrivilege,根據是否成功設置標記,後面執行相應的流程時會判斷此標記,以防沒有許可權時系統報錯。
然後,通過CreateToolhelp32Snapshot枚舉系統進程,判斷是否有指定的安全軟體,並設置標記。
枚舉過程中,通過將進程名稱進行異或計算得出一個值,將該值與預設的值進行比較,此處病毒是在尋找特定名稱的進程,通過對演算法進行逆向還原,我們找出預設值對應的進程名稱和殺毒軟體:
| 進程名稱
| 殺毒軟體
|
| —- | —- |
|
0x2E214B44:
**avp
.
**
exe
|卡巴斯基
||
0x651B3005:
**NS
.
**
exe
|諾頓
||
0
**x6403527e: ccSvcHst
.
exe
** |諾頓
|當存在NS.exe(諾頓)或ccSvcHst.exe(諾頓)進程時,不執行漏洞感染流程。
當存在avp.exe(卡巴斯基)進程時,不執行MBR感染流程。
2. MBR修改
獲取分區類型,當為MBR格式時執行修改MBR流程。
隨後,Petya將修改機器的MBR,具體流程如下:
l 通過微軟的CryptoAPI生成長度為 60 位元組的隨機數
l 對生成的隨機數對58進行取模,取模後的值作為下述數組的索引
123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz,生成勒索界面顯示的序列號
l 將病毒內置的MBR寫入,長度為0x13個扇區
l 將隨機生成的key,IV,硬編碼的比特幣支付地址以及用戶序列號寫入磁碟第0x20個扇區
3. 設置重啟計劃任務
創建計劃任務,設定當前時間1小時後重啟計算機。
重啟之後將執行病毒的MBR,加密扇區。
4. 遍歷IP
首先,Petya檢查被感染的機器是否為Server或者域控伺服器
當檢測到主機為伺服器或者域控時,會枚舉該主機DHCP已分配的IP信息,保存在列表中用於網路攻擊。
5. 釋放並運行資源
進程首先從資源中解壓縮ID為1的資源,在系統的%TEMP%目錄下生成一個臨時文件。
隨後程序啟動線程嘗試連接特定的命名管道並讀取數據,隨後將該臨時文件作為進程啟動,並且等待1分鐘。
對啟動的臨時文件進行分析,其代碼功能與mimikatz,一款Windows下抓取密碼的工具類似,Petya通過命名管道從該工具進程中獲取本機賬戶密碼。
之後程序載入資源序號3並且解壓縮,首先獲取系統文件夾目錄,若失敗則獲取%APPDATA%目錄,並將解壓後的資源命名為dllhost.dat寫入到該目錄下。
dllhost.dat的本質為PsExec.exe,是一款屬於sysinternals套件的遠程命令執行工具,帶有合法的簽名。
6. 枚舉網路資源
接下來,病毒遍歷所有連接過的網路資源,從中篩選類型為TERMSRV的憑據保存。
接下來嘗試使用保存的憑據連接網路資源
連接成功則執行下列命令:
該命令將在目標主機上執行rundll32。exe調用自身dll的第1個導出函數,完成區域網感染功能。
7. 使用永恆之藍漏洞攻擊
接下來,啟動線程進行永恆之藍漏洞攻擊。
病毒使用異或的方式加密了部分數據包,在內存中重構後發送數據包,這樣就避免了殺毒軟體的靜態查殺。
8. 文件加密
Petya採用RSA2048 + AES128的方式對文件進行加密,程序中硬編碼RSA公鑰文件,每一個盤符會生成一個AES128的會話密鑰,該盤符所有文件均對該AES Key進行加密。
9. 清除日誌並重啟
執行完加密文件和網路傳播流程後,病毒將清除Windows系統日誌並強制重啟。重啟後將執行病毒寫入的MBR並加密磁碟。加密完成後顯示勒索信息並等待用戶輸入key。
第六章 Petya勒索加密技術分析
1. 篡改MBR
當系統重啟後,執行病毒的MBR,偽裝成CHKDSK進行加密磁碟,加密完成後彈出敲詐信息對用戶進行敲詐。
圖 4 Petya敲詐信息
下面,我們來對修改後的MBR進行分析:
l 讀取第20個扇區判斷是否已經加密,執行相應流程
l 加密流程,讀取病毒配置信息, 病毒加密用的key存在第0x20個扇區
l 設置已經加密的標誌位,並把配置信息中的key清0, 寫回磁碟第20扇區
l 使用用戶輸入的key嘗試解密
2. 加密文件
勒索木馬Petya採用RSA2048 + AES128的方式對文件進行加密,程序中硬編碼RSA公鑰文件,針對每一個盤符都會生成一個AES128的會話密鑰,該盤符所有文件均對該AES Key進行加密。
根據後綴名對相關文件進行分類,涉及的文件格式如下表:
Petya的加密流程如下圖:
圖 5 加密流程
1. 啟動加密文件線程:
2. 遞歸枚舉目錄並加密
3. 寫入Readme .txt文件
Readme .txt文件中包含比特幣支付地址。
第七章 Petya勒索殺毒軟體攻防分析
在提權階段,Petya會通過CreateToolhelp32Snapshot枚舉系統進程,判斷是否有指定的安全軟體,並設置標記。枚舉過程中,通過將進程名稱進行異或計算得出一個值,並將該值與預設的值進行比較,可見此處Petya是在尋找特定名稱的進程。
通過分析,我們確認Petya主要針對殺毒軟體諾頓和卡巴斯基進行了反檢測處理。
l 當存在NS.exe(諾頓)或ccSvcHst.exe(諾頓)進程時,不執行漏洞感染流程。
l 當存在avp.exe(卡巴斯基)進程時,不執行MBR感染流程。
第八章 緩解措施建議
針對Petya勒索軟體,360追日團隊提醒廣大用戶警惕防範,我們建議用戶採取以下措施以保障系統安全:
1. 保證系統的補丁已升級到最新,修復永恆之藍(ms17-010)漏洞。
2. 臨時關閉系統的WMI服務和刪除admin$共享,阻斷蠕蟲的橫向傳播方式。具體操作為,右鍵cmd.exe」以管理員身份運行」,輸入如下命令:
net stop winmgmt
net share admin$ /delete
3. 如若不幸中招,也可以採取一些措施來減小損失。
由於在感染Petya的過程中,病毒會先重啟電腦載入惡意的磁碟主引導記錄(MBR)來加密文件,這中間會啟用一個偽造的載入界面。中招者如果能感知到重啟異常,在引導界面啟動系統前關機或拔掉電源,隨後可以通過設置U盤或光碟第一順序啟動PE系統,使用PE系統修復MBR或者直接轉移硬碟里的數據,可以在一定程度上避免文件的損失。
第九章 總結
Petya勒索病毒早已被安全廠商披露,而此次Petya捲土重來,肆虐歐洲大陸在於其利用了已知的OFFICE漏洞、永恆之藍SMB漏洞、區域網感染等網路自我複製技術,使得病毒可以在短時間內呈暴發態勢。另一方面,Petya木馬主要通過加密硬碟驅動器主文件表(MFT),使主引導記錄(MBR)不可操作,通過佔用物理磁碟上的文件名、大小和位置的信息來限制對完整系統的訪問,從而讓電腦無法啟動,相較普通勒索軟體對系統更具破壞性。
自5月份WannaCry勒索病毒爆發後,中國用戶已經安裝了上述漏洞的補丁,同時360安全衛士具備此次黑客橫向攻擊的主動防禦攔截技術,故而並沒有為Petya勒索病毒的泛濫傳播提供可乘之機。
* 本文作者:360追日團隊,轉載請註明來自FreeBuf.COM


※深入分析一波,你們說的雲安全到底是什麼鬼?
※Wolf CMS 新舊兩個版本中的文件上傳漏洞分析
※VLC播放器載入惡意字幕文件導致執行任意代碼漏洞分析與POC實現
※黑產大數據:手機黑卡調查
※挖洞經驗|雅虎小企業服務平台Luminate身份認證漏洞
TAG:FreeBuf |
※JbossMiner 挖礦蠕蟲分析
※WMAMiner挖礦蠕蟲分析
※Windows RDP服務蠕蟲級漏洞預警 堪比WannaCry
※Bondat蠕蟲再度活躍 聯手GandCrab3勒索病毒危害升級
※2017年信息安全熱點事件及分析—WannaCry蠕蟲式勒索病毒席捲全球
※每周資訊黑客可利用iTunea Wi-Fi同步功能接管你的iPhone;Bondat蠕蟲……
※安全狗軟體可默認攔截PhotoMiner新型蠕蟲
※WannaCry蠕蟲一周年,勒索病毒狼煙四起
※警惕!新型RDP爆破蠕蟲Morto來襲
※WannaMine蠕蟲病毒進一步侵食著大公司的系統
※美國政府最新技術警報:警惕朝鮮黑客組織Hidden Cobra正在使用的兩款RAT和蠕蟲病毒
※蠕蟲病毒「Worm/Sharp」通過「永恆之藍」漏洞在全網傳播
※Bondat蠕蟲再度來襲!控制PC構建挖礦殭屍網路
※SpaceX獵鷹或將攜帶3.6萬蠕蟲登陸空間站;蘋果分析師透露AirPoda半年內迎來升級
※殭屍網路 Muhstik 正在積極利用 Drupal 漏洞 CVE-2018-7600 蠕蟲式傳播
※現役運力最強火箭 SpaceX「重型獵鷹」首飛成功;數千 Android 設備感染挖礦蠕蟲病毒| 極客早知道
※全新「Lucky蠕蟲」爆發:專門感染魔獸地圖
※美國科學家瘋了?NASA讓SpaceX運送3.6萬條蠕蟲上天
※安卓平台挖礦蠕蟲ADB.Miner勃然而興,中韓兩國成為重災區
※SpaceX火箭將再次發射:3.6萬蠕蟲登上空間站