一.环境搭建
1.靶场描述
Boot2Root ! This is a reallife szenario, but easy going. You have to enumerate and understand the szenario to get the root-flag in round about 20min.
This VM is created/tested with Virtualbox. Maybe it works with vmware.
If you need hints, call me on twitter: @0815R2d2
Have fun...
This works better with VirtualBox rather than VMware
2.靶场下载
https://www.vulnhub.com/entry/funbox-1,518/
3.靶场启动

虚拟机开启之后界面如上,我们不知道ip,需要自己探活,网段知道:192.168.2.0/24
二.信息收集
1.寻找靶场真实ip地址
nmap -sP 192.168.2.0/24

arp-scan -l

靶场真实ip地址为192.168.2.10
2.探测端口及服务
nmap -p- -sV 192.168.2.10

发现开启了21端口,服务为ProFTPD
发现开启了22端口,服务为OpenSSH 8.2p1 Ubuntu 4ubuntu0.11 (Ubuntu Linux; protocol 2.0)
发现开启了80,服务为Apache httpd 2.4.41 ((Ubuntu))
发现开启了33060,服务为mysqlx?
三.渗透测试
1.访问web服务
http://192.168.2.10


我们可以想到是IP地址和域名没有进行绑定,我们进行绑定即可
vim /etc/hosts
192.168.2.10 funbox.fritz.box

我们再次进行访问,可以看到页面正常

ftp://192.168.2.10
需要进行验证

2.扫描web服务
1)棱洞3.0指纹识别
./EHole_linux_amd64 finger -u http://192.168.2.10

扫描到cms框架是wordpress,我们可以猜测是需要爆破用户名和密码
2)nikto扫描网站结构
nikto -h http://192.168.2.10

扫描到一个有用的信息,是wordpress的登录页面
3)disearch目录扫描
dirsearch -u 192.168.2.10 -e * -x 403 --random-agent

没有什么新的发现,最后有用的信息只有一个登录页面
3.渗透测试
1)爆破用户名
http://funbox.fritz.box/wp-login.php

我们使用wpscan进行爆破用户名
wpscan --url http://192.168.2.10 -e u

爆破出来2个用户名,一个是admin,一个是joe
2)爆破密码
wpscan --url http://funbox.fritz.box/ -U user.txt --passwords /usr/share/wordlists/rockyou.txt

爆破出来2个用户名和密码,我们进行登录查看
Username: joe, Password: 12345
Username: admin, Password: iubire
3)登录
首先我们使用joe进行登录,但是没有发现有用的信息

我们使用第二个用户名进行登录
4)404页面登录
我们可以发现一个404.php,我们进行利用即可

我们写入相关的代码即可

但是我们发现不能使用,那么我们就换一个思路,进行解决,我们知道22端口是开启的,我们使用ssh进行登录
5)ssh登录
ssh joe@192.168.2.10
我们可以看到登录成功

我们查看id,发现不是root权限,我们进行提权

我们切换到根目录下,但是 发现被限制了 使用命令: python -c 'import os; os.system("/bin/bash"); 然后就突破了限制

6)提权
我们查看根目录

我们可以看到/home目录,我们进行查看

然后 在 funny下 发现了 .backup.sh 可执行脚本 而.reminder.sh 说明backup会定时执行

设置本地ip nc进行监听 ,每过几分钟就会运行一次 .bash.sh 脚本 然后就会回弹shell

获取flag

至此获取到了所有得flag,渗透测试结束