来源:自学PHP网 时间:2015-04-17 12:00 作者: 阅读:次
[导读] 现在程序代码写的越来越千奇百怪,就一种文件包含的代码就能写出2种:require include先说require 如果出错则终止输出,include 如果出错则继续执行。如果一个网站的管理用户写在auth.php里...
现在程序代码写的越来越千奇百怪,就一种文件包含的代码就能写出2种:require include
先说require 如果出错则终止输出,include 如果出错则继续执行。 如果一个网站的管理用户写在auth.php里,且auth.php被恶意删除了,如果用require则没有漏洞。 如果用include则产生漏洞,这是为什么?因为Include在遇到错误时会继续执行,这样用户密码就为空,就进入了后台。 再如果 一个网站 查看一条公告是链接式index.php?act=view&file=gonggao.php 而代码是 if ($act == “view”){ $file = $_GET["file"]; include $file; } 乍一看到没什么问题,仔细一看,问题就出来了 $file 产生了一个包含漏洞 如果这个网站支持头像上传或者文件上传 配合这个漏洞 就可以取得网站的WEBSHELL 修复方法: 1.最根本的,就是不用传递参数的include,并且配置文件能require就尽量require |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com