91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

在powershell腳本中隱藏數據的常見混淆方法有哪些

發布時間:2021-12-18 10:09:52 來源:億速云 閱讀:149 作者:小新 欄目:網絡安全

這篇文章將為大家詳細講解有關在powershell腳本中隱藏數據的常見混淆方法有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

在powershell中定義行為

在我們討論設計和概念之前,我們需要定義這個上下文中的“行為”,powershell是一種Microsoft腳本語言,powershell還解釋和執行本機Windows命令行、dotnet代碼。例如,powershell腳本中的以下三行都會產生相同的輸出,即使它們是三個不同的調用方法。

Get-Date # PowerShell cmdlet
date # Command-line native Windows application
[System.DateTime]::Now # dotNET

這種靈活性使得分析變得更加困難,因為我們需要解釋多種表達相同事物的方式。

當描述一個行為時,不一定是任何命令或命令的變體。舉例來說,“get-date” cmdlet可能會是“枚舉”行為,因為它正在檢索運行腳本主機系統相關的數據。類似地,也可以將dotnet類“new object system.net.webclient.downloadfile”分組為“downloader”行為,因為它將用于遠程檢索文件。

動態與靜態分析

腳本行為需要明確識別,但有時它們還不足以確定腳本是良性的還是惡意的。這些行為如何利用是決定的關鍵因素。那么我們如何推斷意圖呢?下面兩個示例,它們在表面上看起來很相似,并且表現出相同的以下行為:“downloader”、“sleeps”、“enumeration”和“one liner”。

在powershell腳本中隱藏數據的常見混淆方法有哪些

在powershell腳本中隱藏數據的常見混淆方法有哪些

在動態惡意軟件分析進入視野之前,靜態查看文件是確定樣本是否存在惡意行為的主要方法。隨著時間的推移和動態分析的發展,越來越多的行業轉向工具環境、產品和防御響應策略,圍繞惡意文件的動態特性而不是靜態屬性。動態分析提供了大量的信息,在這個過程中投入的資源、技術和時間大大減少,因此行為分析成為主導力量。

如果一個powershell腳本,該腳本下載并執行另一個腳本,枚舉系統信息,使用壓縮和大量base64,分析人員第一個想法可能是它是惡意的,因為這些是動態分析惡意軟件的日常行為。但在下圖示例中,它只是一個powershell腳本,用于顯示動畫。

在powershell腳本中隱藏數據的常見混淆方法有哪些

確定意圖

為了確定意圖,需要建立一個“基本事實”,并對腳本進行評分。為此,需要手動分析現實環境中的數千個良性和惡意powershell腳本,分別標記它們良性或惡意。當一個已知的惡意腳本低于設定的閾值時,需要把精力集中在提高其余樣本的準確性上。手動分類的過程可以接觸到所有可以想象到的腳本——各種各樣的管理腳本和引導腳本。

在對樣本集進行分類之后,能夠更加完美地解決意圖問題。在查看腳本并開始分析行為的過程中,還需要考慮行為的權重以及它和腳本的總體意圖的關系。

例如,只下載和執行可執行文件的腳本與相同行為但使用模糊處理且完全包含在一行的腳本相比,當它同時生成日志或代碼結構良好時,就不太可能是惡意的。類似地,一旦一個行為被識別出來,就可以觀察它在良性和惡意腳本中的分布。還需要觀察腳本中某些“罕見性”行為,并相應地調整評分權重。

識別重要的行為并找出如何對它們進行適當的評分是這個分析的核心。一旦行為被創建并分配分數,就可以創建一個風險梯度標度,我們可以將每個樣本映射到其中,并找到一個“最佳點”,開始進行更精細的調整。下面一個圖表描述了powershell腳本中用作靜態評分風險的準則等級。

在powershell腳本中隱藏數據的常見混淆方法有哪些

將惡意腳本的得分設定在6.0左右,低于這個臨界值,風險會降低。

需要考慮的事情

最后,需要考慮以下幾點:

PowerShell是一種非常靈活的語言。它提供了多種方法來調用相同的功能,最終無法靜態地捕獲所有內容,特別是在惡意腳本作者試圖規避檢測的情況下。有時會錯過一些識別行為指標,在這些情況下,策略上選擇了謹慎處理,允許這些惡意腳本得分低于閾值,而不是過分重視某些行為導致良性腳本得分過高。

在分析過程中的另一個現象是良性腳本通常是獨立的,因為它們是完全獨立的,可以在沒有參數或依賴關系的情況下運行;惡意腳本通常是一個大的難題中的一小部分,在拼圖中占有較小的一塊。

在powershell腳本中隱藏數據的常見混淆方法有哪些

無論在嘗試構建行為時腳本行為有多大或多小,當僅基于函數的行為失敗時,我仍然可以使用上下文(“invoke dllinjection”)關鍵字或元數據(如字符頻率分析)作為自己的行為模型來影響評分。

此外還需要考慮隱藏行為。因此,如果可以清楚地看到腳本內容中的惡意url,但無法識別它是如何從url下載負載的,那么仍然可以推斷該腳本有一個未知的下載行為。這些推斷的行為對于進一步的搜索和分析是一個很好的基礎。

關于“在powershell腳本中隱藏數據的常見混淆方法有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

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

AI

兰考县| 琼结县| 盘锦市| 会宁县| 安岳县| 通江县| 东宁县| 庆元县| 突泉县| 永靖县| 南漳县| 巴东县| 涞源县| 大方县| 克东县| 五家渠市| 确山县| 沧州市| 吉水县| 吉林市| 巫溪县| 德江县| 镶黄旗| 玉环县| 鹿邑县| 禹州市| 张家界市| 那曲县| 正镶白旗| 安丘市| 钦州市| 塔河县| 宝山区| 沁源县| 崇礼县| 调兵山市| 焉耆| 长泰县| 砀山县| 门头沟区| 江口县|