DEDECMS网站管理系统Tag.php页面存在SQL注入漏洞
添加时间:
2008-10-04
系统编号:
WAVDB-01238
影响版本:
DedeCms2007
程序介绍:DedeCms 基于PHP+MySQL的技术开发,支持Windows、Linux、Unix等多种服务器平台,从2004年开始发布第一个版本开始,至今已经发布了五个大版本。DedeCms以简单、健壮、灵活、开源几大特点占领了国内CMS的大部份市场,目前已经有超过二十万个站点正在使用DedeCms或居于DedeCms核心,是目前国内应用最广泛的php类CMS系统。
漏洞分析:
目录下的tag.php文件对变量$tag处理不当,导致注入漏洞的形成:
- if(isset($_SERVER[ QUERY_STRING ])){
- $tag = trim($_SERVER[ QUERY_STRING ]);
- $tags = explode(
- /
- ,$tag);
- $tag = $tags[1];
- if(count($tags)>3) $PageNo = intval($tags[2]);
- }else{
- $tag = ;
- }
- $tag = urldecode($tag);
- ”
-
- if($tag== || $tag!=addslashes($tag) ){
- 、 、\等字符则执行
- $dlist = new TagList($tag,
- tag.htm
- );
- ”
- }
-
- else{
- $dlist = new TagList($tag,
- taglist.htm
- );
- }
-
- 类TagList相关代码:(./include/inc_taglist_view.php)
-
- class TagList
- {
- ..
- var $Tag;
- ..
-
- function __construct($keyword,$templet)
- {
- ..
- $this->Tag = $keyword;
- ..
- if($this->Tag!=
-
- )
- {
- $this->TagInfos = $this->dsql->GetOne( Select * From `#@__tag_index` where tagname like
- {$this->Tag}
- );
- }
解决方案:厂商补丁:
Dedecms 2007
----------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.dedecms.com信息来源:<*来源:toby57 [www.toby57.cn]*>