文件包含原理解析

前言

文件包含是在许多漏洞复现过程中都会使用得到的一个漏洞,可以包含自己上传上去的木马或者passwd等文件,也可以进行远程文件包含

原理

程序开发人员一般会把重复使用的函数写到单个文件中,需要使用某个函数时直接调用此文件,而无需再次编写,这中文件调用的过程一般被称为文件包含。程序开发人员一般希望代码更灵活,所以将被包含的文件设置为变量,用来进行动态调用,
但正是由于这种灵活性,从而导致客户端可以调用一个恶意文件,造成文件包含漏洞。

常见的文件包含函数

include():执行到include时才包含文件,找不到被包含文件时只会产生警告,脚本将继续执行
require():只要程序一运行就包含文件,找不到被包含的文件时会产生致命错误,并停止脚本
include_once()和require_once():若文件中代码已被包含则不会再次包含

实例

文件包含包括本地文件包含和远程文件包含,远程文件包含需要设置两个参数维ON

allow_url_fopen = On(是否允许打开远程文件)

allow_url_include = On(是否允许include/require远程文件)

详情可参考

https://www.freebuf.com/articles/web/182280.html

   Reprint policy


《文件包含原理解析》 by xiao is licensed under a Creative Commons Attribution 4.0 International License
 Previous
卷积神经网络详解 卷积神经网络详解
前言卷积神经网络是第一个我系统学习的神经网络,在学习的过程中,通过不断地查阅资料也好,看书也好,对它的理解逐渐的深入了,下面我就来介绍一下卷积神经网络。 神经网络说到卷积神经网络,就不得不先说一下神经网络,不论卷积神经网络也好,还是其他的一
2019-11-15 xiao
Next 
用卷积神经网络实现MINIST手写字识别 用卷积神经网络实现MINIST手写字识别
前言学习了这么久的深度学习,基本上都是在学习一些理论,那么现在就来实践一下吧,今天实践的是用卷积神经网络实现MINIST手写字识别 代码分析既然是实践,卷积神经网络的具体步骤就不在此赘述了,直接上代码 #导入MNIST数据集-创建模型-保存
2019-11-02 xiao
  TOC