遠端訪問木馬判斷滑鼠是否活動來逃避檢測

2022-09-22 19:36:10 字數 2077 閱讀 4676

惡意軟體開發者繼續部署「聰明的」防護程式,這些程式通過隱藏在作業系統例程後面來躲避自動檢測,但與此同時,惡意軟體用於保持隱蔽的相同方法也可能用於標記出惡意**。

賽門鐵克研究人員最近發現了一種遠端訪問木馬(rat),這種木馬能夠通過隱藏在與外部裝置(例如滑鼠)通訊的例程背後來逃避檢測,它能夠逃避檢測是因為:當滑鼠不使用時,惡意**保持非活動狀態,這樣就能夠逃避虛擬環境中動態分析系統的檢查。

賽門鐵克的hiroshi shinotsuka寫道:「如果惡意軟體能夠躲過自動威脅分析系統的檢查,它就可以混在數百萬的示例檔案中,這樣防病毒應用將無法發現它是惡意軟體。因此,惡意軟體和包裝程式作者都試圖利用這種技術,來使惡意檔案逃避自動威脅分析系統的檢測。」

shinotsuka解釋說,此型別惡意軟體逃避檢測能力的關鍵在於利用系統範圍內的「掛鉤」,即訊息處理機制,該機制允許滑鼠驅動程式等應用安裝乙個子例程來監測等待被啟用的系統訊息流量。賽門鐵克發現的這個惡意軟體利用了乙個「等待掛鉤」,在使用滑鼠導致的啟用之前,它都保持休眠狀態。

knos專案聯合創始人兼架構師kevin mcale**ey表示:「問題是,惡意軟體開發者利用各種系統「掛鉤」已經多年,動態分析系統應該早就設計好彌補這個威脅檢測中的盲點。賽門鐵克所指的系統範圍內的掛鉤早已過時,自動分析系統早就應該進行檢測,同時檢測合法程式試圖對任何掛鉤的使用。」自2023年以來,mcale**ey就一直活躍在反惡意軟體研究和安全產品開發。

這個問題歸結到底是人力資源的問題。由於每天平均出現一百萬個新惡意軟體變種,我們不可能手動檢查每個樣本的功能以評估哪個樣本應該被放入防病毒軟體進行分析,所以,我們需要自動化威脅分析系統來以更有效地方式來分析**行為。

由於自動檢測可能無法識別像賽門鐵克發現的rat這樣的惡意軟體,mcale**ey認為,任何使用「掛鉤」的應用都應該被標記,並進行手動分析,但目前防毒行業已經不堪重負,具有惡意軟體分析專業技能的人員十分短缺,他們根本沒有時間來手動分析這些**,因此這不可能實現。

微軟公開發布的msdn文件中詳細地列明了各種「可掛鉤」windows事件。例如,mcale**ey指出了有「等待掛鉤」的各種事件,惡意軟體設計者可以用它們中任何乙個啟用以下**:

• wh_callwndproc -等待特定訊息從乙個視窗傳遞到另乙個視窗

• wh_cbt –這很過時了,它支援「計算機輔助培訓」,並被用於擊鍵記錄/回放巨集

• wh_getmessage –檢索滑鼠、鍵盤或者任何其他系統輸入

• wh_keyboard –鍵盤掛鉤,鍵盤記錄器的首選攻擊因子

• wh_mouse –滑鼠掛鉤,賽門鐵克指的就是這個

• wh_msgfilter –檢測對按鈕、選單或者其他windows功能的觸動

• wh_debug –可能觸發偵錯程式的任何溢位

mcale**ey解釋說,上面列出「掛鉤」函式只是少數可供利用的「除錯」函式,例如能夠檢測機器是否在虛擬模式下執行,檢查防病毒軟體是否為了檢測插入其自己的掛鉤,以及是否徹底檢測到轉移程式到獨立的惡意dll以控制病毒感染。wh_debug掛鉤控制對所有對其他wh掛鉤的訪問,並能中斷任何其他掛鉤,(例如)檢查這些掛鉤是否應該繼續或者採取其他行動來取代原有函式。這也是惡意軟體如何檢測防病毒軟體是否正在監控其他掛鉤,如果是這樣的話,就能夠逃避檢測。

mcale**ey認為微軟除錯函式的問題出現在零售版本的作業系統中。微軟已經提供了其所有作業系統的開發者版本,其中包含大量除錯功能和除錯符號以用於為windows平台編寫軟體,所以這些函式不必出現在零售版本中。結果是,微軟的除錯函式總是被惡意軟體用來隱藏自己。分析師做的第一件事情是檢查任何樣本的函式呼叫,以檢測是否有任何除錯呼叫,然後仔細地跟蹤它們。讓我非常驚訝的是,自動系統沒有對另乙個除錯呼叫做出任何標記。」

由於每個除錯功能都是被列舉,並列在所有可執行檔案中,任何自動系統應該可以很容易地在提交的樣本中發現它們的存在並採取行動。對程式中除錯掛鉤的任何呼叫都會讓呼叫在程式本身中變得可見,所以任何自動分析系統都可能發現對setwindowshookex的呼叫,並標記它以進一步分析。這些呼叫沒有隱藏,它們在被分析的樣本中,因此,所有自動系統需要做的是,在掃瞄檔案時匹配字元。

mcale**ey說:「我們長久以來忽略它們的存在,這似乎有些違反常識。在沒有特定理由的情況下,合法軟體不應該會進行這種除錯呼叫,當檢測到這種函式時,應該立即對未知可執行檔案進行標記,直到證明其『清白』之前,都應該保持標記。」

快速判斷遠端主機是否活動

本來my是vb.net的專利,my帶給訪問一些基本資源的方便快捷,c 沒有這個.下面就來在c 中使用my的功能.先把程式集using microsoft.visualbasic加到自己的專案中來,然後在需要使用的檔案加上空間引用 using microsoft.visualbasic.compile...

njRAT遠端訪問木馬協議分析

請求報文都相同,以下的型別是按響應報文劃分的,共有3種。一 請求報文 lv 猜測是代表建立連線,這裡還有多種動作,後面會有說明 vhjvamfux0m0nky2rtk 是base64編碼,解碼後為trojan c46f6e9,trojan只是名字,c46f6e9代表卷的序列號 mark 計算機名 u...

ubuntu檢測滑鼠鍵盤是否活動

在ubuntu系統,一切皆檔案的哲學思想,很容易讓我們想到,要檢測滑鼠鍵盤是否活動,主要方法是找到滑鼠和鍵盤對應的裝置檔案。通過檢測裝置檔案是否修改,以達到檢測滑鼠和鍵盤是否活動的目的。經過查詢,發現滑鼠和鍵盤對應的裝置檔案,位於目錄 dev input 我們只需要監視此目錄下的檔案是否被修改,就可...