找回密码
 注册
搜索
查看: 6160|回复: 0

IIS安全保卫战

[复制链接]
发表于 2007-1-1 20:42:12 | 显示全部楼层 |阅读模式
 信息服务器IIS是BACKOFFICE系列产品中功能最强大、最流行的应用程序,它与整个BACKOFFICE组件一样,IIS也是围绕WINDOWS NT体系而生成的。它作为WINDOWS NT SERVER提供的一组服务而运行,允许它利用WINDOWS NT的各项软件功能。
# \  M: p& x( W  不过,确保你数据完整性仍是一个必须认真对待的关键性安全问题。IIS凭借丰富而又强大的验证、访问控制和审核功能可以保证数据的完整性,因为它以WINDOWS NT SERVER作系统为基础。此外,它还支持安全插接层SSL,它通过对IIS和支持SSL的所有浏览器之间的对话进行加密来保证安全通信更加保密。
1 A; y7 X; [4 P0 s  黑客们知道大多数WEB和FTP网站都允许匿名访问。这些网站常常错误配置,这样就存在安全漏洞。下面介绍须采取哪些措施才能保证保证IIS使你的网络和数据完全避免黑客入侵。
4 J7 z2 t8 d! S9 b# h* H  一、利用现有的WINDOWS NT安全性能来保护IIS ISS通过WINDOWS NT安全模型提供安全性,也就说,安全帐户管理器数据库中定义的用户帐户和组将确定一旦用户接入IIS机器,他们能进行什么操作。你不仅要核查现有的帐户权限和许可权,并且要限制匿名访问使用的帐户权限和许可权,这非常重要。+ g8 s" n8 y) A. G
  记录IIS的所有服务程序都支持广泛的记录功能。记录功能很重要,因为它能用来监视可疑的活动,从而决定应当保留什么、应当取消什么,以便进行容量规划。' R; P: z3 s9 Y# G( T
  启动记录功能很容易,每项服务的事件都共同记录在同一个公用文件中。若要启动记录功能,请打开IIS MANEGER,双击你要启动其记录功能的服务器,显示PROPERTIES对话框。接着单击LOGGING标签,将弹出一个对话框。该标签的用法相当直接,你只须单击ENABLE LOGGING选项,然后你选择是记录到一个文本文件,还是记录到SQL数据库,并确定日志文件多长时间更新一次。
, ?' M- m: ?! g* O  提示当你第一次安装服务器时,要设置为DAILY LOGGING(日志),这样你可以每天看到结果。过一段时间后,你再选择最合适的记录方式。
* Z! r( l1 f) g8 {# N1 m8 W" m" I  ADVANCED选项通过单击SERVICE PROPERTIED对话框的ADVANCED标签,IIS还支持简单过滤功能。你可使用ADVANCED OPTIONS标签来限制或允许某些IP地址对WEB服务器的访问。在弹出的ADVANCED标签中,激活By default all computer will be granted access(缺省时,所有计算机将获得访问权)你可以使用ADD钮将应当拒绝访问的某些特定的IP地址范围输入进来。. l, j: C" k( L0 c. O+ r4 _1 V
  或者,如果你想强制执行严格的安全保护,你可以选择By Default all computer will be den access(缺省时,所有的计算机将被拒绝访问),然后根据应当能访问这台机器的IP地址确定主机表。这是一个功能强大而且价值较高的工具,有助于确保你网站的安全,所以不应忽视。- g+ c6 s1 B3 `! M( [) ~* K
  二、IIS Advanced安全性能与Exchange Server一样,Internet信息服务器提供Advanced安全性能,使你通信绝对安全。它们由SSL(安全插接层)2.0版和3.0版以及PCT(保密通信技术)1.0组成。SSL可对TCP/IP通信进行数据加密、服务器验证和邮件集成功能。$ X9 Z% u5 y  ^0 j/ t8 ]
安全插接层安全插接层(SSL)是一个由Netscape通信公司开发的协议,并提交环球网联盟(W3C)作为保证Internet通信安全的标准。当支持SSL的一台客户机(Internet Explorer2.0和3.x和Netscape 3.x)与支持SSL的服务器连接时,在TCP/IP连接时就出现“信号交换的交接关系”来进行验证,以确定在通信中将实施哪一级安全保护。
: u: f/ V, m8 T) g$ h9 \& m  在建立连接后,SSL接着对流经使用中的应用协议的数据进行加密和解密。所有请示和响应信息都应该加密,其中包括客户机下在请示的统一资源定位符(URL)、其它形式的数据(如你的地址或食用卡号码)、任何验证信息(用户名和口令)以及所有由服务器返回到客户机的数据。
2 _/ K7 i8 t3 _& Z  SSL是位于应用协议(如HTTP)之下,SMTP位于连接协议TCP/IP之上。MICROSOFT INTERNET信息服务器支持超文本传输协议保密(HTTPS)访问方式。尽管SSL能提供实际不可破译的加密功能,但SSL加密传输的速度要低于非加密传输。因此,为了防止你整个WEB网站的性能下降,你可以考虑只把SSL作为虚拟的文件夹用来处理高度机密信息,如提交的包含信用卡信息的表格。$ x( K/ D% A/ ^4 P, @  L
  你可以在你WEB网站的根目录(\InetPub\Wwwroot是缺省值)或在一个或多个虚拟文件夹中启动SSL安全功能。一旦SSL配置好和启动后,只有支持SSL的客户机能与支持SSL的WWW公文夹进行通信交流。2 r4 {- e& {2 t- x$ X4 M/ T
  在WEB服务器上启动SSL安全性能,需要进行以下几步工作:
" R+ S( F) x- G: F* p/ a9 w* Q* S  1、使用密钥管理器来生成一个密钥对文件和一个请求文件。
- t0 T1 V- d- y2 L+ c  2、从一个认证机构获得一个证书。
4 B* X% |5 V. k6 ]& R  3、在你的服务器上安装新获得的证书。$ C+ ~+ {) S$ X& V: o
  4、激活WEB服务文件夹中的SSL安全功能。
: x4 i- Y( H! \& A  对于保密和公用内容,微软公司建议你使用公开的目录。比如,c:\InetPub\Wwwroot\Secure和C:\InetPub\Wwwroot\Public。3 {. n. H% z. a, h; |
  应注意以下几点:4 I$ A  j$ _+ X1 A8 M/ i8 L
  (1)为IIS生成一个密钥对时,在任何域中不要使用逗号,原因是逗号被解释为字段的结尾。它们会在没有警告的情况下产生无效请求。
/ D$ W% k' X! ?# Z' w/ w; Z  (2)如果你拥有多台具有IIS的虚拟服务器功能的WEB服务器在安装你的证书时,要确定具体服务器的IP地址,否则系统创建的所有虚拟服务都适用同一个证书。
& E) ]5 Y7 W8 u  (3)如果你启动SSL,任何指向支持SSL的WWW文件夹中文档的URL必须使用http://,而不是在URL中的http://。使用在URL中的http://的任何链路不支持安全文件夹。  q$ B/ P1 A4 ?
  IIS的一般性安全提示你使用IIS随意向INTERNET发布信息时,要确保网络安全性。除了我们以前讲座过后IIS功能外,你还要做到以下各点:5 Q6 n. s/ c" F3 O
  (1)为系统分区和各项IIS服务程序生成分开的区,这样黑客无法轻易地从某项服务程序的某个漏洞对整个机器访问。
% L& A4 n& j* p4 L% V8 g0 w  (2)对机器的所有分区使用NTFS,要保证用户权限设置正确。
# G' }- Z9 d$ s+ v  (3)将IIS服务器放置于其自己的域中,并与你的帐户建立一种单向委托关系。如果黑客能得到某个有效帐户的信息,那个帐户也无法对你的用户域进行访问。4 F5 N2 c4 w! X4 l
安全插接层安全插接层(SSL)是一个由Netscape通信公司开发的协议,并提交环球网联盟(W3C)作为保证Internet通信安全的标准。当支持SSL的一台客户机(Internet Explorer2.0和3.x和Netscape 3.x)与支持SSL的服务器连接时,在TCP/IP连接时就出现“信号交换的交接关系”来进行验证,以确定在通信中将实施哪一级安全保护。
, q. b9 i9 N- j7 C: P6 V& _) Z" L5 q  在建立连接后,SSL接着对流经使用中的应用协议的数据进行加密和解密。所有请示和响应信息都应该加密,其中包括客户机下在请示的统一资源定位符(URL)、其它形式的数据(如你的地址或食用卡号码)、任何验证信息(用户名和口令)以及所有由服务器返回到客户机的数据。3 n1 [3 R! b8 Y
  SSL是位于应用协议(如HTTP)之下,SMTP位于连接协议TCP/IP之上。MICROSOFT INTERNET信息服务器支持超文本传输协议保密(HTTPS)访问方式。尽管SSL能提供实际不可破译的加密功能,但SSL加密传输的速度要低于非加密传输。因此,为了防止你整个WEB网站的性能下降,你可以考虑只把SSL作为虚拟的文件夹用来处理高度机密信息,如提交的包含信用卡信息的表格。5 I6 m$ f; P: f5 r3 I( C/ G
  你可以在你WEB网站的根目录(\InetPub\Wwwroot是缺省值)或在一个或多个虚拟文件夹中启动SSL安全功能。一旦SSL配置好和启动后,只有支持SSL的客户机能与支持SSL的WWW公文夹进行通信交流。, S, f# k7 _3 O9 d% i, f9 [8 M
  在WEB服务器上启动SSL安全性能,需要进行以下几步工作:
& q1 V1 P# O3 ~  1、使用密钥管理器来生成一个密钥对文件和一个请求文件。' Z4 Y- R* a; O% m# t, A
  2、从一个认证机构获得一个证书。( O; q. I5 o7 [3 A
  3、在你的服务器上安装新获得的证书。
( m7 f7 \2 s1 f& u- B2 R  4、激活WEB服务文件夹中的SSL安全功能。# A+ k4 K0 a$ X9 d5 _( B
  对于保密和公用内容,微软公司建议你使用公开的目录。比如,c:\InetPub\Wwwroot\Secure和C:\InetPub\Wwwroot\Public。$ l0 j! p. ]4 P# K: x8 w1 P
  应注意以下几点:0 l% J2 t8 t6 |+ D8 `$ c
  (1)为IIS生成一个密钥对时,在任何域中不要使用逗号,原因是逗号被解释为字段的结尾。它们会在没有警告的情况下产生无效请求。
$ \1 X8 W& K/ y- t  (2)如果你拥有多台具有IIS的虚拟服务器功能的WEB服务器在安装你的证书时,要确定具体服务器的IP地址,否则系统创建的所有虚拟服务都适用同一个证书。
. I& Y9 `+ v$ |# }  A" s1 O* O. ]0 j  (3)如果你启动SSL,任何指向支持SSL的WWW文件夹中文档的URL必须使用http://,而不是在URL中的http://。使用在URL中的http://的任何链路不支持安全文件夹。; W% N( E/ |  K/ \& H6 h
  IIS的一般性安全提示你使用IIS随意向INTERNET发布信息时,要确保网络安全性。除了我们以前讲座过后IIS功能外,你还要做到以下各点:
8 @6 `# p  L# g7 ]3 A% B  (1)为系统分区和各项IIS服务程序生成分开的区,这样黑客无法轻易地从某项服务程序的某个漏洞对整个机器访问。3 G3 ^& t* [, @( d
  (2)对机器的所有分区使用NTFS,要保证用户权限设置正确。8 M8 l$ Y4 O& z) @# G3 |, |2 ~" m/ i
  (3)将IIS服务器放置于其自己的域中,并与你的帐户建立一种单向委托关系。如果黑客能得到某个有效帐户的信息,那个帐户也无法对你的用户域进行访问。7 P% l( D1 |0 x5 p$ F" z: j0 W. t
3、Web服务器安全提示如果你正运行WEB服务器,尽管你已根据以前所讨论过的内容采取了预防措施,也许仍有些安全漏洞有待于你填补。以下列出当提供WEB服务时,你应当采取的一般措施:( a# r* K( T4 z+ }" A5 j4 \  V
  *停用.bat和.cmd文件的映射功能。如果黑客们拿到这些Web服务器上的可执行文件的话,他们就可运行这些Web文件。你通过取消对脚本程序的所有目录的阅读许可权,就可以停用某些文件夹映射功能。: S! c; c; \) X: r3 R0 `
  *总是将你的脚本程序和数据存储在不同的目录,务必使包含脚本程序的目录只拥有执行许可权。# x, {5 }7 }- E& U% @7 L
  *禁止使用Directory Browsing Allowed(允许目录浏览)。这一功能启动后会给出一个浏览器,该浏览器含有某个目录中的超文本文件列表,从而使黑客能篡改目录中的文件。) N  S+ x% l# z4 f' z* \
  *避免使用Remote Virtual Directories(远程虚拟目录)。务必将IIS所有的可执行文件以及数据安装在同一台机器上,并利用NTFS来保护。当用户试图从远程目录访问文档时,总是使用输入到属性页上的用户名和口令,这就有可能绕过访问控制列表。*当编写和使用CGI脚本程序时,一定要小心。有经验的黑客也许会利用编写拙劣的CGI脚本程序来对你的系统进行访问。, J9 Z7 r8 ?# x- K. N' N! q: h
  *牢记特权最小的原则,如果你计划只运行Web服务器,那么请只激活Web服务器主机的端口80。  A4 N/ A! C8 f8 z( h9 D
  *全面测试你的Web服务器——设法发现并弥补任何漏洞。最好的方法是,让可靠而且内行的同事设法破坏你网络的安全性。
  \& U  L+ z/ }/ V( F  *想了解额外的情况,请上网www.ncsa.com/webcert/sgl_site.html去查看NCSA Web Site Certification Program文档,寻求使你的Web服务器安全的灵丹妙药。9 [2 F6 ?& J0 W5 ]0 Q
  四、安全性与FTP服务器FTP服务器是唯一一项允许用户通过INTERNET将文件传输至你服务器的IIS服务程序。设置FTP安全性能、用户和口令验证与WEB服务器大致相似。但是有一点值得你**注意**:用户名和口令将以明文(非加密)形式传输至FTP服务器服务程序,这意味着如果使用网络嗅探器就可以捕捉到这一信息,从而破坏网络的安全!
! l) C/ W# Y0 h4 A+ o$ `4 u  在你允许大众进行访问时,一定要熟悉FTP Service Properties页的Current Session钮。它告诉你哪个用户与FTP服务器相连,他们何时连接,以及他们已连接多长时间。# e% l. @# K: U* S" i8 z3 P
  虚拟目录设置FTP服务器的目录与设置Web服务器服务程序十分类似,一定要保证用户不能访问FTPRoot目录之外的目录,并要正确设置FTP目录的访问许可。  [9 E3 t8 L& T( Z- V2 [- l$ v
  FTP服务器安全提示运行FTP服务器时,为保证安全你应当了解的以下事项:
$ l: ^! n  p# p  ?0 ]  1、谨记用户可以修改FTP服务器的目录。一定要确保他们无法进入FTPRoot目录以外的目录,同时要使用NTFS来保证你服务器的安全。/ S' {8 C- n+ i5 i( G( u2 q' X" j
  2、避免使用远程虚拟目录。当用户度图从远程目录访问文档时,总是要求其提供输入到属性页的用户名和口令,这就有可能绕过访问控制表表。4 @2 C% E  _9 n: ~6 t
  3、一定要启动记录功能,查找可疑活动,如在日志和事件查看器中查找没有成功的登录4、如果你只计划运行FTP服务器,只启动FTP主机的端口20和端口21。5 i/ j, R* t" |$ p8 A
  5、全面测试你的FTP服务器,并设法找到任何漏洞。你还可以让一个可靠的内行的同事设法打入系统。9 C& k' I  ?6 s; S' o( G/ M
  五、安全性和Gopher服务器保护Gopher服务器与保护FTP服务程序和Web服务程序很类似,差别在于Gopher只允许匿名登录。
; \$ H# z0 k& V# {2 N% O4 R
9 p  A% d* U/ R: u2 W; k* [
5 D% p5 A8 d! {# v1 y9 ~$ U8 v$ F# M7 o. L+ ?- \6 {

% v) V1 }& K6 H: [. \  N$ |3 s, j' u
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1451562
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2025-9-30 06:28 , Processed in 0.035454 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表