漏洞信息详情
DCForum可预测口令产生机制漏洞
- CNNVD编号:CNNVD-200205-006
- 危害等级: 高危
- CVE编号:
CVE-2002-0226
- 漏洞类型:
未知
- 发布时间:
2002-01-31
- 威胁类型:
远程
- 更新时间:
2005-05-02
- 厂 商:
dcscripts - 漏洞来源:
shimi shimi@jct.ac… -
漏洞简介
DCForum是一种基于WEB的会议系统,设计用于在线讨论。它是用Perl实现的,几乎没有系统相关性,可以运行于Linux、Windows以及绝大多数Unix变体上。
DCForum口令产生机制上存在漏洞,可能使远程攻击者得到用户的初始口令。
注册新用户时如果DCForum选用Email方式通知新用户初始口令,此时系统采用的初始口令产生机制与用户丢失口令后申请新口令时采用机制是类似的。而这个口令产生机制导致即将产生的口令是可预测的,意味着新用户填写一个虚假的Email地址,仍然可以获取自己的初始口令。
在Lib/user_register.pl中有如下代码
<snip>
if ($r_in->{\’\’command\’\’} eq \’\’register\’\’) {
</snip>
<snip>
if ($r_setup->{\’\’auth_register_via_email\’\’} eq \’\’on\’\’) {
my $session = get_session_id();
$r_in->{\’\’password\’\’} = substr($session,3,6);
</snip>
产生的口令仅仅是用户SessionID中第3个字符开始的6个字符(从1开始计)。任何了解如
何在cookie中查看一个值的用户都可以获取这个口令。
漏洞公告
临时解决方法:
如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
* 修改程序:
1) 在retrieve_password.pl中找到如下代码
$new_password = substr($new_password,1,6);
删除这行代码,替换成
srand(time|$$);
$new_password = int (rand(100000000));
2) 在user_register.pl中找到如下代码
$r_in->{‘password’} = substr($session,3,6);
删除这行代码,替换成
srand(time|$$);
$new_password = int (rand(100000000));
厂商补丁:
DC Scripts
———-
目前厂商已经6.22版软件中修复了这个安全问题,请到厂商的主页下载:
http://www.dcscripts.com/dcforum.shtml” target=”_blank”>
http://www.dcscripts.com/dcforum.shtml
参考网址
来源: BID
名称: 4014
链接:http://www.securityfocus.com/bid/4014
来源: XF
名称: dcforum-cgi-recover-passwords(8044)
链接:http://www.iss.net/security_center/static/8044.php
来源: BUGTRAQ
名称: 20020201 Vulnerability in all versions of DCForum from dcscripts.com
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=101258311519504&w=2
来源: www.dcscripts.com
链接:http://www.dcscripts.com/bugtrac/DCForumID7/3.html
来源: OSVDB
名称: 3866
链接:http://www.osvdb.org/3866
来源: OSVDB
名称: 2038
链接:http://www.osvdb.org/2038