Windows 2000系统漏洞全解 2
Windows 2000系统漏洞全解 2 奇怪的系统崩溃特性
此外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../winnt/system32/cmd.exe?/c+dir+c:
黑客们其实只要下面两句很简单的指令绕过IIS的审计就能够对网站的页面进行改写,所谓的黑了一个网站就是这么的简单。
http://server/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+copy+c:winntsystem32cmd.exe+d:inetpubscripts123.exe
http://server/scripts/123.exe?/c+echo+黑掉啦?+>+c:inetpubwwwrootdefault.asp
这个问题已经在IIS 4.0 + SP6中得到解决,然而微软却让它在IIS 5.0中再度出现。
但该漏洞不会影响包括英语版在内的其他语言版本的IIS 4.0/5.0。