Discuz!论坛程序存在路径信息泄露缺陷


添加时间:
2008-12-09

系统编号:
WAVDB-01271

影响版本:
Discuz!6.0.0-6.1.0

程序介绍:

Crossday Discuz! Board 论坛系统(简称 Discuz! 论坛)是一个采用 PHP 和 MySQL 等其他多种数据库构建的高效论坛解决方案。作为商业软件产品, Discuz! 在代码质量,运行效率,负载能力,安全等级,功能可操控性和权限严密性等方面都在广大用户中有良好的口碑。凭借 Discuz! 开发组长期积累的丰富的 web 开发及数据库经验,和强于创新,追求完美的设计理念,使得 Discuz! 在很短时间内以其鲜明的个性特色从国内外同类产品中脱颖而出。经过了效率最优化和负载能力最佳化设计的 Discuz! ,已获得业内越来越多专家和权威企业的认可。

漏洞分析:

目录\uc_client\data\cache\,\forumdata\cache等下面的文件里对如:

 
  1. $_CACHE['settings'] = array (  
  2.   'accessemail' => '',  
  3.   'censoremail' => '',  
  4.   'censorusername' => '',  
  5.   'dateformat' => 'y-n-j',  
  6.   'doublee' => '1',  
  7.   'nextnotetime' => '0',  
  8.   'timeoffset' => '28800',  
  9. );  
  10.   
  11.   
  12. $_DCACHE['settings'] = array (  
  13.   'accessemail' => '',  
  14.   'adminipaccess' => '',  
  15.   'admode' => '1',  
  16.   'archiverstatus' => '1',  
  17.   'attachbanperiods' => '',  
  18.   'attachimgpost' => '1',  

 

数组$_DCACHE,$_CACHE等没有初始化,其实dz的安全人员已经考虑到了这个问题,如在include\common.inc.php 

 
  1. $_DCOOKIE = $_DSESSION = $_DCACHE = $_DPLUGIN = $advlist = array();  

但是想对于独立的Discuz! cache file并没有初始化,当我们提交?_CACHE=1 或者_DCACHE=2 导致错误而暴露路径等信息.



漏洞利用:

http://www.80vul.com/bbs/forumdata/cache/cache_usergroups.php?_DCACHE=1 Notice: Array to string conversion in xxx\forumdata\cache\cache_usergroups.php on line 6

解决方案:
厂商补丁:
Discuz!
-------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.discuz.net/

信息来源:
<*
80vul
http://www.80vul.com/dzvul/sodb/12/sodb-2008-12.txt
*>