|
一位高手整理的IIS FAQ
& k; d* d* }& p" \* ]下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的!
# h$ y: ]0 E' Q: W! A0 J1.如何让asp脚本以system权限运行 4 o$ u$ N( [ b- G$ b; M$ J8 b
修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
3 D" w* S: C# z$ }: v! y3 U6 F. u2.如何防止asp木马 $ \: t ?9 b/ ]3 N( o
基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用 5 E+ V" X- a4 _. s- j3 H
regsvr32 scrrun.dll /u /s //删除
" M4 A+ u+ Y' V& b 基于shell.application组件的asp木马
( ?1 u. p7 A4 c) B4 N; ` W cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用
( k6 `6 w$ e% a H& V3 r! R regsvr32 shell32.dll /u /s //删除
2 \/ |/ M% D0 t7 B0 N3.如何加密asp文件 ; y- m0 K9 _: `8 u3 P
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。
6 E* e5 Q) w, E2 n! f/ Q 安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。 . r1 E1 b3 F. [& l6 I" {2 N
运行screnc - l vbscript source.asp destination.asp
\' V' ~* f9 k6 P# {6 Q- i 生成包含密文ASP脚本的新文件destination.asp
: b% q2 r" ]6 ?# V 用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了
# @2 i6 ]/ N. e" I7 ^8 S/ l 但无法加密中文。 * T6 L' [7 n) P8 v0 r
4.如何从IISLockdown中提取urlscan # k5 j: p" e& f& H3 G. P, x3 E4 O
iislockd.exe /q /c /t:c:\urlscan
4 t2 D( ~ j* ]8 c' Y5.如何防止Content-Location标头暴露了web服务器的内部IP地址 8 g' b; X+ V- r
执行 4 {$ w5 q4 n. i1 v
cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True 2 M# H2 y# v' s+ d! V4 |
最后需要重新启动iis ' U) ~9 _: d7 w$ [) I
6.如何解决HTTP500内部错误 / b% T1 @: m# L0 b
iis http500内部错误大部分原因
4 ?2 @- E% b: L8 C6 A 主要是由于iwam账号的密码不同步造成的。
3 |; `" y3 i! f$ L. ^! o) Y 我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。 8 T4 c; C3 P( Q* [+ i$ S
执行
: ]# P/ G$ |8 J, S* G2 Q- H cscript c:\inetpub\adminscripts\synciwam.vbs -v 4 T2 u% _$ M" v
7.如何增强iis防御SYN Flood的能力 + B' n/ ^& B$ G" [/ W
Windows Registry Editor Version 5.00
6 Q2 L% s+ J* g: |2 N1 m [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] $ [4 l% E0 ^/ |+ T3 F
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后
. \( c& o+ C2 a 安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。 % x9 q- D) q* T% Y
"SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。 9 J; l! u1 ~" p- o5 P
"TcpMaxHalfOpen"=dword:00000064 , K8 A. o& V c5 T
判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。
+ F9 ~, f; X' l; O "TcpMaxHalfOpenRetried"=dword:00000050 8 ^% L6 t$ f7 C
设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。 , K2 {+ |7 v4 s; m# _& ]; I2 |
项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。 " A1 m6 A5 t( q# t7 h4 F
微软站点安全推荐为2。
9 A8 ^& _+ A. `. M "TcpMaxConnectResponseRetransmissions"=dword:00000001 ; V- q7 ~1 d& \% v. Q
设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。 $ `' Z( {) j* N) m+ R
"TcpMaxDataRetransmissions"=dword:00000003
, ^) R" c3 v' F# D* N! V% C y: S$ _ 设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。 : N4 d# D1 s5 b$ i v
"TCPMaxPortsExhausted"=dword:00000005
: r0 ?! m* s$ c7 b8 i7 F% K% C/ d% ] 禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
+ d. I3 L, M* |$ q$ s "DisableIPSourceRouting"=dword:0000002 $ v4 p' G; e. R, w# W
限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。
: t1 a. q& q( U$ X, _ "TcpTimedWaitDelay"=dword:0000001e
( u( j0 m0 u7 m) N9 L7 g, R M" r+ c8.如何避免*mdb文件被下载 ! M: P5 k0 ?3 M( H' ~
安装ms发布的urlscan工具,可以从根本上解决这个问题。 + n0 B& I- j$ x3 c
同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。
2 ~' o/ J& s* V0 ?( k9.如何让iis的最小ntfs权限运行 . e, K; j2 g+ L9 ~
依次做下面的工作: ( ?* A7 Y( L Z' f0 H! U9 _- ~
a.选取整个硬盘: 2 t* C; g' O, ]) _! K" \" r4 V+ |
system:完全控制 ) W E2 Y6 q" a/ ]3 d
administrator:完全控制
8 r; `2 M3 ]- j1 X0 ~* n8 c6 `+ h4 d (允许将来自父系的可继承性权限传播给对象)
* u" W! V! A8 h" p$ E! S b.\program files\common files: : B+ M9 T4 U) l- V9 h; ~ w0 G% h% v, o) `
everyone:读取及运行 ( k7 F# o" P( g" \$ Q! ` D
列出文件目录
3 X) ^4 t+ ^6 K+ D; @ W 读取 - c4 T N+ O7 k3 F$ ?7 I
(允许将来自父系的可继承性权限传播给对象) % S8 C) w# _8 h' ^. E1 D5 ?
c.\inetpub\wwwroot:
' ~. a0 J% I, {* U* q+ G5 j iusr_machine:读取及运行
" \* [1 l- c$ T( j7 q5 q) F! d 列出文件目录 9 c9 D8 ~, Z ~# u
读取
8 L9 Y5 r( E9 r- v/ K: B, M. X$ Q5 U (允许将来自父系的可继承性权限传播给对象) 2 D) M4 | m+ D& J" q4 D* {
e.\winnt\system32:
1 K5 _0 d7 V8 F 选择除inetsrv和centsrv以外的所有目录,
! v& V! |3 I3 v1 T$ {: h1 I 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
8 i' e% Q; b9 b9 J f.\winnt:
% x. x) E1 ?& u* w 选择除了downloaded program files、help、iis temporary compressed files、
9 l# M- a- i1 k3 _0 L2 Y9 d% V: v offline web pages、system32、tasks、temp、web以外的所有目录
2 Q* A, \+ X8 b, W' b 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 . @4 g/ ]" \ z! X* N
g.\winnt:
! N: |5 t7 J1 b6 ^) [ everyone:读取及运行 . R2 G* J F& q) _
列出文件目录
( k4 u9 j9 c0 b3 M' R( f 读取
* m2 }2 ^/ d5 H* \ (允许将来自父系的可继承性权限传播给对象)
& }6 g# p0 `8 b! C" M+ k6 h h.\winnt\temp:(允许访问数据库并显示在asp页面上) : e" h5 ~& g" |# H! [
everyone:修改
4 K$ Q. k2 b: B* {9 @1 Q( O (允许将来自父系的可继承性权限传播给对象) U9 [1 v, U3 b8 X. A- m8 `, O& H# a; Z& R
10.如何隐藏iis版本 0 s' }, H( c6 B v+ J) r
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息
5 f% R/ K. W5 ^/ A0 X7 }/ B/ O) Z iis存放IIS BANNER的所对应的dll文件如下:
' ~& }" K' _% X. y1 B: ~6 e' p WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL
$ r5 }& d* D$ { FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL @; N. ?( N% n/ P! o( A
SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL
# M G2 C! X" c8 n 你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0 6 c2 N" {3 U- q
具体过程如下: ' I9 O4 S5 e) X& W! g
1.停掉iis iisreset /stop
$ A$ g- s0 b; C; y% d2 Q, P 2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件
; g. e9 I. d! ]) R 3.修改 |