简谈文件包含漏洞
前言
文件包含,算是“注入攻击”中的典型代表之一了,这种漏洞在PHP语言上出现比较多,因为PHP语言在设计上一开始没有过多地考虑安全性,时至今日,尽管PHP社区和开发者一直在安全性上做出努力,不过遗留下来的问题还是不少。
本篇主要讲解PHP文件包含漏洞的相关知识。
(替兄弟默哀三分钟= =、)
0x01 危险的函数
文件包含可能出现在JSP、PHP、ASP等语言中,常见的导致文件包含的函数主要有以下几种:
PHP:include(),include_once(),require(),require_once(),fopen(),readfile()
JSP/Servlet:ava.io.File(),java.io.FileReader()
ASP:include file,include virtual
当使用这4个函数包含一个新的文件时,该文件将作为PHP代码执行,PHP内核并不会在意包含的文件是什么类型