by Ryat[puretot]
mail: puretot at gmail dot com
team: http://www.80vul.com
发现时间 2008-10-02
公开时间 2011-02-27
漏洞影响版本 2.1.0 2.1.1
状态 已修补
漏洞代码如下:
// go.php
$q_url=$_SERVER["REQUEST_URI"];
@list($relativePath, $rawURL)=@explode(‘/go.php/’, $q_url);
$rewritedURL=$rawURL; // 来自$_SERVER["REQUEST_URI"],可以任意提交的:)
…
$RewriteRules[]=”/component\/([^\/]+)\/?/”;
// 这个正则限制的不够细致,可以很轻易的绕过:)
… 阅读全文…
PHP正则表达式修饰符的应用是我们在进行PHP正则表达式开发的时候经常会使用的,那么关于PHP正则表达式修饰符我们需要掌握什么呢?那么本文就向你介绍详细内容。
我们在PHP正则表达式的学习中会碰到修饰符,那么关于PHP正则表达式修饰符的理解以及使用我们需要注意什么呢?那么我们来具体的看看它的概念以及相关内容。在学习PHP正则表达式修饰符之前先来理解下贪婪模式,前面在元字符中提到过”?”还有一个重要的作用,即”贪婪模式”,什么是”贪婪模式” 呢?
PHP正则表达式贪婪模式: 阅读全文…
当php的服务器端缺少libmcrypt.dll,使用函数mcrypt_module_open会出现此错误。
在服务器上做如下设置可解决。
下载一个libmcrypt.dll文件
1.将libmcrypt.dll复制到php安装目录下的ext目录下
2.到打开php.ini文件,打开它
3.找到; Directory in which the loadable extensions (modules) reside.
extension_dir = “./”
这两行,要使extension_dir指向的目录下能找到libmcrypt.dll(一般指向php安装目录下的ext目录就OK了)
5.找到;Windows Extensions 项下面的;extension=php_mcrypt.dll这一行,去掉前面的分号注释
#my5t3ry:网上转的,记录一下
serialize()和unserialize()在php手册上的解释是:
serialize — Generates a storable representation of a value
serialize — 产生一个可存储的值的表示
unserialize — Creates a PHP value from a stored representation
unserialize — 从已存储的表示中创建 PHP 的值
很显然,”a stored representation“的解释翻译成了一 个可存储的值后依然很让人非常费解它的意思。
如果语言已经无法表述清楚,那么我们可以以一个具体的PHP的例子来学习这两个函数的用途 阅读全文…