影响版本:
dedecmsCMS V5.5
停止2010-03-18 17:50之前下载的所有版本,包罗GBK和UTF-8版本
破绽形貌:
北洋贱队(http://bbs.seceye.org)首发
demo1:http://www.dedecms.com/plus/search.php?keyword=%22%3E%3Ciframe%20src=http://www.gohack.org%3E&searchtype=titlekeyword&channeltype=0&orderby=&kwtype=1&pagesize=10&typeid=0&TotalResult=%3Ciframe%20src=http://www.gohack.org%3E&PageNo=2
demo2:http://www.dedecms.com/plus/list.php?tid=6&TotalResult=%3Ciframe%20src=http://www.gohack.org%3E&nativeplace=0&infotype=0&keyword=&orderby=hot&PageNo=2
破绽缘故原由:
变量过滤不严酷和未准确初始化变量。
解决办法:
search.php 重置关键字变量
list.php 加上变量TotalResult的类型磨练
dedecms v5.5的修改方式:修改的文件时list.php
dedecms v5.1的修改方式:修改的文件时search.php文件
list.php使用了以后有个问题会出现就是totalResult默认下为0,这样查看列表页时就始终显示第一页,推荐使用如下写法:
$TotalResult = (isset($TotalResult) && is_numeric($TotalResult) ? $TotalResult : null);
也就是把0换成null,即可!