一位高手整理的IIS FAQ
! R L) |: z3 e+ s- D+ K下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的! , X3 `$ P" q. S# l3 C! `+ I A% f
1.如何让asp脚本以system权限运行 - J3 H4 |7 i8 \4 j7 n* D
修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
2 T& T. S9 ]8 A4 Z+ _: K2.如何防止asp木马 % C! G; v/ O9 A, p
基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用 0 n) i3 [# k4 w! x* S& f ^
regsvr32 scrrun.dll /u /s //删除 - W ~& o/ G6 f5 c7 B
基于shell.application组件的asp木马 a) @ ?5 A$ t& w
cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用 9 O G9 c% n/ w6 \. z1 H2 a
regsvr32 shell32.dll /u /s //删除
* I6 T. J( ]6 K }4 b8 R+ ]3.如何加密asp文件 4 b' K6 W7 q/ P o1 ?
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。 & A! l& [: o; f# {( p5 x5 P# `
安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。 q9 ^9 H5 k( A$ J) }
运行screnc - l vbscript source.asp destination.asp 3 ]5 Y7 O- E8 B0 O. p
生成包含密文ASP脚本的新文件destination.asp
) S5 f5 x L3 U) k+ g3 c+ Y 用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了
! C% S# P: g2 M4 ]! X 但无法加密中文。
# O0 R- w+ d1 T3 a9 \" F4.如何从IISLockdown中提取urlscan
( U4 q* Q' {( v, o iislockd.exe /q /c /t:c:\urlscan + H9 u" i# j* b( R3 p
5.如何防止Content-Location标头暴露了web服务器的内部IP地址
! |' E3 Q: l6 p8 Q9 T2 X( t8 n& Z* T 执行 7 e- q9 t f& d7 H
cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True
. s0 I6 J2 ^, v# m2 [' r( K 最后需要重新启动iis
: ]4 Y1 h9 Y% h) K |9 Z" E) |6.如何解决HTTP500内部错误 $ D7 H6 y \2 c. }2 [6 m/ ?3 Z4 p
iis http500内部错误大部分原因
! k$ g' u+ e0 ~5 r2 l( q 主要是由于iwam账号的密码不同步造成的。 9 r! P% P! Q* M' u# `5 o; I
我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。 6 @: J2 x) y; P: \% @/ K/ n
执行
; d: b8 l5 H9 S8 s' \ cscript c:\inetpub\adminscripts\synciwam.vbs -v ( m. A; U3 H7 m3 Q. g% o
7.如何增强iis防御SYN Flood的能力
, m: K/ R9 n9 O2 w1 B Windows Registry Editor Version 5.00 0 I, j$ @& v4 e) R( N
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] $ U+ U* t1 I2 X
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后 ( g9 v8 m/ |8 ~& G! f: k/ _/ b" C
安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。
' N, i- W" |# t4 ^3 j "SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
2 p3 g; Q v; v8 d" {$ I: ^ "TcpMaxHalfOpen"=dword:00000064
+ ]3 y% B6 _3 {: K2 P0 f" F0 C+ b* ?- v5 Y" p 判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。
. l% c4 t0 [6 i, g& c0 Q "TcpMaxHalfOpenRetried"=dword:00000050 # |; h7 b2 `, E& E" Q' f7 g6 @# b6 b
设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
& @& R/ @3 Z$ E6 `# D 项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。
: _" ~0 X! y# z* B 微软站点安全推荐为2。 % b- V, Z7 d: E9 l3 q+ o
"TcpMaxConnectResponseRetransmissions"=dword:00000001
# @3 w# U' a4 f/ m6 w, i' n 设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。
; x, W, u9 [) x9 u% J "TcpMaxDataRetransmissions"=dword:00000003
. _# k3 t! N1 P 设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。 & G: t" J$ l! b" Q. i
"TCPMaxPortsExhausted"=dword:00000005
; b7 I* |; D- A3 \/ A5 ^ 禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。 ! v& D5 x" a, X# x3 `1 N. Y
"DisableIPSourceRouting"=dword:0000002 7 Q& F2 m6 E$ L
限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。 - Q6 @ j. d5 ?7 M
"TcpTimedWaitDelay"=dword:0000001e
}# E( X! Z9 ~- Q8.如何避免*mdb文件被下载
$ r/ [/ U9 u" b* o8 h0 F 安装ms发布的urlscan工具,可以从根本上解决这个问题。 5 T5 {. b0 y$ V+ b' K0 @: ` \$ h
同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。 7 r% @# {/ H6 j* W
9.如何让iis的最小ntfs权限运行 ! g+ e$ T% J2 v- v
依次做下面的工作:
8 R% ], k# b9 U6 K a.选取整个硬盘:
( j& T1 |: E1 u9 i8 n system:完全控制 ! a" {4 n. [* t7 k- S
administrator:完全控制 1 I. v% g- m6 \' ^ T
(允许将来自父系的可继承性权限传播给对象)
9 ?; S8 V7 |; t7 g/ e2 c b.\program files\common files:
8 q" J1 ~# ]4 U& }2 r3 q everyone:读取及运行
0 h; j8 l4 Z9 p6 C0 o$ x+ F; _$ _ 列出文件目录
- k- Z( ?5 t% d0 i: n J' \9 c 读取
) ^% C B5 p2 z k6 ~+ X (允许将来自父系的可继承性权限传播给对象)
. F' u E+ w* K/ V/ x6 B c.\inetpub\wwwroot: # e2 `9 ^! [" U
iusr_machine:读取及运行 , K& J* b% E- S! W5 M# E5 e/ q
列出文件目录 : _. t$ D2 x8 C% L9 R% o
读取
1 P a1 N+ r* X- k t$ Y (允许将来自父系的可继承性权限传播给对象)
. _' ?2 G& N0 T; p' R) h0 q. z$ Z e.\winnt\system32: 7 P) K) a9 C) j u( Q3 }
选择除inetsrv和centsrv以外的所有目录,
! ]' V2 R5 a: ^+ a 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
* G% G+ d. n& _! G9 e f.\winnt:
1 x' }8 G3 c. A 选择除了downloaded program files、help、iis temporary compressed files、
, g0 a9 H/ |. n( n' P offline web pages、system32、tasks、temp、web以外的所有目录
! f( y5 L/ {2 J1 M) y4 i% o 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 / @5 Q* A1 K! y
g.\winnt:
1 B1 \& k6 O `! H1 ^' n everyone:读取及运行 " H* ^4 l5 f: J, m, ~: P. O
列出文件目录
' r2 t0 D+ t0 D2 `+ K7 e 读取 2 A% D4 z$ g% O" r- D) p5 m
(允许将来自父系的可继承性权限传播给对象)
- Q1 i5 W: Z9 y" i+ U) W h.\winnt\temp:(允许访问数据库并显示在asp页面上)
; t/ _/ z6 r8 d5 [% ~ everyone:修改
x0 [: O) l* G0 r' Y( [ (允许将来自父系的可继承性权限传播给对象)
6 a: i; i* ^1 _10.如何隐藏iis版本 4 D4 a( X; L2 ?4 G
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息 & }: e7 j; @! H D
iis存放IIS BANNER的所对应的dll文件如下: * Q w. o: w, k( }
WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL
; Q0 n" I+ z7 ~; y F* I FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL
1 ?/ Z/ z, N1 a5 K8 Z3 h( c3 X SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL % N9 ?, d9 ^, x, E8 j
你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0
0 c) `# @" i; l8 f 具体过程如下: , m/ n( {) f" F, v! S
1.停掉iis iisreset /stop
6 N8 P' D$ r2 Y 2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件
0 `% h% {$ h+ z, W5 U 3.修改 |