[漏洞检查项] File Include | file-include | 任意文件包含

漏洞场景

类似于metinfo_5.0.4实现了动态包含,有存在文件包含漏洞的危险。

类似于文件读取的URL,可能存在文件包含。

漏洞描述

攻击者可以利用任意文件包含漏洞读取文件、执行代码和对服务器造成危害。

程序开发人员通常会把可重复使用函数或语句写到单个文件中,形成“封装”。在使用某个功能的时候,直接调用此文件,无需再次编写,提高代码重用性,减少代码量。这种调用文件的过程通常称为包含。
程序开发人员都希望代码更加灵活,所以会把被包含的文件的路径设置为变量,来进行动态调用(包含),但正是由于这种灵活性,如果被包含文件的路径客户端可控,造成任意文件包含漏洞。
几乎所有的脚本都会提供文件包含的功能,文件包含漏洞在PHP 的Web 应用中居多,在JSP/ASP/ASP.NET 程序中比较少。

漏洞原理

PHP 文件包含是程序设计的基础功能之一,能够减少代码量,提高开发效率。但是使用文件包含功能时,有类似于以上测试代码的设计,实现了动态包含,就有产生文件包含漏洞的风险。如果实现动态包含的参数,Web 应用没有进行严格的校验,浏览器客户端用户可以影响控制被包含文件的路径,就会产生任意文件包含漏洞。

.动态包含

.被包含文件路径可控

特点:

.读取文件

.执行代码

漏洞危害

攻击者利用文件包含漏洞,可以:

.读取文件

.执行PHP代码

.直接获取网站后门

.控制网站

.控制服务器

漏洞评级

高危

漏洞验证

漏洞利用

漏洞防御

.尽量少的使用动态包含;
.严格过滤被包含文件的路径;
.将参数allow_url_include 设置为Off;
.使用参数open_basedir 限定文件访问范围

open_basedir = c:\phpstudy_2016\www\

漏洞案列

.metinfo_5.0.4_lfi
.dvwa_lfi_high_getshell

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值