进入Internet时代之后,几乎所有的单位都借助IIS架设了自己的网站,并希望借助网络扩展知名度。但是由于目前诸如红色代码、尼姆达之类的网络病毒泛滥,一不小心就会让你的网站遭到灭顶之灾。那么怎样增强网站的安全呢?有了下文介绍的两款工具,就可以帮助管理员对服务器进行设置,使得网站更加安全。
一、增强IIS安全设置
Internet Information Servives Lockdown(以下简称为IIS Lockdown)是一款针对IIS4/5定制的一款增强安全设置软件,它可以按照http://download.microsoft.com/download/iis50/Utility/2.1/NT45XP/EN-US/iislockd.exe地址链接下载得到。IIS Lockdown的特点在于使用非常简便,只需在安装过程中进行适当的设置即可完成设置操作,因此对于水准不高的管理员尤其适合。
1、安装IIS Lockdown首先会看见图1所示的向导(附图1),根据这里的提示,我们在下面的设置中应该选择针对自己网站所使用的最少服务功能,而且在设置完成以后还要对网站进行检查,以便确定各种设置对网站是否适用。
2、点击“下一步”按钮之后需要选择本网站的服务类型,其中列表提供了小型商业服务器、基于Outlook的Exchange服务器、FrontPage扩展服务器、代理服务器、动态网页服务器等等,一般根据实际情况选择相近的类型即可(附图2)。
提示:建议选中“View template settings”复选框,这样可以对具体的各种服务进行设置。
{%FY: %}
3、接下来,IIS Lockdown会根据前面选择的服务类型显示出相关的各种服务,比如我们前面选择的是小型商业服务器,那么在此就有HTTP、FTP和SMTP三种服务器类型(附图3),在此按照需要选取即可。
4、继续点击“下一步”按钮对各种脚本映射进行设置(附图4),这里几项分别对应着动态网页、索引服务、服务器端程序、Internet数据库连接、htr映射和Internet打印。对于这些脚本映射,需要大家针对自己服务器的实际功能进行选择,尽量屏蔽服务器中没有使用到的功能,一方面可以减轻系统负担,同时可以防止利用这些服务漏洞的病毒和黑客攻击服务器。
5、下一步操作中,我们可以选择一些IIS默认安装文件的保留与否(附图5)。这里主要有IIS范例目录、脚本虚拟目录、MSDAC虚拟目录、IIS管理目录、IIS帮助目录等项目,由于一般不需要在服务器上阅读这些文件,而且这些文件的存在有可能让攻击者利用来阅读部分网页源程序代码,所以都要取消这些文件。
另外,这里还有匿名用户运行诸如cmd.exe和tftp.exe的可执行文件、匿名用户对目录具有写权限的设置,建议大家都选择取消,因为红色代码和尼姆达就是利用了这些漏洞对服务器进行攻击。至于WEBDAV主要是允许管理者远程编写和修改页面,一般也将其取消,这样能够避免IIS中可能导致服务器停止的WebDav漏洞。
6、继续之后,IIS Lockdown就根据前面的设置来取消相应的系统服务,最终完成时候可以看见图6所示的界面(附图6)。
虽然IIS Lockdown运行结束之后没有提示重新启动计算机,但是出于安全考虑,则建议大家手工重新启动IIS,或者直接重新启动计算机,这样才能够让IIS运行在新的配置规则下。
{%FY: %}
二、过滤非法地址访问
如果你的网站是直接采用IIS搭建的,那么无论是Windows NT还是Windows 2000 Server集成的IIS都存在一些安全隐患,比如可以在网页地址后面添加“::$data”来查看ASP网页的源代码,或者通过运行网页中的可执行文件对网站进行攻击。因此,为了有效的防护网站,必须要对这些非法地址访问进行过滤,这时不妨试试这款个头小巧但是功能强大的URLScan。
URLScan可以从http://download.microsoft.com/download/1/9/8/198a7fdf-1057-4668-9f44-035f8faeaf95/Setup.EXE地址链接下载得到,它的主要功能是可以帮助管理员针对自己的网站制定出一套地址访问规则,因此能够对非法地址访问请求进行拦截。
在安装好URLScan之后,可能大家会觉得比较奇怪:为什么“开始”菜单的程序组中没有运行项目?而且资源管理器中也找不到它的文件呢?其实URLScan在安装的时候直接安装在“X:/Windows/System32/InetSvr/URLScan”目录中(X:/Windows是Windows NT或者Windows 2000 Server的安装目录),在这个文件夹中有urlscan.dll、urlscan.inf、urlscan.txt和urlscan.ini四个文件,其中urlscan.ini文件很重要,所有的过滤规则都是通过这个文件来进行配置的。
用文本编辑器打开urlscan.ini文件之后,可以看见它和其它配置文件一样采用了节的方式,下面就把主要的几项简单介绍一下(附图7):
1、配置【Option】
因为Option节的设置会对其它配置内容产生影响,因此这里的设置就要格外注意。
1)UseAllowVerbs:使用允许模式检查URL请求。如果设置为1,则所有不在【AllowVerbs】中的请求都被拒绝;如果设置为0,所有不在【DenyVerbs】中的URL请求都会生效。一般设置为1。
2)UseAllowExtensions:使用允许模式检测文件扩展名。如果设置为1,则所有不在【AllowExtensions】中的文件扩展名都是非法请求;如果设置为0,则所有不在【DenyExtensions】中的扩展名均被认为是合法请求。一般设置为0。
3)EnableLogging:是否允许使用Log文件。如果为1,则使用urlscan.log文件记录所有的过滤信息,一般设置为1。
4)AllowHighBitCharacters:设置为1将允许URL中存在所有字节,如果为0则禁止URL中含有非ASCII字符,一般设置为1。
5)AllowDotInPath:如果设置为1,将拒绝所有含有多个“.”的URL请求,但是由于URL检测在IIS解析URL之前进行,所以这一检测的准确性不能完全信任。
2、配置【AllowVerbs】
如果【Option】中的UseAllowVerbs设置为1,那么这里的所有请求将被允许,一般设置GET、HEAD、POST等请求。
3、配置【DenyVerbs】
如果【Option】中的UseAllowVerbs设置为0,那么这里的所有请求将拒绝,一般设置PROPFIND、PROPPATCH、MKCOL、DELETE、PUT、COPY、MOVE、LOCK、UNLOCK等请求。
4、设置【AllowExtensions】
在这里可以设置URL地址中的扩展名文件请求,一般的asp、htm、html、txt、jpg、gif等网页常用的文件应该允许,而且对于rar、zip之类的文件也可以根据需要建立请求。
5、配置【DenyExtensions】
在这一节设置的所有扩展名文件请求将被拒绝,我们可以对asa、可执行文件、批处理文件、日志文件以及已经发现的漏洞进行配置。
在上述两个工具的帮助下,我们就可以对采用IIS组建的网站服务器增强安全性设置了。不过世上没有不透风的墙,这两款软件也只是在某些方面适当增强服务器的安全,我们还要时刻关注各种新出现的漏洞,并对其进行针对性的设置,这样才能真正确保服务器的安全。