BUGTRAQ ID: 32476 WordPress是一款免费的论坛Blog系统。 WordPress的wp-includes/feed.php文件中的self_link()函数用于为ATOM和RSS 2.0源中的<atom:link>标签生成绝对URL: function self_link() { echo 'http' . ( $_SERVER['https'] == 'on' ? 's' : '' ) . '://' . $_SERVER['HTTP_HOST'] . wp_specialchars(stripslashes($_SERVER['REQUEST_URI']), 1); } 这个函数没有过滤HTTP_HOST变量,而WordPress在wp-settings.php中用转义后变量替换了所有$_SERVER变量: $_SERVER = add_magic_quotes($_SERVER); 几乎在所有设置中add_magic_quotes()都会对单元运行mysql_real_escape_string()并返回修改过的数组,而这种转义方式在标记环境中是不安全的。向WordPress安装发布恶意的请求可能导致在文档的root目录中生成包含有跨站脚本的文件。 WordPress < 2.6.5 WordPress --------- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: <a href=http://wordpress.org/development/2008/11/wordpress-265/ target=_blank>http://wordpress.org/development/2008/11/wordpress-265/</a>
BUGTRAQ ID: 32476 WordPress是一款免费的论坛Blog系统。 WordPress的wp-includes/feed.php文件中的self_link()函数用于为ATOM和RSS 2.0源中的<atom:link>标签生成绝对URL: function self_link() { echo 'http' . ( $_SERVER['https'] == 'on' ? 's' : '' ) . '://' . $_SERVER['HTTP_HOST'] . wp_specialchars(stripslashes($_SERVER['REQUEST_URI']), 1); } 这个函数没有过滤HTTP_HOST变量,而WordPress在wp-settings.php中用转义后变量替换了所有$_SERVER变量: $_SERVER = add_magic_quotes($_SERVER); 几乎在所有设置中add_magic_quotes()都会对单元运行mysql_real_escape_string()并返回修改过的数组,而这种转义方式在标记环境中是不安全的。向WordPress安装发布恶意的请求可能导致在文档的root目录中生成包含有跨站脚本的文件。 WordPress < 2.6.5 WordPress --------- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: <a href=http://wordpress.org/development/2008/11/wordpress-265/ target=_blank>http://wordpress.org/development/2008/11/wordpress-265/</a>