域滲透LDAP收集AD用戶相關信息


筆記備份。

備份下學習daiker師傅文章的筆記,LDAP基礎、域內用戶屬性、機器用戶相關、域內會話信息收集 筆記。
類的結構理解 TODO.

0x01 查詢域用戶

SAMR 協議查詢: net user /domain
impacket samrdump.py查詢:

Ldap 語法查詢
通過(&(objectCategory=person)(objectClass=user))語法

用戶屬性對應ldap:

姓對應的屬性就是sn
名對應的屬性是giveName
展示名,對應的屬性是displayName。

相關時間屬性

userAccountControl屬性


Q:機器用戶為什么是域用戶?

  • 機器用戶為Computer類的實例

  • 域用戶是user類的實例

  • 因為computer是user的子類,子類繼承父類的屬性

  • 所以機器用戶擁有域用戶的屬性,是一種域用戶

查找域內機器:

objectclass=Computer && objectcategory=Computer

  • 在對象的objectClass 屬性里面,可以看到這個對象是哪個類的實例
  • 對象類的objectCategory里面建立了索引。其中包含對象是其實例的類或其父類之一的專有名稱。

查看能夠登陸的主機

查看正在登陸的主機

1.遠程注冊表查看
2.NetSessionEnum (https://docs.microsoft.com/en-us/windows/win32/api/lmshare/nf-lmshare-netsessionenum)
3.NetWkstaUserEnum(https://docs.microsoft.com/en-us/windows/win32/api/lmwksta/nf-lmwksta-netwkstauserenum)

查看登陸過后的主機
導出DC日志后查看登陸記錄 。

wevtutil epl Security C:\Users\Administrator\Desktop\1.evtx /q:“*[System[(EventID=4624)] and EventData[Data[@Name=‘LogonType’]=‘3’]]” //導出日志
LogParser.exe -i:EVT -o:CSV "SELECT TO_UPPERCASE(EXTRACT_TOKEN(Strings,5,'|')) as USERNAME,TO_UPPERCASE(EXTRACT_TOKEN(Strings,18,'|')) as SOURCE_IP FROM 1.evtx" >log.csv // 提取日志


0x02 LDAP基礎

基礎名詞:

  • 目錄樹
  • 條目
  • DN(唯一可區別的名稱),RDN
  • 屬性

Q:ldap如何表示一條記錄?

dn:一條記錄的位置
dc:一條記錄所屬的區域
ou:一條記錄所屬的組織
cn/uid:一條記錄的名字/ID

AD 中的Naming Context

簡而言之 Active Directory具有分布式特性,一個林中有若干個域,每個域內有若干台域控,每台域控有一個獨立的Active Directory。這個時候就有必要將數據隔離到多個分區中,如果不隔離的話,則每個域控制器都必須復制林中的所有數據。若隔離為若干個分區之后,就可以有選擇性的復制某幾個分區。微軟將Active Directory划分為若干個分區(這個分區我們稱為Naming Context,簡稱NC),每個Naming Context都有其自己的安全邊界。

AD 預定義了三個Naming Context

  1. 域目錄分區(Domain Directory Partition NC)
  2. 配置目錄分區(Configuration Directory Partition NC)
  3. 架構目錄分區(Schema Directory Partition NC)
  4. 應用程序目錄分區(Application Directory Partition)


連接工具Adexplorer:
https://docs.microsoft.com/zh-cn/sysinternals/downloads/adexplorer

Configuration NC(Configuration NC):
包含有關站點,服務,分區和AD的信息

Schema NC(Schema NC):
定義Active Directory中使用的類,對象和屬性。
理解Schema NC之前先理解ldap的類繼承。

LDAP 中的類和繼承

域內每個條目都是類的實例。而類是一組屬性的集合。
例子:

查看條目實例所屬的類 查看objectClass屬性

類是可繼承的。子類繼承父類的所有屬性,Top類是所有類的父類。
域內每個條目都是類的實例。所有的類都存儲在Schema NC里面,是Schema NC的一個條目。

Domain NC(DomainName NC):
不同的域內有不同的域Naming Context,其中包含特定於域的數據。Domain NC表示域的DN,域內的所有計算機,所有用戶的具體信息都這個Naming Context里面。

Application Partitions : 微軟允許用戶自定義分區來擴展Naming Context的概念

查看工具:rootDSE查看域內的所有Naming Context以及Application Partitions


查詢AD過濾條件(LDAP):

用與號 (&) 表示的 AND 運算符。
用豎線 (|) 表示的 OR 運算符。
用感嘆號 (!) 表示的 NOT 運算符。
用名稱和值表達式的等號 (=) 表示的相等比較。
用名稱和值表達式中值的開頭或結尾處的星號 (*) 表示的通配符。

查詢ldap工具:

adfind&&admod
ldapsearch
ADSI 編輯器
LDP
ADExplorer



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM