前言
靶機:shenron-1
攻擊:kali
都采用虛擬機,網卡為橋接模式
主機發現
使用arp-scan -l
或netdiscover -r 192.168.1.1/24
掃描
信息收集
使用nmap掃描端口
網站信息探測
查看頁面,發現是apache2
的默認界面,查看頁面源代碼,可能是目錄型網站
使用gobuster、dirsearch、ffuf、dirb、dirbuster
等工具就進行目錄掃描
gobuster dir -u http://192.168.1.55 -w /usr/share/wordlists/dirb/big.txt -x php,zip,md,txt,html,jpg -b 404
發現目錄joomla
,可能是cms
,訪問joomla
目錄,發現確實如此
可以使用針對joomla
的掃描工具joomscan
joomscan -u http://192.168.1.55/joomla
發現版本以及管理員登錄界面
訪問test
目錄,發現一個password
,訪問后,提示這里有信息,查看頁面源代碼,發現一個用戶名密碼
漏洞尋找
用戶名admin
,密碼3iqtzi4RhkWANcu@$pa$$
嘗試使用這個身份登錄joomla/administrator
的管理員界面,發現確實可以
可以通過這個頁面,收集靶機中的信息,發現php
等信息
漏洞利用
測試功能點,在擴展中,有主題模塊,可以寫入修改文件,那么就寫一個php
的反彈shell
,可以把kali
中的/usr/share/webshells/php/php-reverse-shell.php
中的內容粘貼
然后在kali
中開啟監聽,再使用瀏覽器訪問,默認的beez3
模板的地址是joomla/templates/bezz3
,其后跟上腳本shell.php
即可
使用dpkg -l | grep python
查看有無安裝python
,使用python
獲取交互式界面
靶機內信息收集
使用find
尋找具有SUID權限的文件,發現sudo
,測試,發現還是需要密碼的
使用find
尋找capabilities
,暫無可用
查看內核版本及網絡狀態
查看joomla
模板中的配置文件configuration.php
,發現連接數據庫的用戶名jenny
和密碼Mypa$$wordi$notharD@123
查看家目錄的用戶,發現兩個用戶,jenny
和shenron
提權
提權至jenny
使用獲取的密碼測試,是否一碼多用,發現可以
之前使用find
尋找過具有SUID權限文件,發現sudo
,這里有密碼,直接測試,發現有shenron
用戶的一個文件
直接復制/home
目錄下的shenron
文件到這里,測試發現不行
提權至shenron
那就反過來,生成一個公私鑰,然后復制到shenron
的目錄下,為什么呢,因為這里先使用ssh
登錄測試,發現這里直接使用證書認證,說明存在.ssh
文件,可能就是在shenron
目錄下
首先使用ssh-keygen -t rsa
生成公私鑰
然后在kali
開啟簡易的http
服務,這里是測試過靶機可以通過命令下載文件的,盡量在/tmp
目錄下進行操作
sudo -u shenron /usr/bin/cp id_rsa.pub /home/shenron/.ssh/authorized_keys
在kali
中指定私鑰文件進行連接
提權至root
使用find
再尋找關鍵字pass*
等
查看后發現密碼為YoUkNowMyPaSsWoRdIsToStRoNgDeAr
,測試sudo -l
,發現apt
命令
使用命令提權,這里可以查看網站gtfobins.github.io
使用命令,提權成功
清理痕跡
各種日志的清除
刪除之前的公鑰,以及歷史記錄
這里還有個網站中的反彈shell
文件要刪除,這里就不附圖片了
總結
- 主要考察CMS
joomla
的滲透方法,最常見的就是模板的注入 - 考察
ssh
公私鑰連接的過程,以及相關文件 - 考察對于
joomla
的一個配置文件configuration.php
- 考察在靶機內的信息收集,可能有存儲密碼