主题潜在 XSS 安全问题修正

感谢这位朋友的提醒,我对所有主题可能存在的 XSS 安全问题进行了修正。

这次更新实际上在8月4号就已经完成,涉及 UnnamedUnnamed Special EditionBlue MemoriesSpring

由于之前已经针对 functions.php 做了一次大面积的修正,所以 Unnamed 1.2 及以上版本只涉及两处改动,使用者可以用新版本的 theloop.php 和 livesearch.js.php 替换原有文件即可。或者如果你愿意手动修改代码,可以将 theloop.php 中的

printf(__(’Search Results for \’%s\”,’unnamed’), $s);

替换为:

printf(__(’Search Results for \’%s\”,’unnamed’), attribute_escape(stripslashes(get_query_var(’s’))));

并使用下面的代码替换 livesearch.js.php 的最后一行:

FastInit.addOnLoad( function() { new Livesearch(’searchform’, ‘<?php bloginfo(’template_url’); ?>/livesearch.php’, ’searchquery=’, ‘<?php echo attribute_escape(__(’Type and Wait to Search’,'unnamed’)); ?>’); } );

类似的,Blue Memories 需要替换原有的 theloop.php,而 Spring 需要替换原有的 theloop.php 和 searchform.php。

而 Unnamed Special Edition 由于之前并未对此问题作特殊处理,所以建议进行一次整体更新,如果是从 1.02 更新的话,需要替换 theloop.php,livesearch.js.php 和 functions.php。

I’ve fixed some XSS vulnerabilities in Unnamed, Unnamed Special Edition, Blue Memories and Spring. Please download the latest versions to fix the problem.

Great thanks to Phoenix and Vite Digitali.

This entry is filed under , , , , , . You can follow any responses to this entry through RSS 2.0 . You can leave a response, or trackback from your own site.

5 Responses to “主题潜在 XSS 安全问题修正”


  1. fxl

    一个问题,我的博客留言如果输入中文提示没有输入评论内容,输入英文就可以。什么问题?

  2. fxl

    关闭实时评论选项就正常了。

  3. totoro

    Xu 你好,我在yo2上使用了你的模板(中文版),由于平台的限制,这款模板出现了不少的问题,比如选定模板后将它设为私有模板就不能使用livesearch等功能,这些先不去管它了.
    现在我想解决的一个问题是,在搜索框的下方总是出现”本文分类于xxx.您可以订阅本文评论的RSS.您可以 发表评论, 或者引用本文 到您的站点.” 在你的博客上我看到这段话上所包含的链接都是正确无误的,但是在yo2平台上,这些链接都是固定为博客的第一篇文章,不管打开哪篇文章,链接都是没有变化的.
    我想把这段话去掉,当然最好是能通过别的手段实现它的正常功能.anyway,你能不能指点一下如何修改?

  4. Xu Yiyang

    @totoro:
    1.我不清楚yo2的情况,不清楚模板是否被修改过。

    2.如果你想去掉那段文字,你可以尝试把sidebar.php中自第7到第36行代码去掉,大约是这样这一大段:

    <?php /* Category Archive */ if (is_category()) { ?>

    ……

    <?php } ?>

    注意:这里的sidebar.php对应的是1.217及以上版本的,旧版本行号可能会不一样,但需要删去的内容差不多。

  5. totoro

    谢谢,已经改好了,把文章信息的那一段代码移到了文章下方就正常了。

Leave a Reply