一位高手整理的IIS FAQ
; l" {3 U# K e7 ^1 R下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的! ) P; o& s, x8 s2 Y% b
1.如何让asp脚本以system权限运行 r; A3 ~. |! ]% z% y& U/ e( N- N: U
修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
+ l" s8 A: W* R" R" E9 e: P9 e2.如何防止asp木马
. L v6 V/ ~& z+ x; o* G8 M 基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用 , G D j4 W6 f( L, M* Q
regsvr32 scrrun.dll /u /s //删除 ! c p, m4 e- z; U8 ?. _
基于shell.application组件的asp木马 7 i. B0 m( ~! ^. V3 u
cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用
# n" g* D* ?# `8 V9 u$ C( K! Q9 E regsvr32 shell32.dll /u /s //删除
+ n* f8 H3 k F7 h/ t0 ~5 Q3.如何加密asp文件
9 i, n+ x: q% ?7 i; e- s 从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。 . F9 b3 m8 }* ?5 L2 `
安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。 E( Z2 K( L" Q0 w1 K; \0 b
运行screnc - l vbscript source.asp destination.asp , y1 Q3 I5 ] z8 A$ Q( N
生成包含密文ASP脚本的新文件destination.asp
* F1 `3 J" S0 e5 M 用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了
: h: F4 \: O* Z: Y 但无法加密中文。
* x7 R) z3 U2 x- v4.如何从IISLockdown中提取urlscan * h6 k+ J8 Y( R- F# x9 j
iislockd.exe /q /c /t:c:\urlscan 9 n7 T$ C" I9 r! F2 c( l
5.如何防止Content-Location标头暴露了web服务器的内部IP地址 3 I. d# W, K2 {) ~- L
执行 ! d0 j G3 w0 I! H% Z
cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True " y9 ~8 d4 U& ~" c; E/ N
最后需要重新启动iis ' i# T; c% T& G: O% Y' _
6.如何解决HTTP500内部错误
/ G! O) F6 z, p8 B7 |- ] iis http500内部错误大部分原因
Z4 b( B2 t6 t' W3 t8 C& S 主要是由于iwam账号的密码不同步造成的。 6 J% A, b+ x% z1 O
我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。
& r% N' ]$ |; V0 o: m* B, \ 执行 # E* L. v, Y- I, G
cscript c:\inetpub\adminscripts\synciwam.vbs -v 2 l& s* a. q7 \- o, g
7.如何增强iis防御SYN Flood的能力
, n/ _* n- _% t# ? Windows Registry Editor Version 5.00 - H, N- k: m) |3 _4 E- @2 z
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] ' H3 V# A6 b) U% W6 b
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后 : X' L; y$ O8 @
安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。
& H4 w! `% _3 h/ U5 I$ ~) u/ i "SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。 % v+ b. x' o2 ^, m$ K/ s0 j
"TcpMaxHalfOpen"=dword:00000064 5 @) k! j z5 S
判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。
, p9 C2 L5 m% C/ B* X' Y; K "TcpMaxHalfOpenRetried"=dword:00000050 ! M! J; {& t- y- m. d- k
设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
" q, ?1 R) i; _- i% x3 `: b: o: f 项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。 ; E1 k4 `8 Z! G( ]& ~4 g
微软站点安全推荐为2。 - D v! l4 \# K: h1 c
"TcpMaxConnectResponseRetransmissions"=dword:00000001
2 m3 J, b; V8 K6 H5 H 设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。
1 }4 O$ h- N. Q. I) L; G- Q "TcpMaxDataRetransmissions"=dword:00000003 & Z& N( L5 ]: |* ?
设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。 , r; M, \: L+ |/ i. y9 K# h
"TCPMaxPortsExhausted"=dword:00000005
: V' F3 r0 P' X 禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
3 j; q, X( ]$ X5 p "DisableIPSourceRouting"=dword:0000002 6 h" s8 I5 H4 H, W( A q
限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。
- Y" W7 m2 X. q2 S "TcpTimedWaitDelay"=dword:0000001e
; P8 X0 `6 n# @2 D! z/ g8.如何避免*mdb文件被下载 3 T+ J B8 m' @" M! z
安装ms发布的urlscan工具,可以从根本上解决这个问题。
5 O% b/ \( [$ H6 c: I3 h+ n 同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。 % I; B0 y4 \; ~
9.如何让iis的最小ntfs权限运行
5 y+ y! T4 q o; I 依次做下面的工作: 6 l+ z- s& W0 a8 R
a.选取整个硬盘:
) O9 W7 |4 |. K- B( l; e system:完全控制
, l% H4 s# ?5 s- b, m& c: I3 H" x administrator:完全控制 0 F" P3 e% I5 e" e4 g! y
(允许将来自父系的可继承性权限传播给对象) - W; v' Y% f* i/ c" m6 X6 a
b.\program files\common files: . c3 ~9 J! p& ^7 z6 s* H
everyone:读取及运行 ! o7 F9 n/ U! Q/ W
列出文件目录
$ {1 e1 q4 D, c! ] 读取
3 G6 q4 ~3 b, I) _4 g' s (允许将来自父系的可继承性权限传播给对象) 8 K1 {8 f, q0 ]4 \$ o
c.\inetpub\wwwroot: 3 I/ m0 ^: t) |* B7 L7 S# T
iusr_machine:读取及运行 3 h# z, G# z+ }6 O: b
列出文件目录 % P+ l/ G+ S; D, {2 v! y3 [" |
读取 / Q* ~+ b6 P1 |1 ] o3 Y
(允许将来自父系的可继承性权限传播给对象) $ J2 C# S* _2 x" ?$ L, D+ k
e.\winnt\system32: 1 Q7 G6 c5 |7 P. H7 O( ^. q @7 K
选择除inetsrv和centsrv以外的所有目录,
! b( b) B* a1 p/ [; E$ ` 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
7 D% L: R& d3 F0 X4 T f.\winnt: " n) d* x+ R; } g1 a% F1 \
选择除了downloaded program files、help、iis temporary compressed files、 9 s- Z: u9 v, `3 W4 f
offline web pages、system32、tasks、temp、web以外的所有目录 # g' E# c ~- B% N+ _
去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
, h; q4 W) J+ y( ^8 [( u1 y g.\winnt:
2 N' x4 O F) N3 o2 L! t6 t" u everyone:读取及运行
8 j+ ~5 |) }" X9 X) L 列出文件目录 3 F3 m% O( E0 Z+ y) G" m
读取
7 F$ C0 h }- _3 g; J! K (允许将来自父系的可继承性权限传播给对象) / I9 ]- u) o# E2 p. L" \* X
h.\winnt\temp:(允许访问数据库并显示在asp页面上)
! z. o. `4 J: V' K1 S: }, z# q everyone:修改
: e* ?; c' R5 } (允许将来自父系的可继承性权限传播给对象)
& t6 N) S: Q$ b7 Y$ P! D10.如何隐藏iis版本 ; V* [5 H5 y/ j; k. e5 B6 s
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息 + v: x) O1 [" P Z1 {
iis存放IIS BANNER的所对应的dll文件如下:
4 s( J* {# A; L) `6 ^" X6 Q r, x WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL 4 Q5 X$ i o5 _/ J
FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL
. [9 p, B M9 E SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL - T0 J9 `5 k/ P: [8 A6 j2 S
你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0
# ?/ x' H! A' N" W% }' A 具体过程如下: ( N/ N' u, z/ R( Q4 v% c, j/ Z
1.停掉iis iisreset /stop 4 Q2 D$ N$ H5 a6 R; z
2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件
6 v9 [3 l" s* G- _ 3.修改 |