一、環境搭建
這個靶場來自暗月內網滲透,是在前幾天網上沖浪的時候看到這篇文章 https://zhuanlan.zhihu.com/p/349613752,就下載靶場回來玩一下
靶場地址: https://pan.baidu.com/s/12pSYxSU-ZmurQ9--GFiaXQ 提取碼: 3p47
拓撲圖是這樣的,靶場滲透的最終目標是域控中的 flag.txt
靶機下載解壓后是三個掛起的虛擬機,需要手動添加兩個 vmnet 18、vmnet 19 兩個網卡,設置如下
另外我還將 web 服務器的 Ethernet0 網卡設置為自動獲取 ip 地址,所以目前的網絡環境是
- 攻擊機
網卡 192.168.2.0/24
- web 服務器
第一塊網卡 橋接 192.168.2.234
第二塊網卡 vmnet18 10.10.1.0/24
- oa 服務器
第一塊網卡 vmnet18 10.10.1.0/24
第二塊網卡 vmnet19 10.10.10.0/24
- dc 域控
網卡 vmnet19 10.10.10.0/24
在攻擊機的 hosts 綁定域名,windows 系統在 C:\Windows\System32\drivers\etc\hosts
192.168.2.234 www.moonlab.com
二、漏洞利用
2.1siteserver管理員密碼重置
訪問域名一片空白,訪問 robots.txt 發現幾個目錄
訪問 /SiteServer/ 路徑,直接跳到管理員登錄界面,嘗試幾個弱口令沒有登錄進去后,百度找到這個 cms 的歷史漏洞,點擊忘記密碼輸入猜測的用戶名
點擊下一步,然后谷歌瀏覽器在設置->網站設置->JavaScript->禁止處禁用 js,在輸入找回密碼問題答案時什么都不填直接下一步即可找回密碼

使用賬戶 admin/admin5566 成功登錄后台
2.2siteserver后台getshell
后台的顯示管理->模板管理->添加首頁模板寫一個免殺🐎,🐎的位置在網站的根目錄,訪問一下 http://www.moonlab.com/T_shell.aspx 確定🐎沒問題(這里是一個坑,最開始我沒有搞定 aspx 的免殺,以為寫一個 asp 的就可以了,但是后續權限就不夠了)
改用 aspx 免殺馬后,用魔改的蟻劍成功連接
查看一下當前權限為 iis apppool\moonlab,操作系統為 windows server 2016,tasklist /svc 命令列出每個進程所調用的服務,發現存在殺軟,這時候想直接上線 msf 的,但是運行程序蟻劍提示拒絕訪問,需要先提升權限
2.3printspoofer提權
工具下載地址 https://github.com/itm4n/PrintSpoofer,自己做一下免殺上傳到 C:\Windows\Temp 目錄,運行程序成功提權
PrintSpoofer.exe -i -c "whoami"
三、內網滲透
3.1web服務器免殺上線msf
接下來想上 msf 或者 cs 繼續后滲透操作,使用之前學習的工具(這篇博客里 https://www.cnblogs.com/wkzb/p/14676271.html)免殺 msf 生成的 exe,但是失敗了,又嘗試了原來學習的 msf 模塊的 web_delivery 生成 payload 方式(這篇博客里 https://www.cnblogs.com/wkzb/p/13760679.html),成功彈回 meterpreter 終端,這里還嘗試了是否可以拿這個 meterpreter 派生到 cs 仍然保持免殺,但是失敗了,cs 可以上線,但是無法執行命令
3.2web服務器信息搜集
hashdump 命令獲取賬戶信息,解密得到 Administrator 賬號密碼
解密 Windows NTLM Hash e7114141b0337bdce1aedf5594706205 Administrator/!@#QWE123
ipconfig /all 發現 web 服務器有雙網卡,內網 10.10.1.0/24 網段,web 服務器不在域中
3.3arp主機存活探測
發現 ip 為 10.10.1.130 的主機
run arp_scanner -r 10.10.1.0/24
3.4掃描內網主機端口
添加路由、掛Socks4a代理
run autoroute -s 10.10.1.0/24 run autoroute -p background use auxiliary/server/socks4a set srvport 1080 run
nmap 掃描主機開放端口
proxychains nmap -p 22,21,80,88,135,139,445,443,888,1433,3306,3389,6379,7001,8080,8000,9000 -Pn -sT 10.10.1.130 --open
proxychains 調用火狐訪問內網主機 80 端口,發現是通達 oa
proxychains firefox 10.10.1.130 -p 80
四、橫向移動
4.1通達oa getshell
工具下載地址 https://github.com/Al1ex/TongDa-RCE,將 tongda_rce.py 原本的 shell 修改為一個免殺馬,這里遇到的坑是,第一次運行工具提示沒有漏洞,多運行幾次就好了
proxychains3 python3 tongda_rce.py http://10.10.1.130
訪問寫入 shell 的地址 http://10.10.1.130/ispirit/interface/404.php,沒被殺嘿嘿
配置蟻劍內網代理連接通達 oa 的 shell
4.2oa服務器信息搜集
在 oa 服務器的蟻劍終端執行命令出現沒有回顯的問題,把請求超時時間設置到最大即可解決,搜集一下這台服務器的信息
whoami netstat -ano ipconfig /all net start //運行的服務 tasklist /svc //進程列表
總結一下
- oa 服務器有雙網卡
- 兩個 ip 分別是 10.10.1.130 和 10.10.10.166,發現了新網段 10.10.10.0/24
- 當前是 system 權限
- 服務器有 360,windows firewall 等防護措施
4.3web、oa服務器免殺上線cs
接下來上線 msf 會更好操作,這里開一個上帝視角,作者說 shellcode 免殺后 oa 主機可以上線 msf,但是在使用命令的期間 session 多次失敗,應該是服務器有些防護軟件會對操作進行攔截,作者的解決辦法是登錄服務器把服務器安全狗進行關閉或者停止主動防御。這里我想將目標上線 cs,因為它在后滲透階段相比於 msf 更穩定、易操作一些,msf 的 session 掉線重連太費時費力了,又因為 oa 服務器是不出網的,所以要先上線 web 服務器
這里有兩個坑點是之前看別人的博客說 cs 盡量不勾選 x64,比較不穩定,但是今天實驗發現如果不勾選生成的 shellcode 完全無效,可能要分不同的場景吧。還有就是由於這個靶機間隔時間比較長,上次做的 PrintSpoofer 已經不免殺了,蟻劍運行時會出現“系統無法執行指定的程序”的回顯,重新做一下免殺問題解決
做一下 shellcode 的免殺,然后 web 服務器成功上線 cs
4.4域信息搜集
4.5哈希傳遞
開了上帝視角看到接下來只要將 oa 這台不出網的服務器上線 cs,再做一下域信息搜集、抓密碼、哈希傳遞即可拿到域控權限,那為什么我的 4.3、4.4、4.5 小節不完整呢,因為做到 web 服務器上線的時候 oa 死機了,我懶得等它恢復天真的以為把它刪了,重新解壓一個出來就好了,但是解壓的時候我才發現我的硬盤已經很滿了,這三個靶機是分段壓縮的,雖然我只想要 oa,但是分段壓縮的一定要一起解壓才可以!!沒想到我的靶機滲透大結局是硬盤空間不夠了嗚嗚嗚
五、總結
這個靶場督促我學習了一下 webshell、printspoofer、shellcode 免殺,還發現了自己的 cs 版本有點低,查不出網主機上線的資料時,一些 payload 都沒有,還踩了一些坑又從坑里爬出來,總之感謝師傅的靶場!!!受益匪淺
(還要感謝 npy 耐心安慰,踩坑沒頭緒的時候我有點心態崩,比心)
參考文章:
https://www.baikesec.com/webstudy/penetration/48.html
https://zhuanlan.zhihu.com/p/349613752