扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
难道IIS(Internet Information Services)就真是“脆弱”的吗?难道拥有全球市场排名第一的Apache就坚不可摧?其实这些问题只是我们对服务器安全问题的曲解,在IIS 6没有推出以前,我一直忙着对IIS 5 修修补补,也确实过了一段提心吊胆的日子。我们完全有理由相信,经过调整后的IIS足以让我们值得信赖。
解释几个常见漏洞
1. 缓冲区溢出
简单解释一下,缓冲区溢出主要因为提交的数据长度超出了服务器正常要求,导致服务器检查代码错误。而溢出的方法有可以分为:基于堆栈的溢出和基于堆的溢出。在IIS 6以前的版本,Web服务是运行在LocalSystem账户下,当某个黑客利用缓冲区溢出的漏洞入侵后,当然就可以执行大部分的管理员命令了。
利用该漏洞比较名的病毒是“红色代码(Redcode)”和“尼姆达(Nimda)”。eEye Digital Security 公司早于1996年就发现了这类漏洞的代表作HTR缓冲区漏洞。eEye发现,IIS抵抗力十分脆弱。如果攻击传递给IIS,那么输入值将不是一串字母而是可以执行的系统命令。HTR文件的解释程序是将一个以.htr结尾的超长文件在ism.dll中造成输入缓冲区溢出。
我们早已用不到HTR了(笔者个人的理解),那只是早些时候,微软脚本编程用到的,早已经被ASP技术取代。
说明:根据上文的说明我们知道一个漏洞的根源就是.htr文件与System32目录下的ism.dll存在着关联,如果将ism.dll和.htr文件之间存在的映射关系断开,或者删除了ism.dll,就可以解决了。
2.臭名昭著的Unicode
首先要知道什么是Unicode二次解码漏洞?打开IE,选择“查看→编码→Unicode(UTF-8)”,在没有创造Unicode之前,没有一个编码可以包含足够的字符来容纳数百种的数字编码。比如我们要看一个繁体中文(BIG5)的网页,在你的简体中文版的Windows 系统上,没有Unicode的支持就不可能实现。
如果非法用户提交一些特殊的编码,将导致IIS错误地打开或者执行某些Web根目录以外的文件。那么,未经授权的用户可以利用IUSR_machinename账号访问用户目录的任何文件。同时,我们有知道这个账号在默认情况下属于Everyone和Users组,Windows 2000 Server默认的安全权限是“Everyone完全控制”因此任何能被这些用户组访问的文件都可能被删除、修改或执行。
说明:可以限制网络用户访问和调用CMD命令的权限;若没必要使用Scripts和Msadc目录,可以删除或者重新命名;还有一个问题,安装Windows NT系统时不使用默认的WINNT路径。
3.FrontPage 服务器扩展漏洞
对于安装FrontPage服务器的网站,通常会在Web目录(缺省)下有若干个以字母“_vti”开头的目录,正是这些目录为黑客提供了可乘之机。我们可以从搜索引擎上搜索默认的Frontpage目录,这时我们能从引擎上返回大量的信息。
说明:你真的需要FrontPage 服务器扩展吗?我是从来没有用过,这都是默认安装的时候为我们带来的隐患。如果不需要,直接卸载了该服务就没问题了。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者