文件包含漏洞及原理

文件包含漏洞主要由PHP的动态包含文件功能引起,当用户可以控制包含的文件路径时,可能导致本地或远程文件被执行。本地文件包含允许攻击者访问服务器上的敏感文件,而远程文件包含则能在allow_url_fopen和allow_url_include开启时加载第三方服务器的代码。利用此漏洞可能执行任意代码,如phpinfo()或植入木马。修复措施包括限制用户输入,确保配置选项禁用远程包含。
摘要由CSDN通过智能技术生成

什么是文件包含漏洞

1:随着网站的业务的需求,程序开发人员一般希望代码更加灵活,所以将被包含的文件设置为变量,用来进行动态调用,但是正是这种灵活性通过动态变量的方式引入需要包含的文件时,用户对这个变量可控而且服务端又没有做合理的校检或者校检被绕过就造成了文件包含漏洞。

经常见到的函数

1:include()当前使用该函数包含文件时,只有代码执行到include()函数时将文件包含起来,发生错误时给出一个警告,然后继续执行语句

2,include_once()功能和include()相同,区别当重复调用一个文件时,程序只调用一次

3:reguire()执行如果发生错误,函数会输出错误信息,并终止脚本的运行

4:require_once()功能与require()相同区别在于当重复调用一个文件时,程序只调用一次

5:nighcight_file(),show_source()函数对文件进行语法高亮显示,通常能看到源代码

6:readfile(),file_get_contents()函数读取一个文件,并写入输出缓冲

7:fopen(),打开一个文件或者url

几乎所有的脚本语言中都提供文件包含的功能,但文件包含漏洞在php中居多,而在jsp\ASP\ASP.NETC 程序中非常少,甚至没有文件包含漏洞的存

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值