DVWA 文件包含漏洞medium以及学习总结

文件包含漏洞十分的危险

它的基础原理就是后台语句的包含语句(include等函数) 未经过严谨过滤,并用户可控

文件包含的漏洞危险不仅仅体现在本身的危害,还有就是和其他漏洞搭配使用

首先写一个一句话木马

在文件上传处有限制不能上传

更改后缀后上传(在一句话前加上了jpg标志位,直接把jpg图片后缀改成txt复制前几行就行)

切换到文件包含漏洞页面 ,在url里加上刚才的路径(因为文件储存的位置正好是从跟目录开始的,在别的时候需要注意)

一句话执行命令

这是medium等级的源码可以看到它过滤了http,https 以及 ../ 和.. 这里我用的双写让../经过过滤 同理也可以直接对http进行绕过(htthttpp) 

遇到的问题

  虽然木马可以执行了,但要是直接用菜刀连接的话是连不上的,需要添加相应等级的cookie

2.对文件包含漏洞的总结(仅重点不详细)

文件包含分两种 本地文件包含 远程文件包含

区别

本地包含如字面意思

  配置要求 开启allow_url_fopen (默认开启)

远程文件包含 使用可控外链进行包含

  配置要求 开始allow_url_fopen

      allow_url_include (默认关闭)

特殊技巧

  利用日志文件完成本地包含

  在session临时文件完成本地包含

基础绕过 

  后台默认在语句后加后缀

    需要绕过.php 可用  ? %23 %00 %20 如果与包含文件后缀相同,也可以在url里文件不加后缀完成闭合

  系统特性绕过 

    windows 最多256字节 多余丢弃 

      用...填充字节

    linux 最多4096字节 多余丢掉

      用/.填充字节

php伪协议

  file://访问本地系统中文件

    配置要求 allow_url_fopen 开启

·  php://filter 读取php源码

    配置要求 无条件

    使用方法 php://filter/read=convert.base64_encode/resource=文件名(进行base64编码是为了防止代码被包含函数执行)

  zip:// 解压文件

    配置要求 无条件

、   使用方法 zip://压缩包的绝对路径#压缩包内的文件

    技巧 zip:// xxx.jpg#xx.php (路径里无论后缀是什么都当zip执行)

原文地址:https://www.cnblogs.com/spend/p/13161008.html