亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用API調用分析惡意軟件

發布時間:2022-02-19 13:45:15 來源:億速云 閱讀:322 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“如何使用API調用分析惡意軟件”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何使用API調用分析惡意軟件”這篇文章吧。

我們發現有越來越多的惡意軟件開始使用各種加密、封裝和加殼等保護技術來對惡意代碼進行混淆處理,以防止系統或程序對其進行識別。除此之外,這些技術甚至還會讓研究人員對其的靜態分析變得更加困難。雖然越來越多的惡意軟件開發人員開始使用這種保護性的加殼技術,但這也直接導致了另一種惡意軟件分析方法的誕生。

如何使用API調用分析惡意軟件

其中的一種分析方法,就是通過分析惡意代碼中負責告訴系統如何執行特定操作的API調用以及控制命令。在這種方法中,我們不需要對已加殼的文件進行逆向分析,因為我們只需要對惡意代碼所執行的API調用來進行動態分析,就可以知道某個特定文件具體的功能了。通過這樣的方法(分析API調用),我們可以確定一個文件是否具有惡意性,而有些API調用只有某些特殊類型的惡意軟件才會去使用。比如說,常用的惡意Payload下載API是URLDownloadToFile,而GetWindowDC這個API一般用于間諜軟件或鍵盤記錄器等惡意工具(用于屏幕截取)。

接下來,我們會對一個惡意軟件樣本進行分析,并給大家介紹這項技術的實現方法。

木馬樣本

我們所要分析的惡意軟件樣本是一個名叫1.exe的著名木馬,它的SHA256如下:0213b36ee85a301b88c26e180f821104d5371410ab4390803eaa39fac1553c4c

如何使用API調用分析惡意軟件

這個文件是加了殼的(VMProtect),所以我們就很難使用反編譯工具來對其進行分析了。由于我個人并不擅長逆向工程分析,因此我打算通過分析該文件在沙盒環境的執行過程中的API調用來了解它的行為。

下面這張圖片中,顯示的是我們通過觀察它在沙盒環境中的運行情況所得到的API調用列表:

如何使用API調用分析惡意軟件

首先,我們來看一看這些函數到底有什么作用。其中有部分函數可以在微軟的網站中找到相關內容:

GetModuleHandle函數

為特定模塊獲取模塊處理器,該模塊必須在調用進程中被加載。GetModuleHandleA (ANSI)

GetProcAddress函數

獲取一個輸出函數的地址,或從指定的動態鏈接庫(DLL)獲取變量。

_wtoi

將一個字符串轉換成整型

CreateStreamOnHGlobal函數

這個函數將創建一個流對象,該對象可以使用一個HGLOBAL內存處理器來存儲流內容。

StrStr函數

查找字符串中出現的第一個子字符串,匹配是大小寫敏感的。StrStrA(ANSI)

wsprintf函數

向特定的緩沖區中寫入格式化數據,可根據相應的格式化字符串標準向輸出緩沖區中寫入任意參數。wsprintfA (ANSI)

WinHttpOpen函數

該函數可以初始化WinHTTP函數并返回一個WinHTTP-session處理器。

GetModuleFileName函數

獲取包含指定模塊的文件的完整路徑,該模塊必須在當前的調用進程中被加載。GetModuleFileNameW (Unicode)

LoadLibrary函數

向調用進程的地址空間加載特定模塊,該模塊可能還會加載其他的模塊。LoadLibraryA (ANSI)

LocalAlloc函數

向堆內存中分配指定大小的字節。

LocalFree函數

釋放指定的本地內存對象,并初始化該對象的處理器。

GetModuleFileName函數

獲取包含指定模塊的文件的完整路徑,該模塊必須在當前調用進程中被加載。GetModuleFileNameA (ANSI)

ExitProcess函數

終止調用進程以及所有相關的線程。

關鍵的惡意識別指標

需要注意的是,上面給出的所有函數并非都能夠之別標明某個可執行程序的真實作用。但是針對WinHttpOpen的調用可以告訴我們這個應用是有特殊目的的。

那我們就可以從這個函數下手,我們使用URL Revealer(Kahu Security)來檢測流量的目的地,并發現了兩個該惡意應用會不斷嘗試連接的URL地址。

?

GET http://twitter.com/pidoras6

POST http://www.virustotal.com/vtapi/v2/file/scan

注:當我們向VirusTotalAPI提交一個文件來進行掃描時,最好提交這種形式的POST

上面這個鏈接指向的是一個已失效的Twitter地址,當我使用Twitter的高級搜索功能進行查找時,我發現這條推文早就已經被刪除了。

如何使用API調用分析惡意軟件

通過Base64解碼之后我們得到了這條推文的原始內容:https://w0rm.in/join/join.php。但不幸的是,這個網站已經無法解析了,但這個網站原本是一個專門提供網站入侵服務的地下站點。不過需要注意的是,這個Twitter賬號目前仍然是活躍的。

由此看來,我們就沒辦法弄清楚這個惡意軟件想要利用GET請求來做什么了。但是我們可以用其他的方法搞清楚它想用VirusTotal來掃描什么東西?下面是我們使用WireShark所捕捉到的數據包:

如何使用API調用分析惡意軟件

在這個數據包中,你可以看到惡意軟件用來在VirusTotal網站上掃描文件的API密鑰以及文件名。所以,通過對API調用和數據包進行重構,我們發現這款惡意軟件會向VirusTotal提交自己的拷貝版本,即惡意軟件副本,而這正好是Vflooder木馬家族的典型行為。Vflooder是一種特殊類型的Flooder木馬,而Flooder木馬可以向目標發送大量的信息來中斷目標的正常操作。但是我認為VirusTotal可能無法檢測到這種惡意軟件威脅。

以上是“如何使用API調用分析惡意軟件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

api
AI

锡林郭勒盟| 许昌市| 乌拉特中旗| 南木林县| 怀仁县| 大宁县| 六安市| 友谊县| 乌拉特中旗| 玉溪市| 万年县| 丰台区| 屏南县| 呈贡县| 基隆市| 枞阳县| 修武县| 甘谷县| 成安县| 乐陵市| 巴东县| 甘泉县| 古浪县| 崇礼县| 敦化市| 波密县| 韩城市| 昆明市| 南乐县| 东至县| 满城县| 都安| 册亨县| 来凤县| 舟山市| 南靖县| 曲沃县| 彭山县| 闽清县| 临夏市| 樟树市|