初始侦察
首先进行标准端口和服务扫描以获取目标信息:
|
|
Nmap返回三个开放端口:
- 22/tcp — SSH (OpenSSH 7.4)
- 80/tcp — HTTP (Apache/2.4.6, PHP 5.6.40) — Web服务器标识为Joomla!
- 3306/tcp — MySQL / MariaDB (未授权)
Web枚举
使用dirsearch进行目录暴力破解:
|
|
发现关键目录:
/administrator/
— Joomla管理员面板
Joomla版本识别
|
|
确认运行Joomla 3.7.0
漏洞研究 — SQL注入
利用已知的Joomla 3.7.0 SQL注入漏洞(Exploit-DB 42033):
|
|
成功枚举数据库:
- information_schema
- joomla
- mysql
- performance_schema
- test
漏洞利用与哈希提取
使用joomblah.py脚本提取用户哈希:
|
|
获得Jonah的密码哈希:$2y$10$0veO/JSFh4389Lluc4Xya.dfy2MF.bZhz0jVMw.V.d3p12kBtZutm
使用John the Ripper破解:
|
|
获得密码:spiderman123
获取访问权限 — Joomla管理员与反向Shell
- 使用凭证登录Joomla管理员面板(jonah:spiderman123)
- 修改Beez3模板的index.php文件为PHP反向Shell
- 启动监听器:
|
|
- 触发反向Shell获得apache用户权限
后期利用
在配置文件/var/www/html/configuration.php
中发现数据库凭证:
- 用户名:root
- 密码:nv5uz9r3ZEDzVjNu
该密码同时适用于jjameson用户的SSH登录,成功获取用户标志:
|
|
权限提升
检查sudo权限发现jjameson可无密码运行yum:
|
|
利用GTFOBins的yum提权技术:
|
|
成功获得root shell并读取root标志:
|
|
总结
本次渗透测试完整演示了从Web应用到系统层面的完整攻击链,涵盖了Joomla漏洞利用、SQL注入、反向Shell部署和Linux权限提升等关键技术环节。