php allow_url_include的应用和解释


Posted in PHP onApril 22, 2010

因为这个原因,许多安全研究人员建议在php.ini配置中禁用指向allow_url_fopen。不幸的是,许多推荐这种方法的人,并没有意识到,这样会破坏很多的应用并且并不能保证100%的解决remote URL includes以及他带来的不安全性。

通常,用户要求在他们使用其他的文件系统函数的时候,php允许禁止URL包含和请求声明支持。

因为这个原因,计划在PHP6中提供allow_url_include。在这些讨论之后,这些特性在php5.2.0 中被backported。现在大多数的安全研究人员已经改变了他们的建议,只建议人们禁止allow_url_include。

不幸的是,allow_url_fopen和allow_url_include并不是导致问题的原因。一方面来说在应用中包含本地文件仍然是一件足够危险的事情,因为攻击者经常通过sessiondata, fileupload, logfiles,...等方法获取php代码………

另一方面allow_url_fopen和allow_url_include只是保护了against URL handles标记为URL.这影响了http(s) and ftp(s)但是并没有影响php或date(new in php5.2.0) urls.这些url形式,都可以非常简单的进行php代码注入。

Example 1: Use php://input to read the POST data 

<?php // Insecure Include // The following Include statement will // include and execute everything POSTed // to the server include "php://input"; ?>

Example 2: Use data: to Include arbitrary code

<?php // Insecure Include // The following Include statement will // include and execute the base64 encoded // payload. Here this is just phpinfo() include "data:;base64,PD9waHAgcGhwaW5mbygpOz8+"; ?>

把这些放到我们的运算里面将会非常明显的发现既不是url_allow_fopen也不是url_allor_include 被保障。这些只是因为过滤器很少对矢量进行过滤。能够100%解决这个URL include vulnerabilities的方法是我们的Suhosin扩展.

PHP 相关文章推荐
如何对PHP程序中的常见漏洞进行攻击
Oct 09 PHP
使PHP自定义函数返回多个值
Nov 26 PHP
php 自写函数代码 获取关键字 去超链接
Feb 08 PHP
php 多关键字 高亮显示实现代码
Apr 23 PHP
解析CI即CodeIgniter框架在Nginx下的重写规则
Jun 03 PHP
PHPExcel内存泄漏问题解决方法
Jan 23 PHP
php操作MongoDB类实例
Jun 17 PHP
thinkPHP订单数字提醒功能的实现方法
Dec 01 PHP
php获取目录中所有文件名及判断文件与目录的简单方法
Mar 04 PHP
[原创]PHP正则匹配中英文、数字及下划线的方法【用户名验证】
Aug 01 PHP
PHP批斗大会之缺失的异常详解
Jul 09 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
Mar 24 PHP
php strcmp使用说明
Apr 22 #PHP
PHP 加密解密内部算法
Apr 22 #PHP
PHP 根据IP地址控制访问的代码
Apr 22 #PHP
收集的二十一个实用便利的PHP函数代码
Apr 22 #PHP
让PHP开发者事半功倍的十大技巧小结
Apr 20 #PHP
php快速url重写 更新版[需php 5.30以上]
Apr 20 #PHP
一个PHP的String类代码
Apr 20 #PHP
You might like
跟我学Laravel之快速入门
2014/10/15 PHP
IIS下PHP的三种配置方式对比
2014/11/20 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
JQuery循环滚动图片代码
2011/12/08 Javascript
Javascript判断对象是否相等实现代码
2013/03/18 Javascript
简单几行JS Code实现IE邮件转发新浪微博
2013/07/03 Javascript
showModalDialog在谷歌浏览器下会返回Null的解决方法
2013/11/27 Javascript
用jquery仿做发微博功能示例
2014/04/18 Javascript
JQuery右键菜单插件ContextMenu使用指南
2014/12/19 Javascript
鼠标经过子元素触发mouseout,mouseover事件的解决方案
2015/07/26 Javascript
利用jsonp跨域调用百度js实现搜索框智能提示
2016/08/24 Javascript
jQuery实现返回顶部按钮和scroll滚动功能[带动画效果]
2017/07/05 jQuery
JS基于正则表达式实现的密码强度验证功能示例
2017/09/21 Javascript
vue的全局提示框组件实例代码
2018/02/26 Javascript
微信小程序实现团购或秒杀批量倒计时
2020/11/01 Javascript
解决layui上传文件提示上传异常,实际文件已经上传成功的问题
2018/08/19 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
使用FormData实现上传多个文件
2018/12/04 Javascript
使用kbone解决Vue项目同时支持小程序问题
2019/11/08 Javascript
Javascript地址引用代码实例解析
2020/02/25 Javascript
javascript递归函数定义和用法示例分析
2020/07/22 Javascript
微信小程序实现左滑删除效果
2020/11/18 Javascript
深入浅析Python科学计算库Scipy及安装步骤
2019/10/12 Python
解决ROC曲线画出来只有一个点的问题
2020/02/28 Python
Python爬取YY评级分数并保存数据实现过程解析
2020/06/01 Python
Python实现初始化不同的变量类型为空值
2020/06/02 Python
css3实现二维码扫描特效的示例
2020/10/29 HTML / CSS
HTML5移动端开发遇见的东西
2019/10/11 HTML / CSS
HTML5在微信内置浏览器下右上角菜单的调整字体导致页面显示错乱的问题
2021/01/19 HTML / CSS
《满井游记》教学反思
2014/02/26 职场文书
安全演讲稿大全
2014/05/09 职场文书
党在我心中演讲稿
2014/09/02 职场文书
小学生作文批改评语
2014/12/25 职场文书
房地产销售助理岗位职责
2015/04/14 职场文书
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL
python在package下继续嵌套一个package
2022/04/14 Python