0x00 前言
在滲透測試中,我們經常會碰到windows虛擬機,這些虛擬機往往會安裝VMware Tools,利用VMware Tools的腳本執行功能可以實現一個開機自啟動的后門。
關于這項技術的文章:
https://bohops.com/2021/10/08/analyzing-and-detecting-a-vmtools-persistence-technique/
https://www.hexacorn.com/blog/2017/01/14/beyond-good-ol-run-key-part-53/
本文將要在參考資料的基礎上,分析利用思路,給出防御建議。
0x01 簡介
本文將要介紹以下內容:
- 利用思路
- 利用分析
- 防御建議
0x02 利用思路
VMware Tools的腳本執行功能支持在以下四種狀態時運行:
- power,開機狀態
- resume,恢復狀態
- suspend,掛起狀態
- shutdown,關機狀態
可以選擇以下兩種方法進行配置腳本執行的功能:
1.使用VMwareToolboxCmd.exe
默認安裝路徑:"C:Program FilesVMwareVMware ToolsVMwareToolboxCmd.exe"
命令示例1:
"C:Program FilesVMwareVMware ToolsVMwareToolboxCmd.exe" script power enable
命令執行后,將在默認安裝路徑下創建文件C:ProgramDataVMwareVMware Toolstools.conf,內容為:
[powerops]
poweron-script=poweron-vm-default.bat
實現效果:
當系統開機時,將會以System權限執行"C:Program FilesVMwareVMware Toolspoweron-vm-default.bat"
注:
對于power命令,只能是開機操作,重啟操作無法觸發
命令示例2:
"C:Program FilesVMwareVMware ToolsVMwareToolboxCmd.exe" script suspend set "c:test1.bat"
命令執行后,將在默認安裝路徑下創建文件C:ProgramDataVMwareVMware Toolstools.conf,內容為:
[powerops]
suspend-script=c:\test\1.bat
實現效果:
當系統進入掛起狀態時,將會以System權限執行"c:test1.bat"
2.使用tools.conf
直接創建文件C:ProgramDataVMwareVMware Toolstools.conf
文件內容示例:
[powerops]
poweron-script=poweron-vm-default.bat
suspend-script=c:\test\1.bat
實現效果:
當系統開機時,將會以System權限執行"C:Program FilesVMwareVMware Toolspoweron-vm-default.bat",當系統進入掛起狀態時,將會以System權限執行"c:test1.bat"
補充:
查看VMwareToolboxCmd.exe的幫助說明:
"C:Program FilesVMwareVMware ToolsVMwareToolboxCmd.exe" help
查看開機啟動腳本的默認路徑:
"C:Program FilesVMwareVMware ToolsVMwareToolboxCmd.exe" script power default
查看開機啟動腳本的當前路徑:
"C:Program FilesVMwareVMware ToolsVMwareToolboxCmd.exe" script power current
0x03 利用分析
創建文件C:ProgramDataVMwareVMware Toolstools.conf需要管理員權限
通過VMware Tools的腳本執行功能,啟動腳本的執行權限為System
為了提高隱蔽性,可以設置默認啟動腳本為poweron-vm-default.bat,在poweron-vm-default.bat添加通過rundll32加載dll的命令
0x04 防御檢測
默認配置下,VMware Tools不會開啟腳本執行功能,也就是說不存在文件C:ProgramDataVMwareVMware Toolstools.conf
1.識別腳本執行功能是否開啟
查看文件C:ProgramDataVMwareVMware Toolstools.conf的內容
如果文件不存在,代表腳本執行功能未開啟
2.識別腳本執行的內容
查看文件C:ProgramDataVMwareVMware Toolstools.conf的內容
如果未指明腳本文件的絕對路徑,腳本文件默認的絕對路徑為"C:Program FilesVMwareVMware Tools"
0x05 小結
本文分析了VMware Tools腳本執行功能的利用思路,給出防御建議。