|
|
web安全是系统提供的最常见的服务之一,但是web服务器的安全还存在这一些漏洞,让人很是苦恼,现在小编就为大家介绍一下如何在win2003下实现web服务器的安全设置。
( k5 z0 K- O- l4 e/ h6 X 1、安装补丁3 b" T( m, G( s2 [, m& n
安装好操作系统之后,在托管之前就完成补丁的安装,配置好网络后,win2003最好安装上SP1,然后点击开始→Windows Update,安装所有的关键更新。
! z5 R6 [; i' m 2、安装杀毒软件' h p4 `8 h: }+ a- C
推荐两款杀毒软件,一款是瑞星,一款是诺顿,瑞星杀木马的效果比诺顿要强,但是装瑞星会有一个问题就是会出现ASP动态不能访问,这时需要重新修复一下,具体操作步骤是:8 t1 g* g- v: {$ `# z, S& M4 c! i
关闭杀毒软件的所有的实时监控,脚本监控。) T x( X5 [: W- i
╭═══════════════╮╭═══════════════╮. J- S3 u" R) j. E! U
在Dos命令行状态下分别输入下列命令并按回车(Enter)键:; p/ G' x S, a, m, k6 z. i
regsvr32 jscript.dll (命令功能:修复Java动态链接库)
K( |% q9 T3 V7 F2 k# i% ? regsvr32 vbscript.dll (命令功能:修复VB动态链接库); X+ ~& O8 v% e3 t
╰═══════════════╯╰═══════════════╯
; S0 f9 x2 j7 c0 X# F6 w: r ASP木马的特征是可以通过一定手段来避开杀毒软件的查杀,所以不是所有杀毒软件都能杀掉所有的木马。3 G! _/ y9 S7 I+ c) w$ k% M; i
3、设置端口保护和防火$ ~$ ~. L+ F/ W x3 @% k
2003的端口屏蔽可以通过自身防火墙来解决,更有灵活性,桌面—>网上邻居—>(右键)属性—>本地连接—>(右键)属性—>高级—>(选中)Internet 连接防火墙—>设置+ A7 A w l7 L4 a4 [, J/ Z
把服务器上面要用到的服务端口选中
, @$ h$ g$ n4 Y K 例如:一台WEB服务器,要提供WEB(80)、FTP(21)服务及远程桌面管理(3389)
/ b# j8 n8 e$ L: I 在“FTP 服务器”、“WEB服务器(HTTP)”、“远程桌面”前面打上对号! p% l0 {3 Z4 I! [; p) U
若要提供服务的端口不在里面,也可以点击“添加”铵钮来添加,具体参数可以参照系统里面原有的参数。
' J+ F% I* b) E( F% C5 o# } 然后点击确定。注意:如果是远程管理这台服务器,请先确定远程管理的端口是否选中或添加。
% b4 }, ^4 s4 K 权限设置0 K$ ^) {! P! ?$ ?
权限设置的原理
d8 d3 L$ g! ]7 a9 g& q 在windows系统中大多数时候把权限按用户(組)来划分。在【开始→程序→管理工具→计算机管理→本地用户和组】管理系统用户和用户组。
! }! [4 r' d" M6 c9 E NTFS权限设置,记住分区的时候把所有的硬盘都分为NTFS分区,然后可以确定每个分区对每个用户开放的权限。【文件(夹)上右键→属性→安全】在这里管理NTFS文件(夹)权限。
& q9 [# x+ g: o2 P/ W8 ]. ~- D IIS匿名用户,每个IIS站点或者虚拟目录,都可以设置一个匿名访问用户(现在暂且把它叫“IIS匿名用户”),当用户访问网站的.ASP文件的时候,这个.ASP文件所具有的权限,就是这个“IIS匿名用户”所具有的权限。
* j4 H7 x' l* J# w 磁盘权限
( t" b" R6 u- B" R3 W 系统盘及所有磁盘只给 Administrators 组和 SYSTEM 的完全控制权限9 P% L& Q# p$ M
系统盘\Documents and S ettings 目录只给 Administrators 组和 SYSTEM 的完全控制权限
( E' N3 D& I/ k, E1 d 系统盘\Documents and S ettings\All Users 目录只给 Administrators 组和 SYSTEM 的完全控制权限
+ N# q' W) u$ n. V; @ 系统盘\Inetpub 目录及下面所有目录、文件只给 Administrators 组和 SYSTEM 的完全控制权限' v8 m: D. p0 l6 t
系统盘\Windows\System32\cacls.exe、cmd.exe、net.exe、net1.exe 文件只给 Administrators 组和 SYSTEM 的完全控制权限! Z* a7 H# [# P' m
4、禁用不必要的服务
/ f7 m" Q# y8 r9 u 开始菜单—>管理工具—>服务1 A; r% M9 b! B5 B$ N' e
Print Spooler
4 ?6 A( O3 a6 O$ ]4 J0 P Remote Registry* k2 X" B' X; B9 i& `
TCP/IP NetBIOS Helper# b4 k7 L4 a7 T) ]' F9 U% J
Server+ ^ E% v* u, K, J' y6 N
以上是在Windows Server 2003 系统上面默认启动的服务中禁用的,默认禁用的服务如没特别需要的话不要启动。$ e7 J; f( f$ R3 U/ S
改名或卸载不安全组件
: z, b. A( f f, m: A: o 做好了上面的权限设置,FSO、XML、strem都没有跨出自己的文件夹或者站点的权限,都不再是不安全组件了,。
: }) y' h6 L e0 [1 g6 r 最危险的组件是WSH和Shell,因为它可以运行你硬盘里的EXE等程序,比如它可以运行提升程序来提升SERV-U权限甚至用SERVU来运行更高权限的系统程序。# d, j; _8 U$ p& [
谨慎决定是否卸载一个组件
, ]! Z5 t1 n+ ] 组件是为了应用而出现的,而不是为了不安全而出现的,所有的组件都有它的用处,所以在卸载一个组件之前,必须确认这个组件是你的网站程序不需要的,或者即使去掉也不关大体的。否则,你只能留着这个组件并在你的ASP程序本身上下工夫,防止别人进来,而不是防止别人进来后SHELL。0 @3 F4 v( h/ E5 E# }: |
5、卸载最不安全的组件
7 E( f1 m- [$ |: z }) _% _: q 最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.BAT文件 regsvr32/u C:\WINDOWS\System32\wshom.ocx
, L1 l1 `* K8 Y* u1 W7 C* [5 { del C:\WINDOWS\System32\wshom.ocx
3 m# e; g0 b; O9 e regsvr32/u C:\WINDOWS\system32\shell32.dll
# M( J( U, a" M; F/ n' l del C:\WINDOWS\system32\shell32.dll' p; f, q0 j; c7 A7 |: r( A
然后运行一下,WScript.Shell, Shell.application, WScript.Network就会被卸载了。可能会提示无法删除文件,不用管它,重启一下服务器,会发现这三个都提示“×安全”了。3 x4 j3 w; J/ Y. l8 E
改名不安全组件! i2 h6 [9 @ Q1 q5 T: F
需要注意的是组件的名称和Clsid都要彻底改。下面以Shell.application为例来介绍方法。
+ x8 O4 q- A$ U2 F* {. B0 b 打开注册表编辑器【开始→运行→regedit回车】,然后【编辑→查找→填写Shell.application→查找下一个】,用这个方法能找到两个注册表项:“{13709620-C279-11CE-A49E-444553540000}”和“Shell.application”。为了确保万无一失,把这两个注册表项导出来,保存为 .reg 文件。
! ]/ ^( K! m3 N: h) V$ ^: D 比如我们想做这样的更改
' x1 S: U% h7 D5 _" V: u 13709620-C279-11CE-A49E-444553540000 改名为 13709620-C279-11CE-A49E-4445535400011 ^8 M& S1 F5 Z G6 h4 K
Shell.application 改名为 Shell.application_ajiang
- m i* W) y% V, n: S/ { 那么,就把刚才导出的.reg文件里的内容按上面的对应关系替换掉,然后把修改好的.reg文件导入到注册表中(双击即可),导入了改名后的注册表项之后,别忘记了删除原有的那两个项目。这里需要注意一点,Clsid中只能是十个数字和ABCDEF六个字母。
$ z; _( u+ G1 y 下面是修改后的代码:
( j- E( x- |+ O7 q* s6 E Windows Registry Editor Version 5.00( Q$ b$ l1 K% e- Z9 z
[HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540001}]
) I6 a. K& T- A @="Shell Automation Service"
! Q Z% e7 C4 i2 V7 t y! r [HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540001}\InProcServer32]/ E6 @( V6 G3 b- @, ^
@="C:\\WINNT\\system32\\shell32.dll"/ X. | X7 F5 Y& }" U- n1 w
"ThreadingModel"="Apartment"
# @& N' Z2 u* i Q; t& r" o5 W [HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540001}\ProgID]0 I, j0 ^2 s5 W
@="Shell.Application_ajiang.1"% D6 o4 }6 M9 c6 B
[HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540001}\TypeLib]
0 }% `! M J: G; ~" X( P2 N8 Z3 c @="{50a7e9b0-70ef-11d1-b75a-00a0c90564fe}"/ ~) p8 c9 R: x* A* x
[HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540001}\Version]5 O6 [9 t/ l4 s8 U, |
@="1.1"% T6 f- [5 _! I& m' l
[HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540001}\VersionIndependentProgID]/ k2 @4 `5 U4 W& g# }- K, Q
@="Shell.Application_ajiang"! S4 ~! I) D V2 D
[HKEY_CLASSES_ROOT\Shell.Application_ajiang]0 I8 q3 l8 D/ z9 G4 D8 ^9 J8 a3 n
@="Shell Automation Service"
* x' p6 c/ ~3 K5 N7 g [HKEY_CLASSES_ROOT\Shell.Application_ajiang\CLSID]
9 |7 Q! h" U* y! w0 \ @="{13709620-C279-11CE-A49E-444553540001}"$ ]5 c! t7 s. g. j5 U
[HKEY_CLASSES_ROOT\Shell.Application_ajiang\CurVer]% `+ X: d/ G* P" e- g
@="Shell.Application_ajiang.1"
% F; \* v: k2 Y2 U- L5 J 你可以把这个保存为一个.reg文件运行试一下。! O& J5 k# \% `% q! ~* j
6、防止列出用户组和系统进程
" G7 x) F; U8 ]7 e5 |1 J 利用getobject("windows")获得了系统用户和系统进程的列表,这个列表可能会被黑客利用,我们应当隐藏起来,方法是:* X! K: t& a4 k7 z7 r/ d7 T
【开始→程序→管理工具→服务】,雨林木风系统官网100cn100.cn,找到Workstation,停止它,禁用它。: Z. \) Y! D+ i+ c* [0 l( }7 u/ l
防止Serv-U权限提升
' |& C8 f& q# i) k 注销了Shell组件之后,侵入者运行提升工具的可能性就很小了,但是prel等别的脚本语言也有shell能力,为防万一,还是设置一下为好。' a6 K& _9 e% P' @8 g
用Ultraedit打开ServUDaemon.exe查找Ascii:LocalAdministrator,和#l@$ak#.lk;0@P,修改成等长度的其它字符就可以了,ServUAdmin.exe也一样处理。* G# v% A' M! F u
另外注意设置Serv-U所在的文件夹的权限,不要让IIS匿名用户有读取的权限,否则人家下走你修改过的文件,照样可以分析出你的管理员名和密码。
, C/ ~( {! {/ r, b M& T, g 利用ASP漏洞攻击的常见方法及防范
# G& q5 i2 u% A, J' | 一般情况下,这些程序都有上传功能,黑客总是瞄准论坛等程序,传ASP木马,即使设置了权限,木马也可以控制当前站点的所有文件了。5 x/ y) j: W/ Y C0 b
如果论坛管理员关闭了上传功能,黑客会想办法获得超管密码,比如,你用动网论坛并且数据库忘记了改名,就可以直接下载你的数据库了,然后距离找到论坛管理员密码就不远了。作为论坛管理员,首先要检查我们的ASP程序,做好必要的设置,防止网站被黑客进入。
' b. J* C4 l; {4 @ 这些繁琐的代码看起来密密麻麻的,但就是它们才能实现web服务器安全设置,才能保护系统的安全,保护你的隐私。
2 M- ?3 l s$ C8 V2 [ |
|