设为首页
加入收藏
帮助中心
首页 | 红盾通告 | 信息中心 | ASP技术 | 数据库 | 网页设计 | 网管专栏 | OICQ攻略 | 墨客频道 | 网站运营 |
当前位置:首页 >> 网管专栏 >> WEB服务 >> 正文
最新信息
·windows 2003服务器的iis6…
·解决w3wp.exe内存占用问题…
·IIS服务、ASP.NET引擎以及…
·保护Internet信息服务(IIS…
·提高IIS 5.0网站服务器的执…
·如何用IIS建立高安全性Web…
·如何启用iis的带宽限制
·彻底掌握IIS6.0功能及应用…
·彻底掌握IIS6.0功能及应用…
·DZ论坛在WIN服务器下不能使…
资料搜索
热点信息
·为网站设置自定义404错误页…
·重启iis提示不支持此接口的…
·如何启用iis的带宽限制
·DZ论坛在WIN服务器下不能使…
·DCOM出错 BA126AD1-2166-1…
·IIS常见返回错误编号
·IIS监控--自动重启脚本工具
·IIS性能优化
·在Win2003下配置Apache+ph…
·安全设置 IIS 中的权限
推荐信息
·解决w3wp.exe内存占用问题…
·阿帕奇 HTTP 服务器参考手…
·一个IP建多个Web站点--主机…
·在Wind2003中为Web站点配置…
·在Win2003下配置Apache+ph…
·如何启用iis的带宽限制
·win2000server IIS和tomca…
·Servlet/JSP配置详解(基础…
·IIS6 和Tomcat5 的整合
·win2000下jsp平台搭建的简…


Google
 
IIS5安全策略设计概要
〖编辑:Cloudy | 浏览:人次〗

IIS5是Windows2000操作系统所带的Internet服务程序包,它包含了www、ftp、smtp以及index server等等众多实用功能。无论是创建一个Internet外部站点,还是构造一个Intranet内部应用,使用IIS5都是非常好的选择。同时,如何保障IIS5安全稳定运行、内容发布正确可靠,这是系统管理员必须高度重视的问题。本文就IIS5的安全策略设计进行概要分析,旨在让大家从宏观角度了解系统管理员都应在哪些方面执行必要的安全配置,然后根据实际环境再在各个环节分别扩展,最终创建一个安全的IIS5服务器。 

为虚拟目录设置适当的访问权限
正确设置虚拟目录的访问权限,将会很大程度地影响其中文件的安全可靠性。建议考虑以下几个方面的设置原则:
文件类型 建议的访问权限 
CGI 程序(.exe, .dll, .cmd, .pl) Everyone (X)
Administrators (Full Control)
System (Full Control) 
脚本文件(.asp) Everyone (X)
Administrators (Full Control)
System (Full Control) 
包含文件(.inc, .shtm, .shtml) Everyone (X)
Administrators (Full Control)
System (Full Control) 
静态文件 (.txt, .gif, .jpg, .html) Everyone (R)
Administrators (Full Control)
System (Full Control) 

为不同类型的文件创建不同的目录 
如果一个虚拟目录下面有多种类型的文件,按照上面的原则为每一种文件设置访问权限,无疑是非常烦琐的事情。因此,我们可以采取为不同类型文件创建不同目录的方式,然后再按照上面的原则为每一个目录设置相应的访问权限。比如,我们可以创建如下的目录结构: 
C:\inetpub\wwwroot\myserver\static:存放静态文本文件(.html) 
C:\inetpub\wwwroot\myserver\include:存放包含文件(.inc) 
C:\inetpub\wwwroot\myserver\script:存放脚本文件(.asp) 
C:\inetpub\wwwroot\myserver\executable:存放可执行文件(.exe,.dll, .cmd, .pl) 
C:\inetpub\wwwroot\myserver\images:存放图形文件(.gif,.jpeg) 

另外,请注意以下2个特殊的目录:

C:\inetpub\ftproot:FTP服务所在目录 
C:\inetpub\mailroot:SMTP服务所在目录 

这2个目录的访问权限是Everyone 完全控制(Full Control),每个用户都具有向其中添加数据的权限。这样,就有可能造成目录所在磁盘的空间耗尽。因此,我们建议:

将这2个目录放置到另外的磁盘卷中,与其他的IIS服务程序分开。 
使用Windows 2000 磁盘配额功能限制添加到这2个目录的数据量。 

为IIS日志文件设置适合的访问权限 
IIS日志文件记录了所有访问IIS服务程序的信息,它对于系统管理员检测故障非常重要。攻击者为了销毁他们的侵入痕迹,总是要想方设法删除掉日志文件。因此,我们建议对这些日志文件进行重点保护,设置如下的访问权限:

Administrators (Full Control) 
System (Full Control) 
Everyone (RWC) 

IIS日志文件一般位于如下路径:%systemroot%\system32\LogFiles。

使用日志文件 
日志文件对于检查服务器是否被攻击是极为重要的。日志文件有多种,我们建议使用"W3C扩充日志文件格式",步骤如下:

启动"Internet服务管理器" 
点击鼠标右键选择要设置的站点,在从弹出菜单中选择"属性" 
点击"Web站点"选项卡 
点击选中"启用日志记录"复选框 
从"活动日志格式"下拉选择框中选择"W3C 扩充日志文件格式" 
点击"属性" 
点击"扩充的属性"选项卡,然后依次选中如下属性: 
客户IP地址 
用户名 
方法 
URI资源 
HTTP状态 
Win32状态 
用户代理 
服务器IP地址 
服务器端口 


点击小图放大

以上最后2个属性只当一个计算机充当多个Web服务器时有意义,也就是所谓的虚拟主机。属性"Win32状态"对于调试非常有用,当它的数值等于5时,表示禁止访问(access denied)。我们可以在命令行执行如下命令得到其他的"Win32状态码"所表示的含义:
net helpmsg err
其中err表示Win32状态码。

禁止或者删除所有的例子程序 
默认安装选项中,例子程序不会被安装到机器中。对于一个正式应用的服务器,我们不应该在其中安装任何例子程序。如果已经安装了某些例子程序,建议将它们完整删除掉。为了查找方便,以下我们列出一些例子程序的默认安装路径:
例子程序类别 所在虚拟目录 默认安装路径 
IIS例子程序 \IISSamples c:\inetpub\iissamples 
IIS文档 \IISHelp c:\winnt\help\iishelp 
Data Access \MSADC c:\program files\common files\system\msadc 

删除虚拟目录IISADMPWD 
这个虚拟目录的作用是允许用户重新设置他们在Windows NT或者Windows 2000操作系统上的帐号口令,应用环境主要针对企业内部网Intranet。IIS5的安装中没有包含这一项,但是如果是从IIS4升级到IIS5,就会存在这个虚拟目录。建议如果不是Intranet环境,就将之删除。

删除不使用的应用程序映射关联 
IIS默认情况下可以解释如.asp、.htr、.shtm等应用程序文件,当这些文件被IIS接收后,将交由一个DLL文件处理。如果使用不到其中某类文件,我们建议将删除那个类型在IIS中的映射关系。步骤如下:

启动"Internet服务管理器" 
点击鼠标右键选择要处理的服务器,再选择"属性"


点击小图放大


选择"WWW服务",点击"编辑" 

点击小图放大


点击"主目录" 

点击小图放大


点击"配置",显示出当前"应用程序映射"列表 

点击小图放大


然后参照下表删除相关类别: 
如果不使用下列应用 就删除掉以下项目 
基于Web的口令修改 .htr 
Internet数据库连接器 (注意:所有的IIS5 Web服务器将使用ADO等相似技术代替数据库连接器) .idc 
服务器端包含文件(Server-side Includes) .stm, .shtm, and .shtml 
Internet打印 .printer 
索引服务(Index Server) .htw, .ida and .idq 

关于Internet打印服务,我们再说明一点。Internet打印可以通过Internet服务管理器进行配置,也可以通过组策略进行配置。当两者的配置间发生冲突时,以组策略的配置信息优先。如果在Internet服务管理器中删除了Internet打印,请记住不要再在本地或者域组策略中激活它。默认的组策略配置中,既不激活也不禁止Internet打印。在组策略中配置Internet打印的方法是:在MMC的组策略管理单元中,点击"计算机配置",点击"管理模板",点击"打印机",最后点击"基于Web的打印":


点击小图放大

设置IP地址或者DNS域名地址的访问限制 
如果Web站点只对特殊IP地址的客户服务,我们建议对Web站点执行IP地址限制的设置。如果设置是DNS域名信息,请注意,这会导致IIS执行DNS搜索工作,耗费一定的时间。

确认可执行文件的安全性 
在访问网站内容时,IIS经常要执行一些.DLL文件。DLL文件属于可执行文件,可能会读写硬盘文件内容,所以最好确保其安全性。但是,如何判断DLL文件的安全性,却不是个简单的事情。这里介绍一个叫做DumpBin程序,它可以判断出可执行文件是否调用了某个API函数。比如说,我们使用下面的命令判断文件MyISAPI.dll是否调用了RevertToSelf: 
dumpbin /imports MyISAPI.dll | find "RevertToSelf" 
命令执行后,如果屏幕上没有任何输出信息,就表明MyISAPI.dll没有直接调用RevertToSelf。

更新IIS服务器上的根权威认证机构发放的证书(Root CA Certificates)
要完成更新工作,需要2个步骤:

首先,添加一个我们信任的新根权威认证机构发放的证书,特别是通过Microsoft认证服务2.0创建的新根权威认证机构证书。 
然后,删除所有不被我们信任的根权威认证机构发放的证书。一般情况下,不被信任的机构就是指我们还不认识的机构。 

所有被IIS使用的根权威认证机构证书都存储在计算机中,我们可以按照下列步骤访问它们:

在"开始/运行"中输入mmc,点击"确定",启动Microsoft管理控制台,即MMC 
从"控制台"菜单中选择"添加/删除管理单元",点击"添加" 
选择"证书",点击"添加" 
点击"计算机帐户"选项 
点击"下一步" 
选择要访问的机器 
点击"完成" 
点击"关闭",点击"确定" 
扩展"证书"节点 
扩展"受信任的根证书颁发机构" 
选择"证书" 


点击小图放大


这时,在右边窗口格中显示出当前所有的受信任的根证书颁发机构发放证书的资料。我们可以根据实际情况,删除不需要的证书。但是请格外注意,不要删除Microsoft公司或Verisign公司的相关证书,因为它们被操作系统广泛地使用。

禁止或删除不需要的COM组件
对于大多数应用程序不需要的COM组件,我们就应该考虑将其删除,比如说"文件系统对象"(File System Object)组件。请注意,如果删除了"文件系统对象"组件,"目录对象"(Dictionary object)组件也将被删除。但是提醒一点,有些程序可能需要禁止的组件,比如说,Site服务器3.0就使用到"文件系统对象"组件。删除"文件系统对象"组件的命令是: regsvr32 scrrun.dll /u。 

重点检查ASP代码中的<FORM>输入内容和查询输入内容
许多站点都使用来自用户的输入信息去调用其他代码或者直接创建SQL命令。换言之,输入内容被假设为格式正确和语法正确。但是我们千万不能这么掉以轻心!许多攻击者就是在输入内容中填写非法代码从而巧妙偷窥服务器的内容,甚至造成数据的毁坏。因此,我们要特别重视检查来自<FORM>的输入内容或者查询字符串信息,只有其符合安全要求,才能进一步传递给下一个程序进行处理。
我们可以使用Jscript版本5和VBScript版本5的常规表达式功能检查文本信息的合法性。来看看几个例子。
下面的代码是除去字符串中所有非字母、非数字以及非_的字符:
Set reg = New RegExp
reg.Pattern = "\W+"
strUnTainted = reg.Replace(strTainted,"")
下面的代码是除去|操作符后的所有文本:
Set reg = New RegExp
reg.Pattern = "^(.+)\|(.+)"Anycharacter from the start of
' the string to a | character.
strUnTainted = reg.Replace(strTainted,"$1") 

另外,当使用"文件系统对象"组件打开或创建文件时,如果文件名取自用户的输入内容,那么很可能被攻击者利用去试图打开一个计算机的串口或者打印机设备。为了防止这个问题发生,我们可以使用下面的Jscript代码除去非法文件名: 
var strOut = strIn.replace(/(AUX|PRN|NUL|COM\d|LPT\d)+\s*$/i,"");
从以上几个简单的实例,我们可以看到脚本引擎版本5处理字符串的强大功能。微软站点有关于脚本应用的详细文档与例程,地址如下:
文档:http://msdn.microsoft.com/scripting/default.htm 
例程:http://msdn.microsoft.com/workshop/languages/clinic/scripting051099.asp

禁止父路径(Parent Paths)表达法
默认情况下,可以在函数中使用父路径".."。但是为了安全考虑,我们应该禁止这个功能,步骤如下: 

在"Internet服务管理器"中右键点击要处理服务器的"默认Web站点",从弹出菜单中选择"属性 " 
点击"主目录"选项卡 
点击"配置" 
点击"应用程序选项"选项卡 
去除"启用父路径"复选框 


录入时间:2006-05-24 20:37:11 [打印本页] [关闭窗口] [返回顶部]
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

Copyright © 2006-2014 0733168.Com Inc All Rights Reserved
关于我们 | 广告合作 | 联系我们 | 法律声明 | 友情链接 | 意见反馈
本站所收录信息、社区话题、及本站所做之广告均属其个人行为,与本站立场无关
湘ICP备06008436号