1、密 级:文档编号:项目代号:中国移动公司FTP服务器安全配置手册Version 1.0中国移动通信有限公司十一月拟 制:审 核:批 准:会 签:标准化:版本控制版本号日期参与人员更新说明分发控制编号读者文档权限与文档的重要关系1创建、修改、读取负责编制、修改、审核2批准负责本文档的批准程序3标准化审核作为本项目的标准化负责人,负责对本文档进行标准化审核4读取5读取目 录1 FTP安全问题51.1 FTP概述51.2 FTP的包过滤(Packet Filtering)方式51.3 匿名FTP服务61.4 FTP代理服务器61.5 FTP的安全问题71.5.1 FTP安全缺陷71.5.2 FTP易
2、受的袭击72 IIS 5.0 FTP服务器的安全配置82.1 Windows 2023及IIS 5.0的安全配置82.1.1 Windows 2023安全配置82.1.2 IIS的安全配置122.2 IIS 5.0 FTP服务器的安全配置152.2.1 取消匿名访问功能162.2.2 启用日记记录162.2.3 对的设立用户访问权限172.2.4 启用磁盘配额172.2.5 TCP/IP访问限制192.2.6 合理设立组策略193 IIS 6.0 FTP安全配置213.1 概述213.2 系统服务213.3 安全设立223.3.1 仅安装必要的 IIS 组件223.3.2 仅启用必要的 Web
3、 服务扩展223.3.3 在专用磁盘卷中放置内容233.3.4 设立 NTFS 权限243.3.5 设立 IIS Web 站点权限253.3.6 配置 IIS 日记263.3.7 保护众所周知帐户的安全273.3.8 保护服务帐户的安全283.3.9 用 IPSec 过滤器阻断端口283.4 IIS 6.0 安全加强最佳实践303.4.1 通用最佳安全实践303.4.2 IIS最佳安全实践304 Wu-FTP的安全配置314.1 严禁匿名登录324.2 新增用户334.3 让用户只能访问自身的home目录334.4. 不能存取 shell344.5 拟定wu-ftpd是否存在SITE EXEC
4、安全漏洞345 安全检查列表351 FTP安全问题1.1 FTP概述FTP(File Transfer Protocol)即文献传输协议,用来从一台机器传送文献到另一台机器上。可以使用FTP来传送任何类型的文献,涉及二进制文献、图形文献、ASCII文本文献、PostScript打印文献、音频及视频文献等。有两种类型的FTP访问,即有名和匿名FTP。有名FTP规定用户在服务器上有帐号,当他登录时他可以拥有他应当拥有的一切资源。匿名FTP是为了那些在服务器上没有帐号的人提供的,重要是用来使用户访问一些公用资源。1.2 FTP的包过滤(Packet Filtering)方式包过滤即是只基于TCP/I
5、P包的检测。FTP使用两个独立的TCP连接:一个在服务器和客户程序之间传递命令和结果(通常称为命令通道);另一个用来传送真实的文献和目录列表(通常称为数据通道)。在服务器上,命令通道使用众所周知的端标语21,数据通道为端标语20。客户程序则在命令和数据通道上分别使用大于1023的端口(根据TCP/IP协议,端口相应于INTERNET应用层,不同的应用层客户程序有其缺省的端标语,如FTP为20、21,HTTP为80)。在开始一个FTP的连接时,客户程序一方面为自己分派两个大于1023的TCP端口,它使用第一个端口作为命令通道端口与服务器连接,然后发出PORT命令(通常是PORT C,C,C,C,
6、F,F,其中C,C,C,C为客户端IP地址,F,F为第二个端标语),告诉服务器它的第二个作为数据通道的端标语,这样服务器就能打开数据通道了。大多数FTP服务器(特别是那些用在INTERNET上的重要匿名FTP站点)和许多FTP客户程序都支持一种客户程序打开命令通道和数据通道来连接到FTP服务器的修改方式,这种方式被称之为反向方式或PASV方式。在使用反向方式时,一个FTP客户程序需要分派两个TCP端口供其使用。第一步同正常方式,但客户程序通过PASV命令代替本来PORT命令来告诉服务器客户程序的第二个TCP端口。这样就能使服务器为自身的数据通道分派第二个TCP端口,并告知客户程序所分派的那个端
7、标语。这时,客户程序就从它的数据通道的端口连接到服务器刚才告知它的那个端口上。通过FTP包过滤方式的分析可以知道,一个TCP连接可以从防火墙外部实现,即一个外部FTP服务器会接通一个到内部的客户程序的数据通道的连接,来响应从内部的客户程序发出的命令通道连接。正是这种方式,一方面可以允许客户程序通过FTP代理服务器连接其他FTP服务器,另一方面也给网络带来了不安全性。1.3 匿名FTP服务匿名服务(AnonymousService)的登录名用anonymous,而口令通常可用用户的Email代替。正是这种服务方式方便了用户,但也不可避免地带来了问题,如客户登录后,往往可以获得一个可写目录(通常是
8、/incoming),这样客户就可以通过PUT上载一个甚至是多个TXT文献,来达成其袭击该FTP服务器或其他FTP服务器的目的,虽然许多FTP服务器都限制匿名用户的权限,如执行权,而许多FTP服务器同HTTP服务器同装在一台机器上,那么匿名用户完全可以运用该可写目录运营命令调用HTTP服务器执行。1.4 FTP代理服务器通过FTP代理服务器连接到匿名服务器,而不是直接同其连接,重要基于两种原由:其一,无法直接连接,如防火墙的存在;其二,出于不被匿名服务器知晓其IP地址,或者基于ATTACK,或者基于匿名服务器限制客户登录(通过限制IP地址范围)。所以对于防火墙内的客户来说,它必须一方面运营FT
9、P命令并通过作为主机的防火墙连接,连接完毕后,必须说明用户名和连接的地点,在认证该地点的确允许之后,代理就与远程系统上的FTP服务器建立连接,用用户提供的用户名开始登录。然后远程服务器提醒用户输入口令,假如口令对的则连接被允许。对于非防火墙内用户,它可以通过任意代理服务器来连接其目的服务器,并达成隐藏其地址的目的。因对于目的服务器而言,其知道的仅仅是代理服务器的地址。1.5 FTP的安全问题1.5.1 FTP安全缺陷1.5.1.1 用户欺骗FTP使用标准的用户名口令的认证方法。这就使服务器不能可靠地拟定一个用户是否他所声称的那个人。 1.5.1.2 明文传输默认情况下,口令以明文方式传输。这就
10、使袭击者通过电子窃听获得口令。FTP会话没有加密因此没有隐蔽性。 1.5.2 FTP易受的袭击 1.5.2.1 FTP的跳(bounce)袭击FTP跳袭击的目的是配置为拒绝来自指定IP地址(或IP地址掩码)连接的主机。通常一个入侵者的IP地址正好在限制区域,因此他不能访问FTP服务器的目录。为了克服这种限制,入侵者使用另一台机器来访问目的机器。 为了实现这种方法,入侵者向中介FTP目录写一个文献,该文献包具有连接到目的机器并获得一些文献的命令。当该中介连接目的主机时,使用它自己的地址(而不是入侵者的地址)。因此,目的主机信任该连接请求并返回规定的文献。 1.5.2.2 文献许可权限错误权限错误
11、就是袭击者发现目的主机上错误的文献和目录权限获得特权甚至根用户访问权来达成入侵的目的。 1.5.2.3 SITE EXEC漏洞SITE EXEC漏洞就是在初期的wu-ftpd版本允许远程用户通过向21端口发起telnet会话获得shell。为了检查有没有该漏洞,启动一个与21端口的telnet对话并发出命令SITE EXEC。假如获得shell,就存在该漏洞。 2 IIS 5.0 FTP服务器的安全配置2.1 Windows 2023及IIS 5.0的安全配置2.1.1 Windows 2023安全配置2.1.1.1 基本规定l 保证所有磁盘分区为NTFS分区 l 操作系统、Web主目录、日记
12、分别安装在不同的分区l 不要安装不需要的协议,比如IPX/SPX, NetBIOSl 不要安装其它任何操作系统l 安装Service Pack 4l 安装最新的hotfix 具体可参考微软网站: 2.1.1.2 Windows 服务设立l 关闭所有不需要的服务* Alerter (disable) * ClipBook Server (disable)* Computer Browser (disable)* DHCP Client (disable)* Directory Replicator (disable)* FTP publishing service (disable)* Lice
13、nse Logging Service (disable)* Messenger (disable)* Netlogon (disable)* Network DDE (disable)* Network DDE DSDM (disable)* Network Monitor (disable)* Plug and Play (disable after all hardware configuration)* Remote Access Server (disable)* Remote Procedure Call (RPC) locater (disable)* Schedule (dis
14、able)* Server (disable)* Simple Services (disable)* Spooler (disable)* TCP/IP Netbios Helper (disable)* Telephone Service (disable)l 在必要时严禁如下服务* SNMP service (optional)* SNMP trap (optional)* UPS (optionall 设立如下服务为自动启动* Eventlog ( required )* NT LM Security Provider (required)* RPC service (required
15、)* WWW (required)* Workstation (leave service on: will be disabled later in the document)* MSDTC (required)* Protected Storage (required)2.1.1.3 删除 OS/2 和 POSIX 子系统: l 删除如下目录的任何键:HKEY_LOCAL_MACHINESOFTWARE MicrosoftOS/2 Subsystem for NTl 删除如下的键:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession
16、ManagerEnvironmentOs2LibPathl 删除如下的键:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManagerSubSystemsOptionalHKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManagerSubSystemsPosixHKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManagerSubSystemsOS2l 删除如下目录:c:winntsystem32os22.1.
17、1.4 帐号和密码策略l 保证严禁guest帐号l 将administrator改名为比较难猜的帐号l 密码唯一性:记录上次的 6 个密码l 最短密码期限:2l 密码最长期限:42l 最短密码长度:8l 密码复杂化(passfilt.dll):启用l 用户必须登录方能更改密码:启用l 帐号失败登录锁定的门限:6l 锁定后重新启用的时间间隔:720分钟2.1.1.5 保护文献和目录将C:winnt, C:winntconfig, C:winntsystem32, C:winntsystem等目录的访问权限做限制,限制everyone的写权限,限制users组的读写权限2.1.1.6 注册表一些条
18、目的修改l 去除logon对话框中的shutdown按钮将HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrent VersionWinlogon 中ShutdownWithoutLogon值设为0l 去除logon信息的cashing功能将HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrent VersionWinlogon中CachedLogonsCount值设为0l 隐藏上次登陆的用户名将HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrent
19、VersionWinlogon中DontDisplayLastUserName值设为1l 限制LSA匿名访问将HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLSA中RestricAnonymous值设为1l 去除所有网络共享将HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanManServerParameters中AutoShareServer值设为02.1.1.7 启用TCP/IP过滤只允许TCP端口80和443(假如使用SSL),不允许UDP端口,只允许IP Protocol 6 (TC
20、P)。2.1.1.8 移动部分重要文献并加访问控制创建一个只有系统管理员可以访问的目录,将system32目录下的一些重要文献移动到此目录:xcopy.exe, wscript.exe, cscript.exe, net.exe, ftp.exe, telnet.exe,arp.exe, edlin.exe,ping.exe,route.exe,at.exe,finger.exe,posix.exe,rsh.exe,atsvc.exe, qbasic.exe,runonce.exe,syskey.exe,cacls.exe, ipconfig.exe, rcp.exe, secfixup.ex
21、e, nbtstat.exe, rdisk.exe, debug.exe, regedt32.exe, regedit.exe, , netstat.exe, tracert.exe, nslookup.exe, rexec.exe, cmd.exe2.1.1.9 安装防病毒软件2.1.1.10 使用Hisecweb.inf安全模板来配置该模板配置基本的 Windows 2023 系统安全策略。 l 将该模板复制到 %windir%securitytemplates 目录。 l 打开“安全模板”工具,查看这些设立。 l 打开“安全配置和分析”工具,然后装载该模板。 l 右键单击“安全配置和分析
22、”工具,然后从上下文菜单中选择“立即分析计算机”。 l 等候操作完毕。 l 查看结果,如有必要就更新该模板。 l 右键单击“安全配置和分析”工具,然后从上下文菜单中选择“立即配置计算机”。2.1.2 IIS的安全配置2.1.2.1 关闭并删除默认站点: l 默认FTP站点 l 默认Web站点l 管理Web站点2.1.2.2 建立自己的站点与系统不在一个分区,如D:wwwroot3。建立 E:Logfiles目录,以后建立站点时的日记文献均位于此目录,保证此目录上的访问控制权限是: Administrators(完全控制)System(完全控制)。2.1.2.3 删除IIS的部分目录l IISH
23、elp C:winnthelpiishelp l IISAdmin C:system32inetsrviisadmin l MSADC C:Program FilesCommon FilesSystemmsadc l 删除C:inetpub 2.1.2.4 删除不必要的IIS映射和扩展IIS 被预先配置为支持常用的文献名扩展如 .asp 和 .shtm 文献。IIS 接受到这些类型 的文献请求时,该调用由 DLL 解决。假如您不使用其中的某些扩展或功能,则应删除该映射,环节如下: l 打开 Internet 服务管理器: l 选择计算机名,点鼠标右键,选择属性: l 然后选择编辑 l 然后选择
24、主目录, 点击配置 l 选择扩展名 .htw, .htr,.idc,.ida,.idq和.printer,点击删除 l 假如不使用server side include,则删除.shtm .stm 和 .shtml 2.1.2.5 禁用父途径 :“父途径”选项允许您在对诸如 MapPath 函数调用中使用“.”。在默认情况下,该选项处在启用状态,应当禁用它。 禁用该选项的环节如下: l 右键单击该 Web 站点的根,然后从上下文菜单中选择“属性”。 l 单击“主目录”选项卡。 l 单击“配置”。 l 单击“应用程序选项”选项卡。 l 取消选择“启用父途径”复选框。 2.1.2.6 在虚拟目录上
25、设立访问控制权限 主页使用的文献按照文献类型应使用不同的访问控制列表: l CGI (.exe, .dll, .cmd, .pl) l Everyone (X) l Administrators(完全控制) l System(完全控制) l 脚本文献 (.asp) l Everyone (X) l Administrators(完全控制) l System(完全控制) l include 文献 (.inc, .shtm, .shtml) l Everyone (X) l Administrators(完全控制) l System(完全控制) l 静态内容 (.txt, .gif, .jpg,
26、.html) l Everyone (R) l Administrators(完全控制) l System(完全控制) 在创建Web站点时,没有必要在每个文献上设立访问控制权限,应当为每个文献类型创建一个新目录,然后在每个目录上设立访问控制权限、允许访问控制权限传给各个文献。 例如,目录结构可为以下形式: l D:wwwrootmyserverstatic (.html) l D:wwwrootmyserverinclude (.inc) l D:wwwrootmyserver script (.asp) l D:wwwrootmyserver executable (.dll) l D:ww
27、wrootmyserver images (.gif, .jpeg) 2.1.2.7 启用日记记录 拟定服务器是否被袭击时,日记记录是极其重要的。应使用 W3C 扩展日记记录格式,环节如下: l 打开 Internet 服务管理器: l 右键单击站点,然后从上下文菜单中选择“属性”。 l 单击“Web 站点”选项卡。 l 选中“启用日记记录”复选框。 l 从“活动日记格式”下拉列表中选择“W3C 扩展日记文献格式”。 l 单击“属性”。 l 单击“扩展属性”选项卡,然后设立以下属性: n 客户 IP 地址 n 用户名 n 方法 n URI 资源 n HTTP 状态 n Win32 状态 n 用
28、户代理 n 服务器 IP 地址 n 服务器端口2.2 IIS 5.0 FTP服务器的安全配置使用IIS5.0架设的FTP服务器的默认设立其实存在很多安全隐患,很容易成为黑客们的袭击目的。为了加强IIS FTP服务器的安全性,需要做一些设立。2.2.1 取消匿名访问功能默认情况下,Windows 2023系统的FTP服务器是允许匿名访问的,虽然匿名访问为用户上传、下载文献提供方便,但却存在极大的安全隐患。用户不需要申请合法的账号,就能访问FTP服务器,甚至还可以上传、下载文献,特别对于一些存储重要资料的FTP服务器,很容易出现泄密的情况,因此应当取消匿名访问功能。取消匿名访问功能的方法是:右键点
29、击“默认FTP站点”项,在右键菜单中选择“属性”,接着弹出默认FTP站点属性对话框,切换到“安全账号”标签页,取消“允许匿名连接”前的勾选(如图2-1),最后点击“拟定”按钮,这样用户就不能使用匿名账号访问FTP服务器了,必须拥有合法账号。图2-1 严禁匿名访问2.2.2 启用日记记录FTP服务器日记记录着所有用户的访问信息,如访问时间、客户机IP地址、使用的登录账号等,这些信息对于FTP服务器的稳定运营具有很重要的意义,一旦服务器出现问题,就可以查看FTP日记,找到故障所在,及时排除。因此一定要启用FTP日记记录。启用日记记录的方法是:在FTP站点属性对话框中,切换到“FTP站点”标签页,保
30、证“启用日记记录”选项被选中。2.2.3 对的设立用户访问权限每个FTP用户账号都具有一定的访问权限,但对用户权限的不合理设立,也能导致FTP服务器出现安全隐患。如服务器中的DOC文献夹,只允许DOCUSER账号对它有读、写、修改、列表的权限,严禁其他用户访问,但系统默认设立,还是允许其他用户对DOC文献夹有读和列表的权限,因此必须重新设立该文献夹的用户访问权限。设立方法是:右键点击DOC文献夹,在弹出菜单中选择“属性”,然后切换到“安全”标签页,一方面删除Everyone用户账号,接着点击“添加”按钮,将DOCUSER账号添加到名称列表框中,然后在“权限”列表框中选中修改、读取及运营、列出文
31、献夹目录、读取和写入选项,最后点击“拟定”按钮。2.2.4 启用磁盘配额FTP服务器磁盘空间资源是宝贵的,因此要对每位FTP用户使用的磁盘空间进行限制。下面以DOCUSER用户为例,将其限制为只能使用100M磁盘空间。在资源管理器窗口中,右键点击DOC文献夹所在的硬盘盘符,在弹出的菜单中选择“属性”,接着切换到“配额”标签页(如图2-2),选中“启用配额管理”复选框,激活“配额”标签页中的所有配额设立选项,为了不让某些FTP用户占用过多的服务器磁盘空间,一定要选中“拒绝将磁盘空间给超过配额限制的用户”复选框。图2-2 限制FTP存储空间然后在“为该卷上的新用户选择默认配额限制”框中选择“将磁盘
32、空间限制为”单选项,接着在后面的栏中输入100,磁盘容量单位选择为“MB”,然后进行警告等级设立,在“将警告等级设立为”栏中输入“96”, 容量单位也选择为“MB”,这样就完毕了默认配额设立。此外,还要选中“用户超过配额限制时记录事件”和“用户超过警告等级时记录事件”复选框,以便将配额告警事件记录到Windows日记中。点击配额标签页下方的“配额项”按钮,打开磁盘配额项目对话框,接着点击“配额新建配额项”,弹出选择用户对话框,选中DOCUSER用户后,点击“拟定”按钮,接着在“添加新配额项”对话框中为DOCUSER用户设立配额参数,选择“将磁盘空间限制为” 单选项,在后面的栏中输入“100”,
33、接着在“将警告等级设立为”栏中输入“96”,它们的磁盘容量单位为“MB”,最后点击“拟定”按钮,完毕磁盘配额设立,这样DOCUSER用户就只能使用100 MB磁盘空间,超过96MB就会发出警告。2.2.5 TCP/IP访问限制为了保证FTP服务器的安全,可以拒绝某些IP地址的访问。在默认FTP站点属性对话框中,切换到“目录安全性”标签页,选中“授权访问”单选项(如图2-3),然后在“以下所列除外”框中点击“添加”按钮,弹出“拒绝以下访问”对话框,这里可以拒绝单个IP地址或一组IP地址访问,以单个IP地址为例,选中“单机”选项,然后在“IP地址”栏中输入该机器的IP地址,最后点击“拟定”按钮。这
34、样添加到列表中的IP地址都不能访问FTP服务器了。图2-3 阻止该IP访问FTP2.2.6 合理设立组策略通过对组策略项目的修改,也可以增强FTP服务器的安全性。在Windows 2023系统中,进入到“控制面板管理工具”,运营本地安全策略工具。2.2.6.1 审核账户登录事件在本地安全设立窗口中,依次展开“安全设立本地策略审核策略”,然后在右侧的框体中找到“审核账户登录事件”项目(如图2-4),双击打开该项目,在设立对话框中选中“成功”和“失败”这两项,最后点击“拟定”按钮。该策略生效后,FTP用户的每次登录都会被记录到日记中。图2-4 记录用户登录信息2.2.6.2 增强账号密码的复杂性一
35、些FTP账号的密码设立的过于简朴,很容易被破解。为了提高FTP服务器的安全性,必须强制用户设立复杂的账号密码。在本地安全设立窗口中,依次展开“安全设立账户策略密码策略”,在右侧框体中找到“密码必须符合复杂性规定”项,双击打开后,选中“已启用”单选项,最后点击“拟定”按钮。然后,打开“密码长度最小值”项,为FTP账号密码设立最短字符限制。2.2.6.3 账号登录限制对FTP服务器的一种袭击方式是使用黑客工具,反复登录FTP服务器,来猜测账号密码。因此应当对账号登录次数进行限制。依次展开“安全设立账户策略账户锁定策略”,在右侧框体中找到“账户锁定阈值”项,双击打开后,设立账号登录的最大次数,假如超
36、过此数值,账号会被自动锁定。接着打开“账户锁定期间”项,设立FTP账号被锁定的时间,账号一旦被锁定,超过这个时间值,才干重新使用。3 IIS 6.0 FTP安全配置3.1 概述Windows Server 2023 IIS 服务器的安全设立模板来自“Windows Server 2023 Security Guide”,其网址为:(英文)。为了在抵制恶意用户和袭击者的过程中占据积极,默认情况下,IIS 不安装在 Windows Server 2023 系列产品上。IIS 最初以高度安全的“锁定”模式中安装。例如,默认情况下,IIS 最初仅提供静态内容。诸如 Active Server Page
37、s (ASP)、ASP.NET、服务器端涉及 (SSI)、Web Distributed Authoring and Versioning (WebDAV) 发布及 Microsoft FrontPage Server Extensions 等功能仅在管理员启用它们后才起作用。可以通过 Internet 信息服务管理器(IIS 管理器)中的 Web 服务扩展节点启用这些功能和服务。IIS 管理器具有图形化的用户界面 (GUI),可用来方便地对 IIS 进行管理。它涉及用于文献和目录管理的资源,可以相应用程序池进行配置,并且具有安全性、性能、以及可靠性方面的诸多特性。接下来的部分具体介绍了各种安
38、全性强化设立,执行这些设立可增强 Intranet 中存放 HTML 内容的 IIS 服务器的安全性。但是,为保证 IIS 服务器始终处在安全状态,还应执行安全监控、检测和响应等环节。3.2 系统服务为了让 IIS 向 Windows Server 2023 中添加 Web 服务器功能,则必须启用以下三种服务。保证这些服务被配置为自动启动。l HTTP SSL假如 HTTP SSL 服务停止,IIS 将无法执行 SSL 功能。禁用此服务将导致任何明确依赖它的服务都无法实现。l IIS Admin 服务 “IIS Admin 服务”允许对 IIS 组件进行管理,例如文献传输协议 (FTP)、应用
39、程序池、Web 站点、Web 服务扩展,以及网络新闻传输协议 (NNTP) 和简朴邮件传输协议 (SMTP) 的虚拟服务器。“IIS Admin 服务”必须运营,以便让 IIS 服务器可以提供 Web、FTP、NNTP 以及 SMTP 服务。假如禁用此服务,则无法配置 IIS,并且对站点服务的请求将不会成功。l 万维网发布服务 “万维网发布服务”通过 IIS 管理单元提供网络连通性和网站管理。“万维网发布服务”必须运营,以便让 IIS 服务器通过 IIS 管理器提供网络连通性和管理。3.3 安全设立安装 Windows Server 2023 和 IIS 之后,默认情况下,IIS 仅传输静态
40、Web 内容。当 Web 站点和应用程序包含动态内容,或者需要一个或多个附加 IIS 组件时,每个附加 IIS 功能必须逐个单独启用。但是,在该过程中必须谨慎,以保证将每个 IIS 服务器的受袭击面降至最小。假如Web 站点只包含静态内容而无需其它任何 IIS 组件,这时,默认的 IIS 配置足以将您的环境中的 IIS 服务器的受袭击面降至最小。3.3.1 仅安装必要的 IIS 组件除“万维网发布服务”之外,IIS6.0 还涉及其它的组件和服务,例如 FTP 和 SMTP 服务。通过双击“控制面板”上的“添加/删除程序”来启动 Windows 组件向导应用程序服务器,以安装和启用 IIS 组件
41、和服务。安装 IIS 之后,必须启用 Web 站点和应用程序所需的所有必要的 IIS 组件和服务。应当仅启用 Web 站点和应用程序所需的必要 IIS 组件和服务。启用不必要的组件和服务会增长 IIS 服务器的受袭击面。3.3.2 仅启用必要的 Web 服务扩展许多运营于 IIS 服务器上的网站和应用程序具有超过静态页面范畴的扩展功能,涉及生成动态内容的能力。通过 IIS 服务器提供的功能来产生或扩展的任何动态内容,都是通过使用 Web 服务扩展来实现的。IIS 6.0 中增强的安全功能允许用户单独启用或禁用 Web 服务扩展。在一次新的安装之后,IIS 服务器将只传输静态内容。可通过 IIS
42、 管理器中的 Web 服务扩展节点来启用动态内容功能。这些扩展涉及 ASP.NET、SSI、WebDAV 和 FrontPage Server Extensions。启用所有的 Web 服务扩展可保证与现有应用软件的最大也许的兼容性。但是,这也许带来一些安全性风险,由于当所有的扩展被启用时,同时也启用了您的环境下 IIS 服务器所不需要的功能,这样 IIS 的受袭击面就会增长。为了尽也许减少 IIS 服务器的受袭击面,只应当在 IIS 服务器上启用必要的的 Web 服务扩展。3.3.3 在专用磁盘卷中放置内容IIS 会将默认 Web 站点的文献存储到 inetpubwwwroot,其中 是安装
43、 Windows Server 2023 操作系统的驱动器。应当将构成 Web 站点和应用程序的所有文献和文献夹放置到 IIS 服务器的专用磁盘卷中。将这些文献和文献夹放置到 IIS 服务器的一个专用磁盘卷 不包含操作系统的磁盘卷 有助于防止目录遍历袭击。目录遍历袭击是指袭击者对位于 IIS 服务器目录结构之外的一个文献发送请求。例如,cmd.exe 位于于 System32 文献夹中。袭击者也许请求访问以下位置:.Windowssystemcmd.exe,企图调用命令提醒假如 Web 站点内容位于一个单独的磁盘卷上,这种类型的目录遍历袭击将无法成功,因素有二。一方面,cmd.exe 的权限已
44、经作为 Windows Server 2023 基础结构的一部分进行了重设,从而将对它的访问限制在很有限的用户群中。另一方面,完毕该更改之后,cmd.exe 不再与 Web 根目录处在同一磁盘卷,而目前没有任何已知的方法可通过使用这种袭击来访问位于不同驱动器上的命令。除了安全性考虑之外,将站点和应用程序文献和文献夹放置在一个专用的磁盘卷中使诸如备份和恢复这样的管理任务变得更加容易。并且,将这种类型的内容放在一个分开的专用物理驱动器中有助于减少系统分区中的磁盘争用现象,并且改善磁盘的整体访问性能。3.3.4 设立 NTFS 权限Windows Server 2023 将检查 NTFS 文献系统的
45、权限,以拟定用户或进程对特定文献或文献夹具有的访问权限类型。应当分派相应的 NTFS 权限,允许或拒绝特定用户对 IIS 服务器上站点的访问。NTFS 访问权限应当与 Web 访问权限协同使用,而不是取代 Web 权限。NTFS 权限只影响那些已经被允许或被拒绝访问站点和应用程序内容的帐户。Web 权限则影响所有访问站点或应用程序的用户。假如站点权限与 NTFS 权限在某个文献夹或目录上发生冲突,限制性更强的设立将生效。对于不允许匿名访问的站点和应用程序,匿名帐户访问将被明确拒绝。当没有通过身份验证的用户访问系统资源时,就是匿名访问。匿名帐户涉及内置“Guest”帐户、“Guests”组和“I
46、IS Anonymous”帐户。此外,除了 IIS 管理员之外,对其它任何用户都应当清除所有的写权限。下表提供了关于 NTFS 权限的一些建议,这些权限将应用于 IIS 服务器上不同的文献类型。不同的文献类型可以被组织在不同的文献夹中,以简化应用 NTFS 权限的过程。表 3-1: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(只