一位高手整理的IIS FAQ
4 _$ a5 |; T* p8 f+ t下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的! d* o# V0 V3 q) l3 Q& s- \% a
1.如何让asp脚本以system权限运行 6 s9 e$ P. t( Y) p' N5 R f& t
修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低".... 8 ]& Q) W( `( u. J1 z. \- D m6 z
2.如何防止asp木马
" B% T( I& i: _0 B" C- M 基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用
* d: }+ y. J- s* h+ | regsvr32 scrrun.dll /u /s //删除
9 [" m B+ O- B- g2 x- I% \9 Y 基于shell.application组件的asp木马
9 Y$ F, M' x2 B5 z+ m, `/ |5 V cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用
; S Q* h% Z/ F) @6 ?- j, _ regsvr32 shell32.dll /u /s //删除 , h) \6 c; L+ Y* E! h2 F
3.如何加密asp文件 2 M6 \( S8 [0 P3 R" H" y( M p
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。 7 ^" u+ R: R# R- I: K" e, ], E
安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。 : X8 }; q2 b6 ]* I4 T
运行screnc - l vbscript source.asp destination.asp
4 w$ f5 P5 t0 J# a% R 生成包含密文ASP脚本的新文件destination.asp : R* S6 i$ t3 f! M
用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了 ! Y) a8 Y6 d I$ t
但无法加密中文。
# E2 Q% @2 r8 Q0 ~5 d r& j# u4.如何从IISLockdown中提取urlscan
+ H8 A+ o1 G# G" y$ U. {9 b0 x" D" T iislockd.exe /q /c /t:c:\urlscan 7 W5 W S# c) K. d6 M0 I
5.如何防止Content-Location标头暴露了web服务器的内部IP地址
8 h G9 E) x' S# `& A7 |- u 执行
( E5 A& O1 R2 Y( K# e cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True / ^% }5 U# `$ m/ Z# l5 [
最后需要重新启动iis ' N7 |& A. u; K9 | V2 _
6.如何解决HTTP500内部错误
; U& ` i8 }+ U1 m$ |; L% X iis http500内部错误大部分原因 e% D+ S/ B: ~: \
主要是由于iwam账号的密码不同步造成的。
; V, Q5 a; z+ @# Y0 ^- r 我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。 3 {. ? t2 a6 s Z* U* H3 |
执行
* x0 `3 T( H& r- j& Q$ v1 t cscript c:\inetpub\adminscripts\synciwam.vbs -v * g e& r8 D ~5 t
7.如何增强iis防御SYN Flood的能力 9 s+ ^( _7 x3 x5 z
Windows Registry Editor Version 5.00 ) Y' T2 T4 W. B! C- _' M
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
$ V8 d, Z' W* Z, G3 A0 v 启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后
' E- L7 ?' X- W, E 安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。
! x& S6 Y% r1 R3 j "SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
9 q5 H- {8 |9 c% M$ { "TcpMaxHalfOpen"=dword:00000064 ) W, N' p$ ~9 J$ N7 a4 [& Q0 j
判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。 4 i. Q" r3 y" v; i3 M) Q/ K4 ~2 f
"TcpMaxHalfOpenRetried"=dword:00000050
, O3 G4 Z! V5 |8 q8 r( v! [& W 设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
& W1 M7 O! [$ N2 J" q( q7 ~+ G( X% Y* \ 项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。 * L3 e9 \, b$ |) a9 }5 Q3 Y2 D
微软站点安全推荐为2。 , {! i, @7 m- \4 I5 i
"TcpMaxConnectResponseRetransmissions"=dword:00000001
/ X( ?- k" v( x E 设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。 % [, _6 i0 H7 `9 A# j1 W" r
"TcpMaxDataRetransmissions"=dword:00000003 : p: G8 k) t: D/ x- B0 n
设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。 ! o2 O5 k, C. z& ]1 W
"TCPMaxPortsExhausted"=dword:00000005
; E# e% o1 x( j: X- s 禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。 ) b: T5 P* g1 C$ b
"DisableIPSourceRouting"=dword:0000002
: m0 K5 U) W. \1 d2 H0 S g2 e+ s 限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。
$ f5 W5 u8 h. R7 W( ? "TcpTimedWaitDelay"=dword:0000001e 0 L, a" a" T3 Q% L
8.如何避免*mdb文件被下载 % i& c0 ^. R# j0 B
安装ms发布的urlscan工具,可以从根本上解决这个问题。 4 L) H' S# Q9 W4 }6 q; s' K
同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。 % j- p3 s6 m! m3 |; b
9.如何让iis的最小ntfs权限运行
% U- j- }' m w- T$ E# N 依次做下面的工作:
# G9 P& |3 h+ S4 I a.选取整个硬盘:
- w: Z( c# F2 U( R$ ` system:完全控制 # h- J/ }3 W5 m! C( [# N
administrator:完全控制
: X3 {8 u" g: s% f. T (允许将来自父系的可继承性权限传播给对象)
. O4 f' T& ? }8 [ b.\program files\common files:
Z8 s3 f& V! l8 b6 v everyone:读取及运行
3 Q( W P! L- B, G4 D% ~" T& q. E1 J 列出文件目录
U% [6 Z. p2 y. S: P- O 读取 8 ~# h- }! ?: g( a+ n
(允许将来自父系的可继承性权限传播给对象) ; U. ?/ K* l$ ?. K
c.\inetpub\wwwroot: 6 }: t' ?+ _5 ~ K+ ~
iusr_machine:读取及运行 8 w1 t C1 [9 m, |2 n
列出文件目录
) F; l8 x3 p# |8 X 读取 : i2 D4 a1 A' \2 u
(允许将来自父系的可继承性权限传播给对象) ! n% _2 q- t. G* R7 _, e7 x$ p
e.\winnt\system32:
1 [- _( z0 H9 c4 r2 l: v 选择除inetsrv和centsrv以外的所有目录, 3 D0 K" u3 s& x0 A
去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
, n2 F1 S* f( c f.\winnt: " Q8 B2 W+ j; d6 _; m+ x3 i2 V
选择除了downloaded program files、help、iis temporary compressed files、
! o) v& v8 z4 |) C1 P* d' ~ offline web pages、system32、tasks、temp、web以外的所有目录
" g! x$ y& B2 N) L5 s$ ^ 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 0 n, u2 \) j: d+ Q
g.\winnt:
3 a( |$ D6 u0 }/ x+ i0 g) { everyone:读取及运行
; ~4 j" @4 D+ @. _% A 列出文件目录
7 ^7 n# r6 f: z" Q+ t9 W7 M# \ 读取
) v0 K7 M* K: [& N4 F0 M( e4 u( P (允许将来自父系的可继承性权限传播给对象) 7 X% l1 a0 C1 d7 x3 I
h.\winnt\temp:(允许访问数据库并显示在asp页面上)
4 [7 K6 y) l5 k s; G everyone:修改
; I, n+ N5 s$ f! j, m: _ (允许将来自父系的可继承性权限传播给对象) & l! `* c9 Y& H' b
10.如何隐藏iis版本
0 x! D- z& b; U7 v+ F0 M5 U 一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息
" A' J, h/ z, ~/ N iis存放IIS BANNER的所对应的dll文件如下: # d- H$ G% y/ ?" R: f
WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL , ^+ M' I: C I1 K) r- g9 ]
FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL
( c% t) X- @$ ^2 V; F SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL 5 _( T- ]( _( e7 v
你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0 % F% x& A8 p- [( r2 n9 }* m0 i
具体过程如下:
% \: t+ Q8 K g0 N2 F4 I8 ^ 1.停掉iis iisreset /stop 2 Z; |* S3 o- \$ D6 P; C) V
2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件 0 ~& o8 c3 }8 Q p5 X+ I7 j) Q$ v
3.修改 |