中国移动WEB服务器安全配置手册doc.docx
《中国移动WEB服务器安全配置手册doc.docx》由会员分享,可在线阅读,更多相关《中国移动WEB服务器安全配置手册doc.docx(38页珍藏版)》请在冰点文库上搜索。
中国移动WEB服务器安全配置手册doc
密级:
文档编号:
项目代号:
中国移动WEB服务器
安全配置手册
Version1.0
中国移动通信有限公司
二零零四年十二月
拟制:
审核:
批准:
会签:
标准化:
版本控制
版本号
日期
参与人员
更新说明
分发控制
编号
读者
文档权限
与文档的主要关系
1
创建、修改、读取
负责编制、修改、审核
2
批准
负责本文档的批准程序
3
标准化审核
作为本项目的标准化负责人,负责对本文档进行标准化审核
4
读取
5
读取
第1章.目的
本文的目标是为中移动企业范围内的Web服务应用提供安全配置的规范建议。
Web应用服务是互联网WWW应用的重要基础,在中国移动企业范围内安装和使用了大量的各种Web服务应用。
为了提高中国移动企业Web服务的安全性,降低由于Web服务配置不规范而造成的安全风险,特针对中国移动企业的重要典型Web服务提出了规范的配置安全加固建议。
第2章.范围
本文针对通用的HTTPWeb服务器的主机平台安全配置、HTTP服务安全配置提出了规范加固的要求。
并且对典型的HTTPWeb服务应用提出了具体的安全配置建议,如MicrosoftIISWeb服务、ApacheWeb服务。
Web服务器的加固方法包括了两个层面的工作,这就是平台安全配置和HTTPWeb服务安全配置。
首先,作为接受广泛用户网络访问的Web应用服务器,必须设置成为安全的堡垒主机,按照主机平台加固规范对Web服务器平台的操作系统进行安全设置,关闭所有非必要的网络服务、应用程序和系统组件等;其次,对于HTTPWeb服务进行安全设置,包括服务资源权限设置、用户帐号设置、远程管理安全设置、日志设置等。
第3章.Web服务安全加固原则
3.1.Web主机平台安全设置
3.1.1.主机安全标准加固规范
必须对Web服务器主机平台进行规范的安全加固,参照《中国移动操作系统安全配置手册》建立安全可靠的Web应用服务的主机运行环境。
此外,必须针对Web应用服务的特点进行安全设置。
3.1.2.用户权限设置
清晰的区分并定义主机管理员、Web应用服务管理员以及Web应用开发人员的帐号,并明确的定义其访问Web应用服务器的方式。
禁止普通用户通过网络登陆到主机系统。
3.1.3.事件日志设置
主机系统日志应记录Web应用服务的启动、关闭等操作,以及主机管理员、Web应用服务管理员、和应用开发人员的行为等。
事件日志应保存在安全保护的目录或者其它的安全主机系统中。
3.1.4.关闭非必要的服务和程序
主机系统应关闭所有非必要的服务,例如SMTP、FTP、DNS等。
如果需要使用网络服务,如FTP协助Web服务内容管理,必须严格按照FTP服务器加固规范进行安全设置,并且严格限制用户权限。
删除所有非必要的系统组件、应用程序,如C编译程序等。
3.2.Web服务安全设置
3.2.1.Web系统资源保护
Web系统资源是指Web服务的所在目录和文件。
Web系统资源应该安装在独立的目录或者文件系统中。
这些Web系统资源应该属于Web管理员拥有。
根据需要,严格控制其它用户对这些资源的访问。
严格禁止普通用户对Web系统资源的访问。
3.2.2.Web服务权限设置
此项是限制Web服务程序对于系统资源的访问权限。
目的是防止Web服务程序对系统机密信息的读写操作,从而造成对信息的泄漏或者破坏。
对于Web服务ID方式的系统,应严格限制Web服务ID其拥有系统管理员的权限,禁止其拥有非必要的系统特权;限制其所能访问的目录,根据需要,控制其资源的读权限;禁止对DocumentRoot以及其它系统目录的写权限。
而对DocumentRoot以及其下的目录,亦应限制除Web服务ID使用者外,其余用户均不具列出目录内所有档案之权限。
对于Web服务程序方式的系统,严格控制Web服务程序对系统目录和文件的执行、读写权限。
3.2.3.Web服务访问控制
Web服务系统提供配置文件对访问用户进行限制。
Web服务的缺省配置一般不做任何的用户访问限制,允许来自所有地址范围的访问。
建议根据业务需要,屏蔽或者允许指定地址范围的用户访问。
3.2.4.机密信息保护
Web系统必须具备SSL的安全加密机制。
如果Web服务器具有机密的信息内容,为了保护机密信息的传输安全,必须在Web系统中配置SSLV2.0128位加密功能,这能够有效保护用户客户端与Web服务器之间的数据安全传输,防止信息网络窃取。
3.2.5.日志设置
Web系统必须定义Web活动日志,记录WebServer的活动。
Web系统的日志目录和文件属于Web系统资源必须严格访问权限。
日志必须保存指定时间,以备系统审计和安全分析之用。
3.2.6.去除不必要的服务脚本
检查Web系统使用的服务脚本,如CGI,Perl等。
去除Web系统中与业务应用无关的各种服务脚本。
避免未经检验的服务脚本的引入而增加Web系统安全风险。
另外,对于正式上线的Web服务器,亦应移除所有相关的支持档案与范例档案,以避免恶意人员利用范例档案入侵。
第4章.IISWeb服务安全配置建议
4.1.审核策略设置
在本手册定义的三种环境下,IIS服务器的审核策略设置通过MSBP来配置。
有关MSBP的详细信息,请参阅Windows2000/2003安全配置手册中建立服务器安全基准部分。
MSBP设置可确保所有相关的安全审核信息都记录在所有的IIS服务器上。
4.2.用户权限分配
本手册中定义的三种环境中的IIS服务器的大多数用户权限分配都是通过MSBP配置的。
有关MSBP的详细信息,请参阅Windows2000/2003安全配置手册中建立服务器安全基准部分。
4.2.1.拒绝通过网络访问该计算机
表1:
设置
成员服务器默认值
旧客户端
企业客户端
高安全性
SUPPORT_388945a0
匿名登录;内置管理员帐户;Support_388945a0;Guest;所有非操作系统服务帐户
匿名登录;内置管理员帐户;Support_388945a0;Guest;所有非操作系统服务帐户
匿名登录;内置管理员帐户;Support_388945a0;Guest;所有非操作系统服务帐户
注意:
安全模板中不包含匿名登录、内置管理员帐户、Support_388945a0、Guest和所有非操作系统服务帐户。
对于组织中的每个域,这些帐户和组拥有唯一的安全标识(SID)。
因此,必须手动添加它们。
“拒绝通过网络访问该计算机”设置决定了哪些用户不能通过网络访问该计算机。
这些设置将拒绝大量的网络协议,包括服务器消息块(SMB)协议、网络基本输入/输出系统(NetBIOS)、通用Internet文件系统(CIFS)、超文本传输协议(HTTP)和组件对象模型(COM+)。
当用户帐户同时适用两种策略时,该设置将覆盖“允许通过网络访问该计算机”设置。
通过给其它组配置该用户权限,您可以限制用户在您的环境中执行委托管理任务的能力。
在建立服务器安全基准中,本手册建议将Guests组包含在被分配了该权限的用户和组列表中,以提供最大可能的安全性。
但是,用于匿名访问IIS的IUSR帐户被默认为Guests组的成员。
本手册建议从增量式IIS组策略中清除Guests组,以确保必要时可配置对IIS服务器的匿名访问。
因此,在本手册所定义的全部三种环境下,我们针对IIS服务器将“拒绝通过网络访问该计算机”设置配置为包括:
匿名登录、内置管理员、Support_388945a0、Guest以及所有非操作系统服务帐户。
4.3.安全选项
在本手册所的定义的三种环境中,IIS服务器的安全选项通过MSBP来配置。
有关MSBP的详细信息,请参阅Windows2000/2003安全配置手册中建立服务器安全基准部分。
MSBP设置确保了在企业IIS服务器中统一配置正确的事件日志设置。
4.4.事件日志设置
在本手册中定义的三种环境中,IIS服务器的事件日志设置通过MSBP来配置。
有关MSBP的详细信息,请参阅请参阅Windows2000/2003安全配置手册中建立服务器安全基准部分。
MSBP设置确保了在企业IIS服务器中统一配置正确的事件日志设置。
4.5.系统服务
为了让IIS向WindowsServer2003中添加Web服务器功能,则必须启用以下三种服务。
增量式IIS组策略确保了这些服务被配置为自动启动。
注意:
MSBP禁用了几种其它的IIS相关服务。
FTP、SMTP和NNTP就是MSBP所禁用的一些服务。
如果想要在本手册所定义的任何一种环境下的IIS服务器上启用这些服务,必须更改增量式IIS组策略。
4.5.1.HTTPSSL
表2:
设置
服务名
成员服务器默认值
旧客户端
企业客户端
高安全性
HTTPFilter
手动
自动
自动
自动
HTTPSSL服务可让IIS执行安全套接字层(SSL)功能。
SSL是建立加密通信渠道的一种开放标准,以防止诸如信用卡号等关键信息被中途截获。
首先,它使得在万维网上进行安全的电子金融事务成为可能,当然也可用它来实现其它Internet服务。
如果HTTPSSL服务停止,IIS将无法执行SSL功能。
禁用此服务将导致任何明确依赖它的服务都无法实现。
您可以使用组策略来保护和设置服务的启动模式,只允许服务器管理员访问这些设置,从而防止XX或恶意的用户配置或操作该服务。
组策略还可以防止管理员无意中禁用该服务。
因此,在本手册所定义的全部三种环境下,针对IIS服务器的需要将“HTTPSSL”设置配置为“自动”。
4.5.2.IISAdmin服务
表3:
设置
服务名
成员服务器默认值
旧客户端
企业客户端
高安全性
IISADMIN
没有安装
自动
自动
自动
“IISAdmin服务”允许对IIS组件进行管理,例如文件传输协议(FTP)、应用程序池、Web站点、Web服务扩展,以及网络新闻传输协议(NNTP)和简单邮件传输协议(SMTP)的虚拟服务器。
“IISAdmin服务”必须运行,以便让IIS服务器能够提供Web、FTP、NNTP以及SMTP服务。
如果禁用此服务,则无法配置IIS,并且对站点服务的请求将不会成功。
您可以使用组策略来保护和设置服务的启动模式,只允许服务器管理员访问这些设置,从而防止XX或恶意的用户配置或操作该服务。
组策略还可以防止管理员无意中禁用该服务。
因此,在本手册所定义的全部三种环境下,我们针对IIS服务器的需要将“IISAdmin服务”设置配置为“自动”。
4.5.3.万维网发布服务
表4:
设置
服务名
成员服务器默认值
旧客户端
企业客户端
高安全性
W3SVC
没有安装
自动
自动
自动
“万维网发布服务”通过IIS管理单元提供网络连通性和网站管理。
“万维网发布服务”必须运行,以便让IIS服务器通过IIS管理器提供网络连通性和管理。
您可以使用组策略来保护和设置服务的启动模式,只允许服务器管理员访问这些设置,从而防止XX或恶意的用户配置或操作该服务。
组策略还可以防止管理员无意中禁用该服务。
因此,在本手册所定义的全部三种环境下,我们针对IIS服务器的需要将“万维网发布服务”设置配置为“自动”。
4.6.其它安全设置
安装WindowsServer2003和IIS之后,默认情况下,IIS仅传输静态Web内容。
当Web站点和应用程序包含动态内容,或者需要一个或多个附加IIS组件时,每个附加IIS功能必须逐一单独启用。
但是,在该过程中必须谨慎,以确保在您的环境中将每个IIS服务器的受攻击面降至最小。
如果您的组织的Web站点只包含静态内容而无需其它任何IIS组件,这时,默认的IIS配置足以将您的环境中的IIS服务器的受攻击面降至最小。
通过MSBP应用的安全设置为IIS服务器提供大量的增强安全性。
不过,还是应该考虑一些其它的注意事项和步骤。
这些步骤不能通过组策略完成,而应该在所有的IIS服务器上手动执行。
4.6.1.仅安装必要的IIS组件
除“万维网发布服务”之外,IIS6.0还包括其它的组件和服务,例如FTP和SMTP服务。
您可以通过双击“控制面板”上的“添加/删除程序”来启动Windows组件向导应用程序服务器,以安装和启用IIS组件和服务。
安装IIS之后,必须启用Web站点和应用程序所需的所有必要的IIS组件和服务。
您应该仅启用Web站点和应用程序所需的必要IIS组件和服务。
启用不必要的组件和服务会增加IIS服务器的受攻击面。
有关IIS组件位置和建议设置的指导,请参阅如何识别WindowsServer2003中的IIS6.0组件。
4.6.2.仅启用必要的Web服务扩展
许多运行于IIS服务器上的网站和应用程序具有超出静态页面范畴的扩展功能,包括生成动态内容的能力。
通过IIS服务器提供的功能来产生或扩展的任何动态内容,都是通过使用Web服务扩展来实现的。
IIS6.0中增强的安全功能允许用户单独启用或禁用Web服务扩展。
在一次新的安装之后,IIS服务器将只传输静态内容。
可通过IIS管理器中的Web服务扩展节点来启用动态内容功能。
这些扩展包括ASP.NET、SSI、WebDAV和FrontPageServerExtensions。
启用所有的Web服务扩展可确保与现有应用软件的最大可能的兼容性。
但是,这可能带来一些安全性风险,因为当所有的扩展被启用时,同时也启用了您的环境下IIS服务器所不需要的功能,这样IIS的受攻击面就会增加。
为了尽可能减少IIS服务器的受攻击面,在本手册所定义的三种环境下,只应该在IIS服务器上启用必要的的Web服务扩展。
仅启用在您的IIS服务器环境下运行的站点和应用软件所必需的Web服务扩展,通过最大限度精简服务器的功能,可以减少每个IIS服务器的受攻击面,从而增强了安全性。
有关Web服务扩展的指导,请参阅如何识别WindowsServer2003中的IIS6.0组件。
4.6.3.在专用磁盘卷中放置内容
IIS会将默认Web站点的文件存储到\inetpub\wwwroot,其中是安装WindowsServer2003操作系统的驱动器。
在本手册所定义的三种环境下,应该将构成Web站点和应用程序的所有文件和文件夹放置到IIS服务器的专用磁盘卷中。
将这些文件和文件夹放置到IIS服务器的一个专用磁盘卷—不包含操作系统的磁盘卷—有助于防止目录遍历攻击。
目录遍历攻击是指攻击者对位于IIS服务器目录结构之外的一个文件发送请求。
例如,cmd.exe位于于\System32文件夹中。
攻击者可能请求访问以下位置:
..\..\Windows\system\cmd.exe,企图调用命令提示
如果Web站点内容位于一个单独的磁盘卷上,这种类型的目录遍历攻击将无法成功,原因有二。
首先,cmd.exe的权限已经作为WindowsServer2003基础结构的一部分进行了重设,从而将对它的访问限制在很有限的用户群中。
其次,完成该更改之后,cmd.exe不再与Web根目录处于同一磁盘卷,而目前没有任何已知的方法可通过使用这种攻击来访问位于不同驱动器上的命令。
除了安全性考虑之外,将站点和应用程序文件和文件夹放置在一个专用的磁盘卷中使诸如备份和恢复这样的管理任务变得更加容易。
而且,将这种类型的内容放在一个分开的专用物理驱动器中有助于减少系统分区中的磁盘争用现象,并且改善磁盘的整体访问性能。
4.6.4.设置NTFS权限
WindowsServer2003将检查NTFS文件系统的权限,以确定用户或进程对特定文件或文件夹具有的访问权限类型。
您应该分配相应的NTFS权限,以便在本手册定义的三种环境下,允许或拒绝特定用户对IIS服务器上站点的访问。
NTFS访问权限应当与Web访问权限协同使用,而不是取代Web权限。
NTFS权限只影响那些已经被允许或被拒绝访问站点和应用程序内容的帐户。
Web权限则影响所有访问站点或应用程序的用户。
如果站点权限与NTFS权限在某个文件夹或目录上发生冲突,限制性更强的设置将生效。
对于不允许匿名访问的站点和应用程序,匿名帐户访问将被明确拒绝。
当没有经过身份验证的用户访问系统资源时,就是匿名访问。
匿名帐户包括内置“Guest”帐户、“Guests”组和“IISAnonymous”帐户。
此外,除了IIS管理员之外,对其它任何用户都应该清除所有的写权限。
下表提供了关于NTFS权限的一些建议,这些权限将应用于IIS服务器上不同的文件类型。
不同的文件类型可以被组织在不同的文件夹中,以简化应用NTFS权限的过程。
表5:
NTFS权限
文件类型
建议的NTFS权限
CGI文件(.exe、.dll、.cmd、.pl)
Everyone(执行)
Administrators(完全控制)
System(完全控制)
脚本文件(.asp)
Everyone(执行)
Administrators(完全控制)
System(完全控制)
包含文件(.inc、.shtm、.shtml)
Everyone(执行)
Administrators(完全控制)
System(完全控制)
静态内容(.txt、.gif、.jpg、.htm、.html)
Everyone(只读)
Administrators(完全控制)
System(完全控制)
4.6.5.设置IISWeb站点权限
IIS将检查Web站点权限,以确定在Web站点中可能发生的操作类型,例如允许脚本源访问或允许文件夹浏览。
您应该为Web站点分配权限,以便进一步保证IIS服务器上的站点在本手册定义的三种环境下的安全性。
Web站点权限可与NTFS权限结合使用。
它们可配置给特定的站点、文件夹和文件。
与NTFS权限不同,Web站点权限影响试图访问IIS服务器站点的每个人。
Web站点权限可以通过使用IIS管理器管理单元得到应用。
下表列举了IIS6.0支持的Web站点权限,并且提供了简要描述,解释如何为Web站点分配给定的权限。
表6:
IIS6.0Web站点权限
Web站点权限:
授予的权限:
读
用户可查看目录或文件的内容和属性。
在默认情况下,该权限为选中状态。
写
用户可更改目录或文件的内容和属性。
脚本源访问
用户可以访问源文件。
如果启用“读”权限,则可以读取源文件;如果启用“写”权限,则可以更改脚本源代码。
脚本源访问包括脚本的源代码。
如果既不启用“读”权限,也不启用“写”权限,则此选项将不可用。
要点:
启用“脚本源访问”时,用户可以查看敏感信息,例如用户名和密码。
他们还可以更改IIS服务器上运行的源代码,从而严重影响服务器的安全性和性能。
目录浏览
用户可以查看文件列表和集合。
日志访问
每次访问Web站点都会创建日志条目。
索引此资源
允许使用索引服务索引资源。
这样便可以对资源执行搜索。
执行
以下选项确定用户运行脚本的级别:
“无”—不允许在服务器上运行脚本和可执行文件。
“仅限于脚本”—仅允许在服务器上运行脚本。
“脚本和可执行文件”—允许在服务器上运行脚本和可执行文件。
4.6.6.配置IIS日志
本手册建议在指南定义的三种环境下均启用IIS服务器上的IIS日志。
可以为每个站点或应用程序创建单独的日志。
IIS可以记录MicrosoftWindows®操作系统提供的事件日志或性能监视功能所记录信息范围之外的信息。
IIS日志可记录诸如谁访问过站点、访客浏览过哪些内容、以及最后一次访问的时间等信息。
IIS日志可被用来了解那些内容最受欢迎,确定信息瓶颈,或者用作协助攻击事件调查的资源。
IIS管理器管理单元可以用来配置日志文件格式、日志计划以及将被记录的确切信息。
为限制日志的大小,应当对所记录信息的内容进行仔细规划。
当IIS日志被启用时,IIS使用W3C扩展日志文件格式来创建日常操作记录,并存储到在IIS管理器中为站点指定的目录中。
为改善服务器性能,日志文件应当存储到系统卷以外的条带集或条带集/镜像磁盘卷上。
而且,您还可以使用完整的全局命名约定(UNC)路径将日志文件写到网络上以便远程共享。
远程日志让管理员能够建立集中的日志文件存储和备份。
但是,通过网络对日志文件进行写操作可能会对服务器性能带来负面影响。
IIS日志可以配置为使用其它几种ASCII或开放数据库连接(ODBC)文件格式。
ODBC日志让IIS能够将活动信息存储到SQL数据库中。
但是,应该注意,当启用ODBC日志时,IIS将禁用内核模式缓存。
因此,执行ODBC日志会降低服务器的总体性能。
存放数以百计的站点的IIS服务器通过启用集中的二进制日志来改善日志性能。
集中化的二进制日志允许IIS服务器将所有Web站点的活动信息写到一个日志文件上。
这样,通过减少需要逐一存储和分析的日志文件的数量,大大地提高了IIS日志记录过程的可管理性和可伸缩性。
有关集中化二进制日志的更多信息,请参阅MicrosoftTechNet主题“CentralizedBinaryLogging”,其网址为:
当IIS日志按默认设置存储在IIS服务器中时,只有服务器管理员有权访问它们。
如果日志文件的文件夹或文件的所有者不在“LocalAdministrators”组中时,HTTP.sys—IIS6.0的内核模式驱动程序—将向NT事件日志发布一个错误。
该错误指出文件夹或文件的所有者不在“LocalAdministrators”组中,并且这个站点的日志将暂时失效,直到其所有者被添加到“LocalAdministrators”组中,或者现有的文件夹或文件被删除。
4.6.7.向用户权限分配手动添加唯一的安全组
大多数通过MSBP应用的用户权限分配都已经在本手册附带的安全性模板中进行了适当的指定。
但是,有些帐户和安全组不能被包括在模板内,因为它们的安全标识符(SID)对于单个的Windows2003域是特定的。
下面给出了必须手动配置的用户权限分配。
警