天天看點

内網滲透-域管理者定位Part1 内網域滲透基礎概念Part2 域管理者定位基礎Part3 域管理者手動定位Part4 自動化收集時常用的域管理者定位工具

内網滲透-域管理者定位Part1 内網域滲透基礎概念Part2 域管理者定位基礎Part3 域管理者手動定位Part4 自動化收集時常用的域管理者定位工具

目錄

Part1 内網域滲透基礎概念

1 什麼是域

1. 權限管理比較集中,管理成本降低

2. 保密性加強

3. 安全性加強

4. 提高了便捷性

2 域滲透思路

Part2 域管理者定位基礎

Part3 域管理者手動定位

Part4 自動化收集時常用的域管理者定位工具

SPN掃描

psloggedon.exe

PVEFindADUser.exe

netview.exe

Name的NSE腳本

PowerView.PS1腳本

Part1 内網域滲透基礎概念

1 什麼是域

将網絡中多台計算機邏輯上組織到一起,進行集中管理,這種差別于工作組的邏輯環境叫做域,域是組織與存儲資源的核心管理單元,在域中,至少有一台域控制器,域控制器中儲存着整個域的使用者帳号和安全資料庫。

那麼域網絡結構有什麼優點呢?域的優點主要有以下幾個方面:

1. 權限管理比較集中,管理成本降低

域環境中,所有的網絡資源,包括使用者均是在域控制器上維護的,便于集中管理,所有使用者隻要登入到域,均能在域内進行身份驗證,管理人員可以較好的管理計算機資源,管理網絡的成本大大降低;同時在域環境中也可以防止企業員工在域成員主機上違規安裝軟體,增強用戶端安全性,減少用戶端故障,降低維護成本。

2. 保密性加強

有利于企業的一些保密資料的管理,可以單獨對資源進行權限控制,允許或拒絕特定的域賬戶對資源的請求。

3. 安全性加強

使用漫遊賬戶和檔案夾重定向,個人賬戶的工作檔案及資料等可以存儲在伺服器上,進行統一備份及管理,使使用者的資料更加安全有保障;同時域控制器能夠分發應用程式、系統更新檔,使用者可以選擇安裝,也可以由系統管理者指派自動安裝,資料及系統安全性大大提高。

4. 提高了便捷性

可由管理者指派登陸腳本映射,使用者登入後就可以像使用本地盤符一樣,使用網絡上的資源,且不需要再次輸入密碼。

基于以上原因,很多企業的内網均會采用域環境,是以作為一名合格的滲透測試人員,域滲透的正常思路和技巧要熟練掌握。

2 域滲透思路

域滲透的思路就是:通過域成員主機,定位出域控制器IP及域管理者賬号,利用域成員主機作為跳闆,擴大滲透範圍,利用域管理者可以登陸域中任何成員主機的特性,定位出域管理者登陸過的主機IP,設法從域成員主機記憶體中dump出域管理者密碼,進而拿下域控制器、滲透整個内網。

而其中收集域以及域内使用者資訊主要是包括以下方面

- 收集域内域控制器資訊

- 收集域控上域使用者登入日志資訊

- 收集域内所有使用者名以及全名、備注等資訊

- 收集域内工作組資訊

- 收集域管理者帳号資訊

- 收集域内網段劃分資訊

- 收集域内組織機關資訊

是以今天我們就來詳細講一下如何完成域管理者的資訊收集及定位,講一些在資訊收集中,定位域管理者的小知識點。

Part2 域管理者定位基礎

在内網中,通常會部署大量的網絡安全系統和裝置,例如IDS、IPS、日志審計、安全網關、反病毒軟體等。在域網絡攻擊測試中,擷取域内的一個支點後,需要擷取域管理者權限。

在一個域中,當計算機加入域後,會預設給域管理者組賦予本地系統管理者權限。也就是說,當計算機被添加到域中,成為域的成員主機後,系統會自動将域管理者組添加到本地系統管理者組中是以域管理者組的成員均可通路本地計算機,且具備完全控制權限。

定位域内管理者的正常管道,一是日志,二是會話。日志是指本地機器的管理者日志,可以使用腳本或Wevtutil工具導出并檢視。會話是指域内每台機器的登入會話,可以使用netsess.exe或 PowerView 等工具查詢(可以名查詢,不需要權限)。

Part3 域管理者手動定位

而通過在域中任意機器上執行以下指令,可以手動逐漸定位域管理者。

net view /domain 檢視目前域名

net view /domain:域名 檢視域内部所有計算機名

net group /domain 檢視域内部所有使用者組清單

net group "domain computers" /domain 檢視所有域成員計算機清單

net accounts /domain 檢視域密碼資訊

nltest /domian_trusts 擷取域信任資訊

nltest /DCLIST:域名 檢視域控制器機器名

net time /domain 檢視目前時間,因為時間伺服器也是主域伺服器,可以看到域伺服器的機器名

net group "Domain Controllers" /domain 檢視域控制器組,因為可能有不止一台域控,有主備之分

net user /domain 查詢域内使用者,會看到熟悉的krbtgt使用者

wmic useraccount get /all 擷取域内使用者詳細資訊

dsquery user 檢視域記憶體在的使用者

net localgroup administrators 檢視本地管理者使用者組

net group "domain admins" /domain 查詢域管理者使用者
           

Part4 自動化收集時常用的域管理者定位工具

SPN掃描

不同于正常的tcp/udp端口掃描,由于spn本質就是正常的Kerberos請求,是以掃描是非常隐蔽,日前針對此類掃描的檢測暫時也比較少。

大部分win系統預設已自帶spn探測工具即:setspn.exe

此操作無需管理權限

域内機器執行

setspn -T 域名 -Q */*
           

即可完整查出目前域内所有spn。

psloggedon.exe

使用psloggedonexe,可以檢視本地登入的使用者和通過本地計算機或遠端計算機的資源登入的使用者。如果指定的是使用者名而不是計算機名,psloggedon.exe會搜尋網路上的芳鄰中的計算機,并顯示該使用者目前是否已經登入。其原理是通過檢查系統資料庫HKEY_USERS 項的key值來查詢誰登入過(需要調用NetSessionEnum API),但某些功能需要管理者權限才能使用。

内網滲透-域管理者定位Part1 内網域滲透基礎概念Part2 域管理者定位基礎Part3 域管理者手動定位Part4 自動化收集時常用的域管理者定位工具

常用參數有:

-:顯示支援的選項和用于輸出的機關
-1:僅顯示本地登入不顯示本地和網絡資源登入
-x:不顯示登入時間
\computer:指定要列出登入資訊的計算機名稱
username:指定使用者名,在網絡中搜尋該使用者登入的計算機
           

工具下載下傳位址:

https://docs.microsoft.com/zh-cn/sysinternals/downloads/psloggedon

PVEFindADUser.exe

PVEFindADUserexe可用于查找活動目錄使用者登入的位置、枚舉域使用者,以及查找在特定計算機上登入的使用者,包括本地使用者、通過RDP登入的使用者、用于運作服務和計劃任務的使用者。運作該工具的計算機需要配置NETFramework2.0環境,并且需要具有管理者權限。

内網滲透-域管理者定位Part1 内網域滲透基礎概念Part2 域管理者定位基礎Part3 域管理者手動定位Part4 自動化收集時常用的域管理者定位工具

常用參數有:

-h:顯示幫助資訊
-u:檢查程式是否有新版本
-current[“username”]:如果僅指定了-current參數,将擷取目标計算機上目前登入的所有使用者。如果指定了使用者名(Domain\Username),則顯示該使用者登入的計算機
-last[“username”]:如果僅指定了-last參數,将擷取目标計算機的最後一個登入使用者。如果指定了使用者名(Domain\Username),則顯示此使用者上次登入的計算機。根據網絡的安全政策,可能會隐藏最後一個登入使用者的使用者名,此時本工具無法得到該使用者名
-noping:阻止工具在嘗試擷取使用者登入資訊之前對目标計算機執行ping指令
-target:可選參數,用于指定要查詢的主機。如果未指定此參數,将查詢目前域中的所有主機。如果指定了此參數,則後跟一個有逗号分隔的主機名清單
           

工具下載下傳位址:

https://github.com/chrisdee/Tools/tree/master/AD/ADFindUsersLoggedOn

netview.exe

netview.exe 是一個枚舉工具,使用WinAPI枚舉系統、利用NetSessionEnum 找尋登入會話利用NetShareEnum 找尋共享,利用NerWkstaUserEnum 枚舉登入的使用者。同時,netview.exe 能夠查詢共享入口和有價值的使用者。絕大部分功能不需要管理者權限。

常用參數:

-f filename.txt:指定要提取主機名清單的檔案
-e filename.txt:指定要排除的主機名的檔案
-o filename.txt:将所有輸出重定向到指定檔案
-d domain:指定要提取主機清單的域。如果沒有指定,則從目前域中提取
-g group:指定搜尋的組名。如果沒有指定,則在Domain Admins組中搜尋
-c:對已找到的共享目錄/檔案的通路權限進行檢查
           

工具下載下傳位址:

https://github.com/mubix/netview

Name的NSE腳本

如果存在域賬戶或者本地賬戶就可以使用Nmap的smb-enum-sessions.nes引擎擷取遠端機器的登入會話。

常用參數:

smb-enum-domain:對域控制器進行資訊收集,可以擷取主機的資訊、使用者、可使用密碼政策的使用者等
smb-enum-users:在進行域滲透測試時,如果獲得了域内某台主機的權限,無法擷取更多的域使用者資訊,就可以借助這個腳本對域控制器進行掃描
smb-enum-shares:周遊遠端主機的共享目錄
smb-enum-processes:對主機的系統進行周遊。通過這些資訊,可以知道目标主機上正在運作哪些軟體。
smb-enum-sessions:擷取域内主機的使用者登入會話,檢視目前是否有使用者登入。
smb-os-discovery:收集目标主機的作業系統、計算機名、域名域林名稱、NetBIOS機器名、NetBIOS域名,工作組、系統時間等資訊
           

工具下載下傳位址:

htts://nmap.org/nsedoc/scripts/smb-enum-sessions.html

PowerView.PS1腳本

powerview腳本可以用來擷取目前域管理者線上登入的伺服器

Invoke-UserHunter:搜尋本地域中域管理者目前線上的主機,并驗證目前使用者是否具有對這些主機的本地管理者通路權限。它可以使用 Get-NetSessions 和Get-NetLoggedon 掃描每台伺服器并對掃描結果進行比較,進而找出目标使用者集,并且無需管理者權限。

打開powershell,進入腳本目錄,輸入Import-Module .\PowerView.ps1 導入腳本

然後輸入Invoke-UserHunter即可

詳細使用方法如下

Import-Module為powershell導入腳本指令,這裡假設我們下載下傳的powerview.ps1腳本在C:\PowerView.ps1
指令格式:powershell.exe -exec bypass -Command "& {Import-Module C:\PowerView.ps1; powerview的指令參數}"

定位域管理者
powershell.exe -exec bypass -Command "& {Import-Module C:\PowerView.ps1; Invoke-UserHunter}"

更多PowerView指令參數
Get-NetDomain: 擷取目前使用者所在域的名稱
Get-NetUser: 擷取所有使用者的詳細資訊
Get-NetDomainController: 擷取所有域控制器的資訊
Get-NetComputer: 擷取域内所有機器的詳細資訊
Get-NetOU: 擷取域中的OU資訊
Get-NetGroup: 擷取所有域内組群組成員資訊
Get-NetFileServer: 根據SPN擷取目前域使用的檔案伺服器資訊
Get-NetShare: 擷取目前域内所有網絡共享資訊
Get-NetSession: 擷取指定伺服器的會話
Get-NetRDPSession: 擷取指定伺服器的遠端連接配接
Get-NetProcess: 擷取遠端主機的程序
Get-UserEvent: 擷取指定使用者的日志
Get-ADObiect: 擷取活動目錄的對象
Get-NetGPO: 擷取域内所有的組政策對象
Get-DomainPolicy: 擷取域預設政策或域控制器政策
Invoke-UserHunter: 擷取域使用者登入的計算機資訊及該使用者是否有本地管理者權限
Invoke-ProcessHunter: 通過查詢域内所有的機器程序找到特定使用者
Invoke-UserEvenHunter: 根據使用者日志查詢某域使用者登入過哪些域機器。
           
内網滲透-域管理者定位Part1 内網域滲透基礎概念Part2 域管理者定位基礎Part3 域管理者手動定位Part4 自動化收集時常用的域管理者定位工具

工具下載下傳位址:

https://github.com/PowerShellEmpirc/PowerTools/tree/master/PowerView

當然域控與域管定位方式多種多樣,這裡隻介紹了常用的幾種,而在日常内網滲透中,還是要盡量做到隐蔽,避免因為某些敏感操作導緻功虧一篑。

“D&X 安全實驗室”

專注滲透測試技術

全球最新網絡攻擊技術

内網滲透-域管理者定位Part1 内網域滲透基礎概念Part2 域管理者定位基礎Part3 域管理者手動定位Part4 自動化收集時常用的域管理者定位工具

繼續閱讀