PersonalCorpus 版 (精华区)

发信人: stary (到底想要什么,想追求什么。。。), 信区: Windows
标  题: 《Windows 2000漏洞集锦》  
发信站: 哈工大紫丁香 (2002年11月20日12:04:54 星期三), 站内信件

对于Windows 2000的强大的功能和全新的构架我们都不得不叹服微软的实力,可以预见Win
dows 2000将成为新一代服务器操作系统的主流,同时也成为黑客攻击的对象。但是由于新
的Windows2000的全新构架很大程度都依赖于Active Directory(又称之为AD),这使得许许
多多的管理员在忙于适应新的操作系统,和对原来的资料进行系统的迁移,而对Windows 
2000的安全性问题还没有引起足够重视。
  本文详细介绍黑客在攻击Windows 2000系统时经常利用的一些漏洞和具体步骤以及应
对策略,让网络系统管理员在维护系统时尽量做到有的放矢。有一句话非常有道理:“世
界上没有绝对愚蠢的系统,只有绝对愚蠢的管理员。”只要我们的网络管理员能够细心地
维护系统,相信黑客们是没有可乘之机的。 
登陆输入法漏洞
  这里我们首先介绍一个登录错误,也就是常说的输入法漏洞。当我们启动Windows2000
进行到登录验证的提示界面时,任何用户都可以打开各种输入法的帮助栏,并且可以利用
其中具有的一些功能访问文件系统,这也就是说我们可以绕过了Windows2000的用户登录验
证机制,并且能以最高管理员权限访问整个系统。所以说这个漏洞的危害性是很大的,而
且当我们进入系统后,还可以利用Terminal Server远程通信这个漏洞对系统进行攻击。默
认的Windows2000系统自带的输入法中有这个漏洞的是:智能ABC,微软拼音,内码,全拼,双
拼,郑码。所以就我感觉而言这个漏洞是首要修补的漏洞。
1、把不需要的输入法删除掉,例如郑码等。
2、但是毕竟我们不能把所有的自带输入法都删除,如果我们要使用有漏洞的输入法也可以
把那个输入法的帮助文件删除掉。这些帮助文件通常在win2000的安装目录下(如:C:\WINNT
)的\help目录下,对应的帮助文件是:
※ WINIME.CHM 输入法操作指南 
※ WINSP.CHM 双拼输入法帮助 
※ WINZM.CHM 郑码输入法帮助 
※ WINPY.CHM 全拼输入法帮助
※ WINGB.CHM 内码输入法帮助
3、微软公司对于此问题发布了MS00-069安全公告,并在互联网上给出了简体中文Windows2
000和英文版Windows2000的补丁。所以请尽快打上补丁。
NetBIOS的信息泄漏
   接下来我们谈一下NetBIOS的共享入侵.这个问题从NT刚发行到现在就从来没有解决。
而且它一直由来都是NT系统构架最常见的入侵手段。特别值得一提的就是那个IPC$Null 
session(空会话)在NT系统里都是已知的安全隐患。虽然打了SP3后可以通过修改注册表来
对其进行限制。但不知道为什么Windows2000还是原封不动地保留着这个空对话。那么就让
我们来看看空会话能给入侵者带来什么样的信息:
net use \\server\IPC$ "" /user:"" //此命令用来建立一个空会话
net view \\server //此命令用来查看远程服务器的共享资源
服务器名称      注释
-------------------------------------------------------
\\pc1
\\pc2
命令成功完成。
net time \\server //此命令用来得到一个远程服务器的当前时间。
nbtstat -A server //此命令用来得到远程服务器的NetBIOS用户名字表
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
NULL <00> UNIQUE Registered
NULL <20> UNIQUE Registered
INTERNET <00> GROUP Registered
XIXI <03> UNIQUE Registered
INet~Services <1C> GROUP Registered
IS~NULL...... <00> UNIQUE Registered
INTERNET <1E> GROUP Registered
ADMINISTATOR <03> UNIQUE Registered
INTERNET <1D> UNIQUE Registered
..__MSBROWSE__.<01> GROUP Registered
MAC Address = 00-54-4F-34-D8-80

  看看,只不过用了几个系统自带的命令就得到了如此多的信息,那么我们有什么办法
可以不让别人轻易得到这么多信息哪?
  仅靠单纯的修改注册表是一劳永逸的。

HKEY-LOCAL_MACHINE\SYSTEM\CurrentControSet\Control\LSA
value Name: RestrictAnonymous
Data Type: REG_DWORD
value: 1
  但如果一些服务你并不需要开放共享的话。那为什么不禁止它呢?在Windows2000里的
方法和NT4的略有不同。它没有限制TCP/IP绑定在NetBISO上,但是我们可以在Internet协
议(TCP/IP)属性的设置面板里选取高级(V)选项,然后选择TCP/IP 筛选,接着点选启用TCP
/IP筛选,最后在TCP端口点选只允许,然后就可以添加你所想开放的服务的端口了。
奇怪的系统崩溃特性
  此外Windows 2000有一个比较奇怪的特性,使用系统的终端用户可以通过按住右Ctrl
,同时Press两次Scrool Lock按键,就轻易可以让整个Windows2000系统完全的崩溃。但同
时又在C:\WinNT\下dump完整的当前系统内存记录,内存记录文件名是memory.dmp。当然,
这个奇怪的特性默认状态下是关闭的,但是我们可以通过修改注册表的方法把它激活:
1、运行regedt32.exe (Windows2000的32位注册表编辑器)
2、选择主键:
   HKEY_LOCAL_MACHINE\
   然后找到SYSTEM\下的CurrentControlSet\
   选择Services\
   进入i8042prt\中的Parameters
3、新建一个双字节值
4、将键名为CrashOnCtrlScroll
5、然后在设置一个不为零的值。
6、退出重启
  当这一切做完后,你就可以尝试让系统崩溃了,按下按键后的效果为黑屏,将会出现
以下信息:
*** STOP: 0x000000E2 (0x00000000,0x00000000,0x00000000,0x00000000)
The end-user manually generated the crashdump. 
  值得注意的是,这个奇怪的特性在WindowsNT4中也存在,不知道是不是微软程序员作
测试的一个小功能。不过要是有黑客或者病毒利用它,也是很危险的。
Telnet的拒绝服务攻击
  Windows中的Telnet一直以来都是网络管理员们最喜爱的网络实用工具之一,但是一个
新的漏洞表明,在Windows2000中Telnet在守护其进程时,在已经被初始化的会话还未被复
位的情况下很容易受到一种普通的拒绝服务攻击。而在2000年的2月份,拒绝服务攻击几乎
成为了所有大型网站的恶梦。
  Telnet连接后,在初始化的对话还未被复位的情况下,在一定的时间间隔之后,此时
如果连接用户还没有提供登录的用户名及密码,Telnet的对话将会超时。直到用户输入一
个字符之后连接才会被复位。如果恶意用户连接到Windows2000的Telnet守护进程中,并且
对该连接不进行复位的话,他就可以有效地拒绝其他的任何用户连接该Telnet服务器,主
要是因为此时Telnet的客户连接数的最大值是1。在此期间任何其他试图连接该Telnet服务
器的用户都将会收到如下错误信息:

Microsoft Windows Workstation allows only 1 Telnet Client LicenseServer has 
closed connection

  察看“列出当前用户”选项时并不会显示超时的会话,因为该会话还没有成功地通过
认证。
IIS服务泄漏文件内容
  这是一个NSFOCUS安全小组发现的漏洞。当微软IIS 4.0/5.0(远东地区版本)在处理包
含有不完整的双字节编码字符的HTTP命令请求时,会导致WEB目录下的文件内容被泄漏给远
程攻击者。
  Microsoft IIS远东地区版本包括中文(简体/繁体),日文,韩文版,由于特定的文字格
式使它们都是使用的双字节编码格式。而当IIS接收到用户提交的一个HTTP请求时,如果文
件名中包含非ASCII字符,IIS会检查这个字符是否为双字节编码中的前导字符(例如,日文
的前导字符包含两段字符:0x81-0x9F, 0xE0-0xFC)。如果是前导字符,它会继续检查下一
个字符是否为结尾字符。如果没有下一个字符,IIS会简单地丢弃这个前导字符,因为它并
没有构成一个完整的双字节编码。然而,这种处理将导致IIS打开不同的文件而不是用户在
请求中指定的文件。
  攻击者通过提交一个特殊格式的URL, 可以使IIS使用某个ISAPI动态链接库打开某种它
所不能解释的类型的文件,并获得该文件的内容。依赖于系统安装的ISAPI应用程序的类型
,攻击者可能获得WEB根目录或者虚拟目录下的文件内容,这些文件可以是普通文本文件(.
asp, .ini, .asa等等),也可以是二进制文件(.exe等等)。
  黑客们会使用Unicode的方法利用这个漏洞:
  Unicode(统一的字符编码标准, 采用双字节对字符进行编码)可以说是近一段时期以
来最为流行的攻击入侵手段,仅国内近期就有江民公司等几个大的网站被这种入侵手段攻
击。那我们就来谈一下这个很容易的利用Unicode漏洞配合IIS的漏洞进行入侵吧。
  上面我们提到过由于某些双字节的Windows2000在处理某些特殊字符时与英文版本不同
,然而利用这种IIS的漏洞,攻击者就可以通过这些特殊字符绕过IIS的目录审计远程执行
任意命令。
http://server/scripts/..%c1%1c../wi....exe?/c+dir+c:\
  黑客们其实只要下面两句很简单的指令绕过IIS的审计就能够对网站的页面进行改写,
所谓的黑了一个网站就是这么的简单。
http://server/scripts/..%c1%1c../wi...scripts\123.exe
http://server/scripts/123.exe?/c+echo+黑掉啦?+>+c:\inetpub\wwwroot\default.asp
  这个问题已经在IIS 4.0 + SP6中得到解决,然而微软却让它在IIS 5.0中再度出现。
  但该漏洞不会影响包括英语版在内的其他语言版本的IIS 4.0/5.0。
MS SQL Server的SA空密码攻击
  在Windows2000中,企业级的用户一般都会用到另一个微软的产品,这个产品就是数据
库管理软件 MS SQL Server,但是在与MS SQL Server配合使用中,我们发现了很多的问题
。最后我们就简单讲一下安装了MS SQL Server的Windows2000的网络操作系统普遍面临的
安全问题。
  在安装MS SQL Server后,MS SQL Server会将产生一个默认的SA用户,而且初始密码
在管理员没有设置的情况下为空。但是SA是SQL Server中非常重要的安全模块成员,这样
一来黑客们就可以通过SQL Server的客户端进行数据库远程连接,然后再通过SQL的远程数
据库管理命令xp_cmdshell stored procedure(扩展存储过程)来进行命令操作:
xp_cmdshell "net user id password /add"
Xp_cmdshell "net localgroup Administrators id /add"
  就以上两条简单的命令入侵者就能在MS SQL Server的服务器上马上新建一个管理员级
别的Administrators组的用户。所以我们这里提醒各位网管大人,在安装好SQL Server您
需要做的第一件事就是把SA的空密码立即进行修改。这个问题就不要我告诉你应该在哪里
改了吧?
  而且在一般情况下,一些功能对管理员来说也是没有必要的。如果你不需要MS SQL 
Server 的xp_cmdshell(use sp_dropextendedproc "xp_cmdshell")这项功能就不要把xp_c
mdshell extended stored proc(扩展存储过程)命令功能留着。

  我们只需要在isql窗口中输入:

use master
sp_dropextendedproc 'xp_cmdshell'

  然后打上Service Pack 3,这里提醒管理员们一下,一定要经常留意微软的补丁包文
件,并且注意及时的把系统和软件更新到最新的补丁。
  本文中我们讲述了几个近期来最为流行的漏洞和攻击方法,他们实现入侵是如此的方
便,这里可有不少的网友会认为Windows2000是一个不安全的操作系统,但如果你这样的认
为那就说明我的文章还没有写明白,所以在最后我要强调一下,只要我们常打补丁包,正
确的给系统加设密码,我们的安全率就在85%左右。

 
--
°·.∴▍★∴ ∵  ┏━┓←〓嗨嗨〓
☆.°·▍▍.☆█★ ┃爱┃ ★ ◆  
◥█▅▅██▅▅██ ┗━┛ ███◤
~~◥███I love u forever███◤~~-

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 218.7.25.219]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:6.656毫秒