标题:
学会十个“如何”打造安全IIS服务器
[打印本页]
作者:
admin
时间:
2008-1-25 02:15
标题:
学会十个“如何”打造安全IIS服务器
1、如何让asp脚本以system权限运行
4 u! {3 E! o6 s& m
修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
$ o/ V) {! h7 f1 t8 B0 L" ^( a6 M
2、如何防止asp木马
1 U- c" k2 G) X1 a$ I
基于FileSystemObject组件的asp木马
7 u4 `3 R+ A U! |6 S7 Y8 q
cacls %systemroot%/system32/scrrun.dll /e /d guests //禁止guests使用
$ q( _& G# K' D( x
regsvr32 scrrun.dll /u /s //删除
" P' k4 }! O) G, _& r
基于shell.application组件的asp木马
) }( c+ C/ D1 L6 Y8 _
cacls %systemroot%/system32/shell32.dll /e /d guests //禁止guests使用
9 P2 K1 D9 R- x1 d- s) t
regsvr32 shell32.dll /u /s //删除
# I8 D& Z& {8 O, {( O
3、如何加密asp文件
$ w& W8 l+ {& r% H; g8 E9 r" o
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。
0 Z% w' ?( _# }: o% g/ z6 `8 W6 D- l' \
安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。
5 J7 A: w" s$ L* J, |
运行screnc - l vbscript source.asp destination.asp
7 p& W+ `. l9 T
生成包含密文ASP脚本的新文件destination.asp
2 C, }0 S) y! S8 H- j# n0 }
用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了
3 j! e4 Q' `; e7 L/ f
但无法加密中文。
7 J3 u/ R! V/ e/ ^1 A% x
4、如何从IISLockdown中提取urlscan
( L" {" w/ } X6 J$ j
iislockd.exe /q /c /t:c:/urlscan
1 j) T* D& e% Y/ Y" d5 o
5、如何防止Content-Location标头暴露了web
服务器
的内部IP地址
! k: `: D3 o4 E* N0 v) A
执行
1 a- V' f+ q$ U& {
cscript c:/inetpub/adminscripts/adsutil.vbs set w3svc/UseHostName True
4 T* Y: }4 c6 U& p- u& v) Z
最后需要重新启动iis
' M( C- l) p3 d+ W" c) {
6、如何解决HTTP500内部错误
" W# b6 ^$ [* G) Q9 b$ h1 I: I
iis http500内部错误大部分原因
8 P8 z' S3 g9 a
主要是由于iwam账号的密码不同步造成的。
) w! y& B- s& K% b# L* V" _ R
我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。
2 D6 N9 L9 S4 U& B9 R; Y0 v+ E
执行
4 E' [% T1 Z& G* J
cscript c:/inetpub/adminscripts/synciwam.vbs -v
7 m; ]2 U. k2 f3 S1 R" y
7、如何增强iis防御SYN Flood的能力
7 z7 O- I' ]8 v' x. u; w o
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters]
4 {9 m5 B- f' E! p6 b0 x3 F8 z* l
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后 安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。
% B# R: h/ \& }9 J9 t7 T: a
"SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
' B6 W0 V$ C/ m% m0 i* Z
"TcpMaxHalfOpen"=dword:00000064 判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。 "TcpMaxHalfOpenRetried"=dword:00000050
e' F* `( r$ A1 s6 T$ s8 m
设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
5 }, n+ ?4 L' B& ]9 \
项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。
" E# c: C& G( r9 W, }7 E
微软站点安全推荐为2。
! [+ e8 ^$ ^% m# N9 W+ H* H1 ~) q
"TcpMaxConnectResponseRetransmissions"=dword:00000001
, X. W4 a) M* d: e6 V% ]5 g7 i
设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。
# T' |4 R) C C5 ]# c9 c7 Z J
"TcpMaxDataRetransmissions"=dword:00000003
* m- ~- C, Z% U% x
设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。
5 D t0 Y$ o' j$ R: j+ t
"TCPMaxPortsExhausted"=dword:00000005
~9 }. H- u) T. _* B0 e/ U, T
禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
$ d) W0 M4 F& V8 z' f: n# a2 J
"DisableIPSourceRouting"=dword:0000002
8 R* z# h0 B1 a# _3 R8 W; F1 j% j# @. A
限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。
. z4 W7 U) w; e) g4 R! c! w" ~
"TcpTimedWaitDelay"=dword:0000001e
8 M/ z/ o1 X& F& c. v5 p3 j
- Q9 X- b5 e7 d5 |
8、如何避免*mdb文件被下载
; V" o. g5 p* A9 @* d# g
安装ms发布的urlscan工具,可以从根本上解决这个问题。
9 ]* a6 z% D2 T I3 L* h
同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。
8 y1 p) s" p \$ m7 _, W
9、如何让iis的最小ntfs权限运行
+ q: c$ J! \; ^: w9 ?" G4 _
依次做下面的工作:
8 v/ B P, z1 Q. o
a、选取整个硬盘:
% @: q; U8 M D2 i/ ]6 O% y4 t9 M
system:完全控制
: l* O/ M! l# O3 ]$ X- f
administrator:完全控制
' h5 t; U% I2 [
(允许将来自父系的可继承性权限传播给对象) b、/program files/common files:
1 R% F- C, T6 E9 B4 n: X
everyone:读取及运行列出文件目录读取
5 L& g" h* d6 Z; c; x: U! f1 s4 t
(允许将来自父系的可继承性权限传播给对象)
/ Y, `3 M! q3 }8 Z$ O
c、/inetpub/wwwroot:
& M2 F! e1 O! I; P( A
iusr_machine:读取及运行列出文件目录读取
* T' N( r7 w8 P1 [: ^
(允许将来自父系的可继承性权限传播给对象)
0 k" R. [3 R6 r0 a, k
e、/winnt/system32:
$ l" D A" ] v. F; b$ L
选择除inetsrv和centsrv以外的所有目录,去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
- g+ S' X J) }3 l' \
f、/winnt:
0 k1 X9 L6 L3 b# N# i0 e
选择除了downloaded program files、help、iis temporary compressed files、offline web pages、system32、tasks、temp、web以外的所有目录去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
5 M( W8 n4 B) N
g、/winnt:
( E/ a2 W8 m" X( o* u- u" H5 w
1 O$ R8 e/ e" t# h% X; P
everyone:读取及运行列出文件目录读取
( V* I, m3 Q& b2 Z
(允许将来自父系的可继承性权限传播给对象)
2 E: [+ m/ Y7 K. ~% j( w
h、/winnt/temp:(允许访问数据库并显示在asp页面上)
/ J0 Y# H5 D6 t* B) |
everyone:修改
( t/ u# L9 v/ }; F1 y
(允许将来自父系的可继承性权限传播给对象)
# V% P0 ^8 }5 x$ ~% t
10、如何隐藏iis版本
0 b9 U' R% W- g5 h" _# G5 H2 w
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息
9 |- W- K9 j$ Z
iis存放IIS BANNER的所对应的dll文件如下:
) X' O g6 f6 ^) c1 G' }9 q
WEB:C:/WINNT/SYSTEM32/INETSRV/W3SVC.DLL
7 U3 x. A0 i+ e8 ~6 U* {
FTP:C:/WINNT/SYSTEM32/INETSRV/FTPSVC2.DLL
7 J) M7 E/ b1 @$ H$ d1 l% Y/ F1 z
SMTP:C:/WINNT/SYSTEM32/INETSRV/SMTPSVC.DLL
1 V6 y' Q/ h: V$ o; G
你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0
9 c7 J" [" D) j# E6 u+ Y1 @) p9 {7 S
具体过程如下:
/ s% K! p- B% I& c3 D
1、停掉iis iisreset /stop
/ `$ A1 H5 a V. X
2、删除%SYSTEMROOT%/system32/dllcache目录下的同名文件
* g0 N1 Q* J3 ~! z& E9 i
3、修改
欢迎光临 捌玖网络工作室 (http://www.89w.org/)
Powered by Discuz! 7.2