一、介绍
运行环境:Virtualbox
攻击机:kali(10.0.2.15)
靶机:Hack_Me_Please(10.0.2.39)
目标:获取靶机root权限和flag
靶机下载地址:https://www.vulnhub.com/entry/hack-me-please-1,731/
二、信息收集
使用nmap主机发现靶机ip:10.0.2.39
使用nmap端口扫描发现靶机开放端口:80、3306
80端口:打开网站把网站各个功能点点击一边,查看网站源码,未发现什么有用的信息。
使用dirbuster工具爆目录,并未发现什么敏感目录信息,爆破出来一个/img/hacker.jpg
文件但返回状态码为403访问不了
发现爆破出来几个js文件,一个一个点击查看,发现/js/main.js
文件里面有网站的目录信息
访问该目录,发现是cms为seeddms-5.1.22
的网站
使用dirbuster工具进行爆破目录,发现网站的配置文件夹,使用dirsearch等工具扫描,发现一个配置文件
打开该文件,可以找到数据库的用户名密码:seeddms\seeddms
三、漏洞利用
登录数据库,可以查找用户名和密码或修改密码
mysql -h 10.0.2.39 -u seeddms -p
show databases;
use seeddms;
show tables;
select * from users;
select * from tblUsers;
admin用户的md5解密不出来
可以将数据库中的密码替换成已知的md5加密值
update tblUsers set pwd='e10adc3949ba59abbe56e057f20f883e' where id=1;
使用用户名密码:admin/123456
,登录网站成功
登录网站发现存在上传文件的功能点,上传webshell
访问http://10.0.2.39/seeddms51x/seeddms-5.1.22/out/out.ObjectCheck.php
发现文件上传成功
可以上网查找该cms文件上传保存的位置,并访问上传的webshell
网站上传的文件保存位置:example.com/data/1048576/"document_id"/1.php
根据找到的信息,反弹shell:http://10.0.2.39/seeddms51x/data/1048576/7/1.php
使用python获取交互式shell
python3 -c 'import pty; pty.spawn("/bin/bash")'
四、提权
查找靶机是否有特权命令,或是否存在可利用的具有root权限的文件。
sudo -l
find / -perm -u=s -type f 2>/dev/null
发现policykit-1
,该版本的Polkit存在提权漏洞CVE-2021-4034,靶机存在gcc环境,可以将提权的exp.c文件上传尝试提权
使用网站的上传文件进行上传exp,找到上传的文件,编译执行,提权成功
找了一圈,没有发现flag
参考链接:https://www.cnblogs.com/sainet/p/15699463.html