PHP教程:allow

PHP常常因为它可能允许URLS被导入和执行语句被人们指责。事实上,这件事情并不是很让人感到惊奇,因为这是导致称为Remote URL Include vulnerabilities的php应用程序漏洞的最重要的原因之一。

因为这个原因,许多安全研究人员建议在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扩展.

时间: 2024-11-02 18:29:09

PHP教程:allow的相关文章

解决win7系统无法进入操作中心的方法教程

  Windows操作中心是一个查看警报和执行操作的中心位置,它可帮助保持 Windows 稳定运行,不过在win7系统下,windows操作中心貌似很少用户会进入查看,不过不能因为我们不经常使用而对其不理不睬,近期有部分使用win7系统的用户向小编反映,在即的windows操作中心无法打开,对于出现该问题的用户我们应该如何解决呢?下面看小编为大家带来的解决方法! 解决win7系统无法进入操作中心的方法教程 1.首先,我们同时按下win7电脑键盘上的win+R快捷键打开电脑的运行窗口,在打开的运

解决win7系统所有中文显示乱码的方法教程

  在win7系统下我们如果把语言操作系统界面语言修改为英文后,有部分用户的电脑中的英文字体将显示乱码的问题,对于出现该问题是因为中文不是Unicode语言,用户在将系统语言设置为英文后,语言设置的非Unicode设置出问题而导致的,故此我们需要将非Unicode的语言修改为中文语言即可解决这个问题,下面我们看下具体的操作教程吧! 解决win7系统所有中文显示乱码的方法教程 1.点击开始菜单图标并单击打开控制面板. 2.在区域和语言设置-管理中,选择更改显示语言. 3.选择管理标签,并点击更改系

win7下使用U盘安装Ubuntu Kylin完全详解教程

安装失败了好几次,看了很多篇博客,最后终于成功了,并且做了这个win7下使用U盘安装Ubuntu的教程,希望能给大家带来帮助! 详细的图文步骤如下: 部分操作步骤转自 http://blog.csdn.net/dreamthen/article/details/8765472,感谢. 1.本次使用的是64位的ubuntu Kylin桌面版,iso镜像可以自己去官网下载,大约700MB 2.  将系统拷进U盘,制成u盘启动系统. 4.将电脑划分出来一个空盘,大小20G 足矣,也可以根据个人喜好,分

xcode-学习objective-c 基础教程遇到问题 例题03.06 word-length-3 编译出错

问题描述 学习objective-c 基础教程遇到问题 例题03.06 word-length-3 编译出错 #import int main(int argc, const char * argv[]) { FILE *wordFile = fopen ("/tmp/words.txt", "r"); char word[100]; while (fgets(*word,99,wordFile)) \这一行编译出现"Thread 1:EXC_BAD_AC

VHD安装Windows8系统图文教程

ImageX 是一个命令行工具,它可以在操作系统映像中使用共享的映像格式来创建.修改和部署映像.VHD是微软虚拟磁盘文件,Win7(专业版以上)及Win8原生支持从VHD启动.利用这两项技术实现win7.win8双系统,痛快的体验win8.优点是不必单独拿一个分区来装win8.卸载方便(省掉折腾硬盘分区.卸载时win8分区合并回去的麻烦),对原系统无影响,与实机安装几乎无差别的性能体验.缺点是不能休眠,无法完成系统评分,只适用于Windows 7,8,Windows Server 20008 R

Win8系统硬盘安装详细图文教程

Win8的RTM正式版的已经发布了MSDN下载,RTM的build是9200,和Win7不同的是,Win8只有两个版本,一个是类似Win7 家庭版的Core核心版,一个是类似Win7旗舰版和专业版二合一的Pro专业版,而安装方法也不同,Win8无论是核心版还是专业版,都是使用一个镜像进行安装,区别是输入的安装码不同,而安装不同的版本. Win8相关推荐: U盘安装Windows8教程 Windows 8 RTM正式版下载 1.首先下载上面链接给出的Win8,然后用winrar.winzip.7Z

硬盘安装Windows 8系统图文教程

没有光驱.没有光盘.没有U盘,照样安装一个全新的Windows 8!什么?你不信?那就看看软件小品如何教你使用硬盘安装一个全新的Windows 8!看了这篇图文并茂的硬盘安装Window8详细教程,我就不信你学不会!好了,开始动手吧! 一.准备工作: 可以正常工作的Windows xp/7操作系统以及容量大于3.5G的非系统分区; Windows 8 硬盘安装引导工具 nt6 hdd installer ; Windows 8 微软官方安装镜像(以下称Windows 8 镜像). 二.开始安装:

Photoshop打造另类脸面撕裂效果教程

今天我们就来教大家如何制作出这种撕裂的效果! 教程附上反相效果: 接下来我们开始讲解如何制作出这种效果,现在大家先准备好一张美女图片,然后跟着我们的步骤一步步的操作下去,最后你就能得到你想要的效果了! 第1步:打开素材图片,解锁背景图层.然后还要将画布调大些:点击菜单[图像],[画面大小],在原有的数值上各加大一些,如图示.之后在该图层下方新一个白色填充层. 第2步:载入图像选区(Ctlr+单击图像图层),新建并填充黑色图层,位于图像下方.然后再将该层向右下移动若干像素,变形,如图.拉开右下角,

PS为美女添加超级时尚的奇异发饰教程

教程效果 原图 本教程需要用到的:星光笔刷和雪花笔刷下载 1.打开素材,复制背景图层. 2.随便再介绍一下,简易磨皮方法,利用选取颜色法:选择--色彩范围,用吸管点脸上皮肤颜色.快捷键Ctrl+J,得到新图层,Ctrl点击继续选上,添加蒙板.再用画笔,黑色的前景色,去掉头发跟周围部份.继续点滤镜--高斯模糊 分类: PS图片处理

PhotoShop为照片添加梦幻光斑效果教程

photoshop教程梦幻光斑效果和形状是怎么形成的呢? 小编先向大家介绍一下光斑的拍摄吧! 其实圆形的大光斑是镜头光圈全打开时就会形成的.而收缩光圈时,有多少瓣光圈叶片就会形成多少角型的光斑.所以,如果是五瓣光圈叶片的,就只能形成五边形的光斑了.但是,有些镜头光圈叶片做得很圆,在收缩光圈的时候也会形成圆形光斑.而半圆形光斑,这是属于一种叫"口径蚀"的情形,通常发生在照片的边缘,尤其是大光圈镜头容易出现.有人认为这是镜头的一种先天缺陷. 但是,在很多情况下,我们的机器又或者是环境的因素