LDAP(Light Directory Access Protocal)是一個基於X.500標准的輕量級目錄訪問協議,LDAP是支持跨平台的Internet協議,只需要通過LDAP做簡單的配置就可以與服務器做認證交互。可以大大降低開發的成本。
windows Active Diretcory就是一個支持LDAP的微軟產品。
活動目錄是指域環境中提供目錄服務的組件,它用於存儲網絡對象信息(用戶、組、打印機等)。
把活動目錄理解成一個可擴展的,撞門為了查詢、瀏覽、搜索優化的特殊數據庫,就像windows文件目錄的結構一樣。目錄數據庫與MySQL這種關系型數據庫相比,具有優異的可讀性,但是可寫性能很差,而且沒有備份還原這樣的功能。
信息收集:操作系統、權限、用戶、ip段、殺軟、端口、進程、服務、補丁、計划任務、共享、會話
利用LDAP進行信息收集
前提是能夠訪問DC的389端口,且已經知道域內的一個賬號密碼,假設我們已經知道域內用戶test1的密碼時admin@123,DC的ip是192.168.190.130
1.使用ldapsearch獲取信息
該工具只能在域環境下使用,因此一般當獲得shell后,掛socks代理,在本地進行操作查詢。
參數說明:
-x:進行簡單認證
-H:服務器地址
-D:用來綁定服務器的DN
-w:綁定DN的密碼
-b:指定要查詢的根節點
•獲取所有信息
•ldapsearch.exe -x -H ldap://192.168.17.133:389 -D "CN=test1,CN=Users,DC=hacker,DC=test" -w Asdfqwer.. -b "DC=hacker,DC=test"
•查詢用戶
•ldapsearch.exe -x -H ldap://192.168.17.133:389 -D "CN=test1,CN=Users,DC=hacker,DC=test" -w Asdfqwer.. -b "DC=hacker,DC=test" "(&(objectClass=user)(objectCategory=person))" | grep ^cn
•查詢計算機名
•ldapsearch.exe -x -H ldap://192.168.17.133:389 -D "CN=test1,CN=Users,DC=hacker,DC=test" -w Asdfqwer.. -b "DC=hacker,DC=test" "(&(objectCategory=computer)(objectClass=computer))" | grep ^cn
•查詢域內組
•ldapsearch.exe -x -H ldap://192.168.17.133:389 -D "CN=test1,CN=Users,DC=hacker,DC=test" -w Asdfqwer.. -b "DC=hacker,DC=test" "(&(objectCategory=group))" | grep ^cn
2.使用PowerSploit工具搜索信息
•模塊目錄
•$env:PSModulePath
•更改策略
•set-executionpolicy remotesigned
•加載模塊
•Import-Module -name 路徑
•下載地址:
•https://github.com/PowerShellMafia/PowerSploit
$uname="test1"
$pwd=ConvertTo-SecureString "Asdfqwer.." -AsPlainText -Force
$cred=New-Object System.Management.Automation.PSCredential($uname,$pwd)
•查詢用戶
Get-NetUser -Domain hacker.test -DomainController 192.168.17.133 -ADSpath "LDAP://DC=hacker,DC=test" -Credential $cred | fl cn
•查詢計算機名
Get-NetComputer -Domain hacker.test -DomainController 192.168.17.133 -ADSpath "LDAP://DC=hacker,DC=test" -Credential $cred | fl cn
•查詢域內組
Get-NetGroup -Domain hacker.test -DomainController 192.168.17.133 -ADSpath "LDAP://DC=hacker,DC=test" -Credential $cred | fl cn
3.sharpview獲取信息
•查詢所有用戶
•SharpView.exe Get-NetUser -Domain hacker.test -Server 192.168.17.133 -Credential test1@hacker.test/Asdfqwer.. | findstr cn
•模塊
•Get-DomainController
•Get-NetUser
•Get-DomainComputer