一位高手整理的IIS FAQ 6 F* K6 K# R4 A4 H
下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的! 4 G3 R9 p8 v5 ~+ d3 d6 K
1.如何让asp脚本以system权限运行
/ w0 x+ z- M/ d8 \ 修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
8 ^. c; P7 f$ g; |- g" }' A2.如何防止asp木马
2 b: w0 f) H1 a7 F% e 基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用
2 N7 g7 Z$ h& F A7 |( A regsvr32 scrrun.dll /u /s //删除
) e; _* l* W+ o: N9 C 基于shell.application组件的asp木马 / A3 X( Q5 i! S. @0 I/ ?5 c
cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用
0 N3 b' X) p1 j9 a% T regsvr32 shell32.dll /u /s //删除
) `5 J" T1 s! e3.如何加密asp文件 ) v+ D5 {! C& p& X6 P: f
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。 ) A4 m: A6 ^2 I
安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。
! P5 J- H3 t6 C 运行screnc - l vbscript source.asp destination.asp 6 w, D) w. U$ G+ {; `. a7 a
生成包含密文ASP脚本的新文件destination.asp 2 {) O$ c) P2 c: R
用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了
8 b6 o, k. @; C! `% m 但无法加密中文。 6 d9 c7 [7 o4 O" o
4.如何从IISLockdown中提取urlscan
4 c0 Z; \6 {$ ] O; z9 M2 u iislockd.exe /q /c /t:c:\urlscan
@! p; U% I) m. V. D: T5.如何防止Content-Location标头暴露了web服务器的内部IP地址 , j0 U4 M9 y$ ^$ b+ U0 n V
执行
# w0 F: U2 F0 s8 h) m cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True 8 j$ s: H8 R3 D/ s8 _/ n3 k
最后需要重新启动iis 0 }% U- H8 W+ e6 O
6.如何解决HTTP500内部错误 $ W. s" }% b; a+ s6 r" q# v
iis http500内部错误大部分原因 7 y4 d& C2 Z4 W b
主要是由于iwam账号的密码不同步造成的。
8 Y3 g) }5 T6 v1 O( |8 @ 我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。 ) {, v$ v4 ~& o7 W: _2 T
执行 0 k" c" f& `6 \
cscript c:\inetpub\adminscripts\synciwam.vbs -v , w3 B/ i: R& P
7.如何增强iis防御SYN Flood的能力 ) F7 t: N; F4 V" J, c
Windows Registry Editor Version 5.00 ; ^# k X0 ~/ Z( _3 d8 U; v/ ?/ {
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] 8 m$ k k. r$ |' v$ @5 g
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后
: Z1 T: \# a# a! o 安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。
! `$ j q1 y& ?* C "SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
6 E& k$ h% o) X "TcpMaxHalfOpen"=dword:00000064 0 [, q; {5 D+ @3 K3 e3 k
判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。 . L3 a' G; v9 ~' q" Z) V
"TcpMaxHalfOpenRetried"=dword:00000050 8 P( Y8 T% ^: f7 T
设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
0 {8 K7 q7 e# e4 Z& C 项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。
& f# V% l) n" I' d: g 微软站点安全推荐为2。
c$ m. g+ _& `6 o T; M "TcpMaxConnectResponseRetransmissions"=dword:00000001
' b% \$ u# U& C: | 设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。
* G* a9 k5 [6 h/ N8 ]4 x6 f "TcpMaxDataRetransmissions"=dword:00000003
; X' p0 O! {8 S$ @1 G B9 `2 S 设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。 , m( o$ s: q' A
"TCPMaxPortsExhausted"=dword:00000005
' C" R! g! E' P/ K. E# }( T. \ 禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
+ {# B! Y3 E4 i1 W "DisableIPSourceRouting"=dword:0000002
& ?+ U2 ]' Z3 h$ r q 限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。
3 d$ t1 r- t. o! h) N6 Q. s9 W6 Q "TcpTimedWaitDelay"=dword:0000001e 2 H) @& F- B* E9 _
8.如何避免*mdb文件被下载 : Z. k" y" U% e: C
安装ms发布的urlscan工具,可以从根本上解决这个问题。
9 }, e3 G9 X' D+ K- b 同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。
3 H" U8 f* ]2 b9 e2 ]8 K9.如何让iis的最小ntfs权限运行 # T3 \+ \6 K3 |) W
依次做下面的工作:
' s4 L# [0 @: N* e a.选取整个硬盘: g) w# D; R; h2 t5 w) w& I# q( d
system:完全控制 F1 I5 |. F# g# D& n* J9 `2 t
administrator:完全控制
9 C0 C1 F, L" `5 B (允许将来自父系的可继承性权限传播给对象)
% w" f' O$ R- I1 n: @. V$ z! a b.\program files\common files: 4 f( n2 D. O- N
everyone:读取及运行 % y: i2 d9 W$ f3 t
列出文件目录
& w8 ]2 O/ A1 [ c/ w/ I$ _2 a+ Y 读取 & W C3 I" p- d7 ~+ w* h! q& X+ ^) R. K
(允许将来自父系的可继承性权限传播给对象)
8 U- v) y0 N/ S' \: H! z c.\inetpub\wwwroot: - D9 `: M7 `; b9 e( n# P
iusr_machine:读取及运行
3 P7 I" i) n1 J 列出文件目录
$ g: E8 q! w4 ~8 z7 w 读取 / X3 h, J: ?' K
(允许将来自父系的可继承性权限传播给对象)
1 \1 p# |$ L1 q' z7 m. o8 h e.\winnt\system32: ; m- K! y. J# X/ X+ G( m! i
选择除inetsrv和centsrv以外的所有目录, ) y/ W0 e( H: ~. j0 p4 j
去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 % u' Y$ K; f" L' s- A l1 C* O
f.\winnt:
% n- }& n: D6 q' F5 n 选择除了downloaded program files、help、iis temporary compressed files、
; M6 V0 P1 w) {2 f offline web pages、system32、tasks、temp、web以外的所有目录
3 |5 ^; M) a2 c2 l# D+ V' U 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
$ j& T* W$ f/ d5 T4 p$ E! _ g.\winnt: / j1 j8 ?5 `, n1 L$ j
everyone:读取及运行
2 n6 f/ s9 C/ |9 k# u7 S 列出文件目录 ; X9 d5 t5 p6 @. W
读取 / x6 c/ k O% ~9 L
(允许将来自父系的可继承性权限传播给对象)
~0 c5 s2 J7 c8 l h.\winnt\temp:(允许访问数据库并显示在asp页面上) # r8 |& ?+ U2 B$ D `# b
everyone:修改 - v% G4 w" }. O' m
(允许将来自父系的可继承性权限传播给对象)
5 P% f: F2 T4 z E- g10.如何隐藏iis版本 - A3 Z- i3 i+ K# Q3 }: \* `
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息 - n5 C2 S8 z; k& U
iis存放IIS BANNER的所对应的dll文件如下:
5 g; i0 h) S1 z( t WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL ( i8 Q# }7 C$ ^* `% c ^# Z
FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL
6 w' i& A4 T; D& m0 w SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL
1 X: N3 ]) Y$ ]9 E$ }0 R 你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0 * M9 G$ i! Z% m; N$ V' u3 R
具体过程如下:
1 w& d, O/ B; o- G& v' z6 w 1.停掉iis iisreset /stop
B2 R/ V& [% q3 y* _ 2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件
]5 x! Q- p3 Z 3.修改 |