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

相关推荐
PcVue China2 小时前
PcVue + SQL Grid : 释放数据的无限潜力
大数据·服务器·数据库·sql·科技·安全·oracle
舞动CPU4 小时前
linux c/c++最高效的计时方法
linux·运维·服务器
皮锤打乌龟4 小时前
(干货)Jenkins使用kubernetes插件连接k8s的认证方式
运维·kubernetes·jenkins
钰@5 小时前
小程序开发者工具的network选项卡中有某域名的接口请求,但是在charles中抓不到该接口
运维·服务器·小程序
wanhengwangluo5 小时前
云服务器和物理服务器的区别有哪些?
运维·服务器
秦jh_6 小时前
【Linux】多线程(概念,控制)
linux·运维·前端
yaosheng_VALVE6 小时前
稀硫酸介质中 V 型球阀的材质选择与选型要点-耀圣
运维·spring cloud·自动化·intellij-idea·材质·1024程序员节
看山还是山,看水还是。7 小时前
Redis 配置
运维·数据库·redis·安全·缓存·测试覆盖率
扣得君7 小时前
C++20 Coroutine Echo Server
运维·服务器·c++20
keep__go7 小时前
Linux 批量配置互信
linux·运维·服务器·数据库·shell