-
- 文件包含概述
Web脚本可能允许客户端用户输入调用包含在服务器的文件,会导致恶意代码的执行以及敏感信息的泄露;
文件包含漏洞的产生:
程序开发人员都希望代码更灵活,所以通常会将被包含的文件设 置为变量,用来进行动态调用,但正是由于这种灵活性,从而导客户 端可以调用一个恶意文件,造成文件包含漏洞。
-
- web脚本可能允许客户端用户输入控制动态包含在服务器端的文件,会导 致恶意代码的执行及敏感信息泄露
- 引用的文件名,用户可控,文件名传入没有校验或校验被绕过
-
- 危害
执行任意脚本代码。
反弹shell。
控制整个网站。
控制整个服务器。
进一步内网渗透
-
- 文件包含常用函数
PHP中提供了四种包含文件的函数
-
- include()
当使用该函数包含文件时,只有代码执行到include()函数时才将文件包 含进来,发生错误只给出一个警告,继续向下执行
-
- include_once()
功能和include()相同,区别在于当重复调用同一文件时,程序只调用一次
-
- require()
require()与include()的区别在于require()执行如果发生错误,函 数会输出错误信息,并终止脚本的运行
使用require()函数包含文件时,只要程序一执行,立即调用文件,而 include()只有程序执行到该函数才调用。
-
- require_once()
它的功能与require()相同,区别在于当重复调用同一文件时,程序只调 用一次
-
- 本地文件包含
漏洞利用!
-
- 上传图片,包含图片Get