|
一位高手整理的IIS FAQ
* [; k- L- {9 J8 A' H下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的! 3 I( z0 t6 k0 Z' h9 [( E& V2 g
1.如何让asp脚本以system权限运行
# z4 ^0 f. I( ~; @: }* G9 l 修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低".... ; |1 P' F, @2 b- v4 ?# N
2.如何防止asp木马
: a* p7 d8 z, c 基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用 8 f7 d5 G% m5 w) v1 h
regsvr32 scrrun.dll /u /s //删除 1 g/ i/ z, c5 }- S- u) f) r
基于shell.application组件的asp木马
, ~, P. w# m% o% A8 W cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用
9 ~, e* Z7 S [ regsvr32 shell32.dll /u /s //删除
( N; F9 F! y" ]( f( k3.如何加密asp文件
$ o% g+ e% C5 c( I% e; u r; B7 G 从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。 " @, q' U* n( ?5 Z/ V8 i
安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。 $ e# Y4 [6 C$ @+ Z1 q; p% b
运行screnc - l vbscript source.asp destination.asp
! Y5 Y6 u/ _& K! J/ p, I' I% [ 生成包含密文ASP脚本的新文件destination.asp & N) u4 h0 O; ^; D! O
用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了 ! [8 e- i P* K9 B+ e* P
但无法加密中文。
4 U: m5 i- {% @# ^' b0 ?" |7 C4.如何从IISLockdown中提取urlscan
8 ]! U: g& c4 U( t# s* A iislockd.exe /q /c /t:c:\urlscan
4 D5 h' o6 A1 X* X8 y+ T, [5.如何防止Content-Location标头暴露了web服务器的内部IP地址
k' e$ L8 _ }* N3 ~; G9 p/ A 执行 1 F8 w) `: ~5 P8 n8 e" |
cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True
; o4 _) |. ]' B! @ 最后需要重新启动iis
; |) ?8 u* U# c' l* a7 E9 d6.如何解决HTTP500内部错误 2 s* h( F; J5 t* P
iis http500内部错误大部分原因 : c r' @. s: }- j) B
主要是由于iwam账号的密码不同步造成的。 p: ?& b2 k2 i' e% h$ W
我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。 6 [7 u1 c/ M; W+ ^# w+ p# }. y0 T
执行 % R; X9 o8 w$ | H
cscript c:\inetpub\adminscripts\synciwam.vbs -v * n* a8 P0 P6 N( x
7.如何增强iis防御SYN Flood的能力 ! {: S0 [: i2 U/ B, w5 @, ~
Windows Registry Editor Version 5.00
' ~+ Q' L! A* b. T [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] 5 {3 g: J' ?3 Q7 b8 R9 E5 {
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后
* l9 J. S: J- a4 T- _4 s) S6 b- u4 k% x 安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。 + Y6 [$ Y Q4 L% S! U2 W/ w% ~
"SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
- c/ s9 ~! T! V$ f "TcpMaxHalfOpen"=dword:00000064
5 |6 B& g! H2 W$ ` 判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。 ) f' v* [4 R$ h0 I
"TcpMaxHalfOpenRetried"=dword:00000050
: m: s, Z: G H6 Z' a& S 设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。 . r0 S, A5 L t
项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。 " Y$ Y$ U" N8 A
微软站点安全推荐为2。
1 Q/ J4 ]- I: h( ^ S8 r: a# s "TcpMaxConnectResponseRetransmissions"=dword:00000001
0 V0 U5 [# T4 l% R. F 设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。 7 g ]9 R1 i$ h7 `. R0 i2 f7 b/ R" N! W
"TcpMaxDataRetransmissions"=dword:00000003
6 j; w, a! \6 _" D: v$ h 设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。 ! ^3 `9 b O$ |1 v5 \* @7 G/ G
"TCPMaxPortsExhausted"=dword:00000005 " Y9 g6 V4 m% r6 o5 j
禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
* X6 @( W( f' ?- l& t0 [+ n1 O "DisableIPSourceRouting"=dword:0000002 ) {- ~' z6 _* X) u2 q7 P
限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。
$ V# F) O: C" _9 V/ u4 m0 B "TcpTimedWaitDelay"=dword:0000001e
; c, ]) z2 w+ k+ f+ I0 `8.如何避免*mdb文件被下载 1 P( s1 e8 p: g* ~: M# H( w. P1 o
安装ms发布的urlscan工具,可以从根本上解决这个问题。
3 Q6 R' J+ O; A; x 同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。 5 v4 r% N$ t4 y" i2 P
9.如何让iis的最小ntfs权限运行
' u7 t$ p6 ]9 p- U4 O- R1 s 依次做下面的工作: & ?% h: w; C7 g) M0 r. M1 H; Q; s
a.选取整个硬盘:
( P9 b! b0 ]9 h0 i; h2 G3 }, [& W system:完全控制 2 R( u( E3 n' R. t
administrator:完全控制 $ N% I8 t9 Q9 \+ O; u) l
(允许将来自父系的可继承性权限传播给对象) ; T# _( n: W) V8 d
b.\program files\common files:
( l1 V1 s& j' p* R: K8 S everyone:读取及运行 2 y) n* \% s; T( f( k# s; B; y$ F
列出文件目录
0 _- P$ w( a! d9 G2 X" C 读取 2 q. O. q- _: b. ?8 p) S7 T5 b! W
(允许将来自父系的可继承性权限传播给对象)
4 ~+ S) P* \( }# Q c.\inetpub\wwwroot: / e6 I( Z d, G+ ^5 l4 l) m7 i$ J! \" F
iusr_machine:读取及运行
. r! a/ l# x% ~ \( B+ Y8 _ 列出文件目录
& {; _- Z, s: g# a) L 读取 " Y9 u' e0 `/ _- }, Y: I
(允许将来自父系的可继承性权限传播给对象) 5 [" _1 M% Q) ^5 Q' q r k
e.\winnt\system32:
. c1 D3 d- S: z6 {) ^ 选择除inetsrv和centsrv以外的所有目录, . F* K$ Q- d' s7 k
去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
* Z% _5 ~0 M# h! B Q- w f.\winnt:
. d v# @: o6 t& m! H' l0 C: P4 s 选择除了downloaded program files、help、iis temporary compressed files、 % e4 B8 O+ g0 T# w! m$ b' O
offline web pages、system32、tasks、temp、web以外的所有目录 8 S6 G1 i% O8 ^$ q C# Q, O
去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 6 g$ @7 q/ G: X5 O2 M
g.\winnt:
" e+ n& i6 ^: l3 Q6 D; y4 c everyone:读取及运行
# e% q" W6 E& ~! y: n" ~3 l 列出文件目录 1 t: d: T2 H5 m/ }6 l* G
读取 % }" |2 P$ T3 r% }7 c: J- W
(允许将来自父系的可继承性权限传播给对象)
+ J0 t6 n' T* x# U! Z6 ?: e- g$ \ h.\winnt\temp:(允许访问数据库并显示在asp页面上) d' I% D ?2 d* ~; S8 h6 A
everyone:修改 / P5 a$ a! O4 o# X8 m; ~
(允许将来自父系的可继承性权限传播给对象)
* N$ S/ |, D6 B/ s9 w10.如何隐藏iis版本 " y+ [4 @7 ]1 ]! U& E
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息
, I T9 {0 t E! c, [. H1 p& [% l iis存放IIS BANNER的所对应的dll文件如下: ; `5 a$ V( A$ `2 E$ X0 \) Z# |
WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL
! t9 V+ k/ X" {- R% j6 S& L% v0 e FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL 1 ?% `1 Z! A- \3 @
SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL + l, l. |: P5 g+ v: _9 n# D: s
你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0 + \2 p+ z' _0 ~7 A- b C
具体过程如下:
* F7 A, T \4 s0 p2 P$ t 1.停掉iis iisreset /stop
# k# u8 R. P! b1 ^3 x, c$ M 2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件
3 _+ Z. Q! q$ `+ ` 3.修改 |