當在 Disk 中或在 Memory 中抓到了一個惡意程式,可能會想要把它丟進 VirusTotal 網站去看是不是已知的惡意軟體,或者去分析它有 Drop 什麼檔案以及連接什麼 IP,但是有時候只看 VirusTotal 獲得到的資訊是不夠的,透過不同的分析網站比對可以獲得完整惡意程式資訊。
今天會分享包含 VirusTotal 在內的惡意軟體檢測與分析網站
連結:https://www.virustotal.com/gui/home/upload
VirusTotal 是一個線上服務,讓使用者可以上傳檔案、URL、Domain、IP 或 Hash 進行分析,以檢測是否含有惡意軟體、惡意連結、釣魚等威脅,VirusTotal 內把多個防毒引擎、網頁掃描器、威脅情報來源彙整在一起,並且裡面會跑沙箱獲得惡意程式行為
使用方式是在上方的搜尋欄輸入 Hash、IP、Domain,或至上傳頁面上傳惡意程式
這裡介紹一下 VirusTotal 分析完後提供的頁面資訊
這個頁面提供了多家的 antivirus 引擎的偵測結果,會顯示出辨識的惡意程式家族與標籤
這個頁面會列出惡意程式的大小、型態、雜湊,以及編譯、修改時間
PE 結構(Sections、Imports/Exports)、簽章資訊、字串等
這個頁面會列出惡意程式連線的 IP、Domain
以及執行惡意程式時產生的檔案
這裡會列出惡意程式跑在多種沙箱中的行為
當中會有 Network 的分析
當中也有檔案的操作,包含檔案開啟、修改、刪除、創建
Process 的創建以及 Command 的記錄
這個頁面大多數會有人分享其他惡意程式檢測平台的 Report
連結:https://any.run/
ANY.RUN 是一個互動式線上惡意程式沙箱,允許使用者在受控的虛擬環境中動態執行可疑檔案或網址,觀察其行為、網路活動、檔案/登錄表操作等等
如果要使用它的沙箱功能,就像 VirusTotal 一樣可以直接丟惡意程式進去分析的話,會需要先註冊帳戶,如果不想註冊的話,可以直接前往 https://app.any.run/submissions 並使用 Hash 查詢有沒有人之前丟過的惡意程式
假設我查詢 hash 為 ced525930c76834184b4e194077c8c4e7342b3323544365b714943519a0f92af
的惡意程式
然後點選其中一個,也可以進入到沙箱分析結果頁面
這邊介紹一下 Report 介面,首先可以先看右邊的功能列,功能包含你可以下載這個惡意程式,以及在惡意程式啟動時執行了什麼行為
如果想要詳細分析其中一個檔案,點擊他就會出現詳細訊息
點選 More Info 之後就會進入到這個程式的完整分析內容
這個頁面有一個很方便的功能,它會列出惡意程式行為的嚴重程度,假設我想要了解 T1053.005 Scheduled Task (1)
這個行為,並且想要知道它下的 Cmdline,可以點擊下方的 Uses Task Scheduler to run other applications
就會跳出視窗並顯示詳細內容
回到分析主頁,下方是顯示 Network 相關分析結果,也有看檔案操作的頁面
連結:https://bazaar.abuse.ch/browse/
MalwareBazaar 是由 abuse.ch 所運營的惡意軟體樣本分享平台,旨在讓資安研究人員、antivirus 廠商、威脅情報團隊能夠更容易地交換與取得惡意軟體樣本,如果有想要查詢的惡意程式可以來這個網站查
它有一個查詢的語法,需要照著它的語法不然會找不到
Search syntax is as follow: keyword:search_term
Following is a list of accepted keywords along with an example search_term
md5:1b109efade90ace7d953507adb1f1563
sha256:11b16ba733f2f4f10ac58021eecaf5668551a73e2a1acfae99745c50bfccbb44
signature:CobaltStrike
tag:TA505
file_type:rtf
user:malware_traffic
clamav:SecuriteInfo.com.Artemis1FBB04F6EAF7.17086.UNOFFICIAL
yara:win_asyncrat_j1
serial_number:51CD5393514F7ACE2B407C3DBFB09D8D
issuer_cn:Sectigo RSA Code Signing CA
imphash:756fdea446bc618b4804509775306c0d
tlsh:8DD484F440EF10A2F25F852936ADBE9401B2B1C7DBDA5E08137DE5311BBDA633A0564D
telfhash:52d0a7c198b4972c99e60578ed5c5bb29106216620070b20cf10a5d4d83b440f40db59
gimphash:b43f35a8610180bcb184238555a0858a6c160a2d872566e7e9633221308b34fd
dhash_icon:f8dcbeffbffecee8
假設我現在要查sha256 是ced525930c76834184b4e194077c8c4e7342b3323544365b714943519a0f92af
的惡意程式
這樣就成功找到了,首先會列出基本的訊息
這個網站不錯的地方是它會去整理各大惡意程式檢測平台的 Report,並列出來 Report 網址或者檢測結果
連結:https://malpedia.caad.fkie.fraunhofer.de/
Malpedia 是由 Fraunhofer FKIE所維運的一個「惡意軟體百科 + 參考樣本集」平台,惡意軟體家族百科與研究資源,提供家族描述、別名、已知樣本參考、YARA 規則、相關研究連結。
假設我們剛剛的 XWorm 惡意程式,可以直接在搜尋欄打上 XWorm
這些皆是針對於 XWorm 的研究,可以點進去參考
另外也可以尋找這是哪個組織發出來的,可以在 Family 頁面中搜尋 XWorm
點進去後可以看到這隻惡意程式相關的訊息,包含 Actor
那這邊就可以看到 Actor 是 Hive0137
點擊後可以看到該 Actor 的相關資訊
連結: https://tria.ge/reports/public
Triage 是由 Hatching 提供的線上惡意程式沙箱台,用來自動執行、分析可疑檔案並生成行為報告,協助安全分析師快速篩選與分類威脅樣本。
它可以像 VirusTotal 一樣上傳惡意程式並分析或者搜尋之前已經上傳過的惡意程式
搜尋的方式就是點選右上角的 Search 後也是可以用 Hash 搜尋
點進去後就會出現分析報告
而如果是要上傳惡意程式,需要先進行登入,登入後上面列的 Submit 是上傳惡意程式的頁面
上傳完後也會出現 Report 的頁面
Report 頁面有包含
這邊舉一個例子 CyberDefender IcedID
Q5 : Could you specify the threat actor linked to the sample provided?
在 VirusTotal 中沒有關於 threat actor 的線索,但它有偵測到惡意軟體的 Family 是 IcedID
因此可以去我們剛剛介紹到的 Malpedia 尋找相關線索
Q6 : In the Execution phase, what function does the malware employ to fetch extra payloads onto the system?
如果去 VirusTotal 看的話會找不太到答案是什麼,但是去 Triage 一下就看到了答案是 URLDownloadToFileA
今天介紹了幾個常用的惡意軟體檢測與分析平台,透過多平台分析找出惡意程式的行為與資訊,並且省去自行逆向的時間。