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

相关推荐
GalaxyPokemon22 分钟前
LeetCode - 148. 排序链表
linux·算法·leetcode
Guheyunyi32 分钟前
监测预警系统重塑隧道安全新范式
大数据·运维·人工智能·科技·安全
懒羊羊大王呀40 分钟前
Ubuntu20.04中 Redis 的安装和配置
linux·redis
鳄鱼杆42 分钟前
服务器 | Centos 9 系统中,如何部署SpringBoot后端项目?
服务器·spring boot·centos
杰哥技术分享1 小时前
在 CentOS 上安装 Docker 和 Docker Compose 并配置使用国内镜像源
linux·docker·centos
知更鸟呆呆1 小时前
【Linux操作系统】基础开发工具(yum、vim、gcc/g++)
linux·运维·vim
xiangyong581 小时前
ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
linux·ubuntu·gnu
Gold Steps.2 小时前
Docker容器部署elasticsearch8.*与Kibana8.*版本使用filebeat采集日志
运维·docker·云原生·es
weixin_461259412 小时前
[C]C语言日志系统宏技巧解析
java·服务器·c语言
m0_637146932 小时前
C语言基础面试问答
运维·服务器