Vulnhub billu b0x

0x01 环境搭建

1. 从官方下载靶机环境,解压到本地,双击OVF文件直接导入到vmware虚拟机里面。
2. 将虚拟机的网络适配器调成NAT模式,然后开机即可进行操作了。

0x02 主机发现

复制代码
nmap -sn 192.168.2.0/24

成功获取靶机IP为192.168.2.129。

0x03 端口扫描

复制代码
nmap 192.168.2.129

简单扫下端口,发现该靶机开放了22,和80端口。

0x04 目录扫描

开放了web端口,那必然要扫一下目录。

复制代码
dirsearch.py -u http://192.168.2.129

扫出了这么多php文件,我们依次去访问看看每个文件的作用。

1. add.php 是一个文件上传功能的页面。尝试了一下上传图片,无法判断是否上传成功。
2. /in 是一个phpinfo的界面,在这里我们可以看到网站根目录为/var/www
3. index.php是一个前台登录界面,感觉大概率存在SQL注入。
4. /phpmy/ 是一个phpmyadmin的登陆界面,尝试了下弱口令登录,未能成功。
5. /test.php 提示缺少file参数,先尝试GET传参加/etc/passwd还是提示少了,再次尝试POST传参就直接下载了。因此test.php应该是一个存在文件包含漏洞的页面。
6. /c 可能存在c.php文件。

0x05 渗透思路

1. 存在文件包含,那么就可以读取源码,可以尝试将响应码为200的都读一遍。比如首页的index.php,这样我们就可以审计源码了。
2. 存在文件包含,存在phpmyadmin,可以尝试爆破phpmyadmin的目录,找找phpmyadmin的配置文件。
3. 存在文件上传,存在文件包含,大概率有位置能上传图片马,只不过add.php可能因为某种原因无法上传。

0x06 开始尝试

以第一种思路,利用文件包含漏洞包含index.php。

提取源码的关键部分如下。

复制代码
$uname=str_replace('\'','',urldecode($_POST['un']));
$pass=str_replace('\'','',urldecode($_POST['ps']));
$run='select * from auth where  pass=\''.$pass.'\' and uname=\''.$uname.'\'';

分析源码可以发现该处对用户输入的单引号做了过滤处理,但是这里可以绕过。
构造SQL语句:pass=,uname=or 1=1#\

相关推荐
无名之逆7 分钟前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
大丈夫立于天地间8 分钟前
ISIS协议中的数据库同步
运维·网络·信息与通信
cg501712 分钟前
Spring Boot 的配置文件
java·linux·spring boot
暮云星影32 分钟前
三、FFmpeg学习笔记
linux·ffmpeg
rainFFrain43 分钟前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon1 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
mingqian_chu1 小时前
ubuntu中使用安卓模拟器
android·linux·ubuntu
xujiangyan_2 小时前
nginx的反向代理和负载均衡
服务器·网络·nginx
@郭小茶2 小时前
docker-compose方式部署docker项目
运维·docker·容器