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#\

相关推荐
郝学胜-神的一滴29 分钟前
使用Linux系统函数递归遍历指定目录
linux·运维·服务器·开发语言·c++·软件工程
pusue_the_sun35 分钟前
操作系统:进程的短程调度
运维·服务器
landian00436 分钟前
kubuntu24.04 换国内ustc源
linux·kubuntu24.04
七度光阴;1 小时前
Docker入门手册
运维·docker·容器
DuHz2 小时前
C程序中的数组与指针共生关系
linux·c语言·开发语言·嵌入式硬件·算法
shuair2 小时前
mysql8支持远程访问 -mysql5.7支持远程访问
linux·mysql
软件技术员2 小时前
使用ACME自动签发SSL 证书
服务器·网络协议·ssl
Murphy_lx2 小时前
Linux系统--信号(4--信号捕捉、信号递达)陌生概念篇
linux·运维·服务器
weixin_405023373 小时前
使用docker 安装部署easy-mock
运维·docker·容器
Asuncion0073 小时前
Docker核心揭秘:轻量级虚拟化的革命
服务器·开发语言·docker·云原生