前言
靶机: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
- 考察在靶机内的信息收集,可能有存储密码