文件包含漏洞

什么是文件包含漏洞?

定义:一个代码的文件去包含其他代码的文件而导致的一种漏洞。

分为两种:内容的包含,函数的包含。

内容的包含:网站页面的导航条,底部链接,友情链接等,需要修改时通过单独存放在一个文件,由其它的文件去引用或者包含的文件

函数的包含:在网页面里需要引用的公共函数,如utils.php

文件包含漏洞发生的原因是什么?定义是什么?

发生的原因:为解决代码重复和维护困难的问题,使用include函数

定义:包含一些敏感文件和一些恶意的代码,造成的文件包含漏洞

URL关键字

URL参数名字出现了page、file、filename、include等关键字。
URL参数值出现了文件名,比如xxx.php xxx.html 等。

如何确定是否存在文件包含漏洞?怎么发现这种漏洞?

可以通过URL关键字的格式去判断,是否使用文件读取文件包含相关的函数。如include(),require(),fopen()等函数

发现:通过URL,代码审计去发现后访问敏感文件,能访问肯定存在,如果访问不到即使它有一些特殊的特征,说明有它有防御的措施

文件包含漏洞会造成什么危害?

会导致任意文件的访问,如果它可以包含恶意的代码的话,它就会直接获得web shell

如何防御和修复文件包含漏洞?

1.PHP配置
php.ini
allow_url_fopen=OFF
allow_url_include=OFF

 2.禁用动态包含

一个网页代码的变量需要由前端代码传到后端代码进行处理,从而引发的文件漏洞

 3.过滤协议,过滤目录字符

如:大小写绕过,双写绕过

 4.设置文件白名单

只允许包含什么样的文件就包含什么样的文件,不要包含其他的文件。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值