一位高手整理的IIS FAQ
& g0 S# T6 G0 H; @ q/ f% `) y9 E下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的! 3 \$ T& {8 Z# A) V0 l0 B
1.如何让asp脚本以system权限运行 # Y1 K. a4 Y$ |) k1 o! o3 I
修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
6 J9 m0 |. g! Z$ Y" x2.如何防止asp木马 * L( ?/ d$ U, [9 b& O( A) A% I
基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用
" ~. J- R& w% J4 T" H- V: v regsvr32 scrrun.dll /u /s //删除 2 \* K! w6 w5 |$ E6 v2 o
基于shell.application组件的asp木马 * n. H3 L- I/ H2 [$ S
cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用
% W, `' Q3 D, v& h regsvr32 shell32.dll /u /s //删除
- {7 P Y3 V7 m, h6 X3.如何加密asp文件 9 j' W1 T# n. h# S9 P( y% F
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。 % { G; f) r' y
安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。
4 X. y' S0 ^7 @& i 运行screnc - l vbscript source.asp destination.asp
* d+ u. |+ l4 J5 [9 j 生成包含密文ASP脚本的新文件destination.asp & F9 O( O/ C: M4 L
用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了
4 b$ i. W* [& f; E 但无法加密中文。
" {( R- d) }$ ^% l( E i4.如何从IISLockdown中提取urlscan 4 Y) I! m3 C7 J
iislockd.exe /q /c /t:c:\urlscan 5 v6 g' o" V [. [3 g
5.如何防止Content-Location标头暴露了web服务器的内部IP地址
& A9 \7 C0 l( I+ H$ U& x6 e* e 执行 , C; @; t5 s5 A, L
cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True
$ E; v k( \ {, g+ ] 最后需要重新启动iis 9 m+ M& f! a1 W) |4 v
6.如何解决HTTP500内部错误
K) q1 Z5 F; S4 Z% @ iis http500内部错误大部分原因
& [, p2 W' I! l8 k 主要是由于iwam账号的密码不同步造成的。
: }# c, U/ b/ t. l0 [/ W- {5 C 我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。 / e& ?, f# G+ m1 O) ^
执行
: V4 }, _9 m9 R% u! v; t cscript c:\inetpub\adminscripts\synciwam.vbs -v 3 Z3 B5 Y; f( ~' e& |, }5 D! c
7.如何增强iis防御SYN Flood的能力 * ~8 G& u% Z) H4 t; W% E: d' _
Windows Registry Editor Version 5.00
. X/ c% |. w, ]' s- ] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] ( V' f T" h, I1 H
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后 ; s9 n2 g# X: J8 G" U/ J1 w
安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。 : A$ V. M, S J0 {7 H
"SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
4 r4 z/ R. o5 O "TcpMaxHalfOpen"=dword:00000064
, i2 b5 X' M; i' e! a6 | 判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。
$ f$ _- f( j# B' ]( P5 _) z "TcpMaxHalfOpenRetried"=dword:00000050 4 d4 I: W- \* e: b
设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。 . `4 _! m* a2 |& {0 h
项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。 2 P- I: h2 u* ^" H
微软站点安全推荐为2。
: @& e/ b0 A9 n: @4 l6 K "TcpMaxConnectResponseRetransmissions"=dword:00000001 : b9 ]5 C8 m1 J5 ~% X, `: I
设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。
6 i# \! S7 q E0 O1 e& v6 w" O "TcpMaxDataRetransmissions"=dword:00000003 ; \3 w" w, X; H* b! U, j
设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。
- }" p; [1 W' f" H& d# Y4 D; K/ w "TCPMaxPortsExhausted"=dword:00000005
0 c1 D$ [3 V- E" m7 m 禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。 0 _9 G- U) u! H2 s. J- L' w
"DisableIPSourceRouting"=dword:0000002
& V- g( z0 n0 L 限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。 5 x* f s" Z; H0 N1 b; @$ s, V
"TcpTimedWaitDelay"=dword:0000001e
( n$ H# r* z7 L6 U2 G w7 {: a8.如何避免*mdb文件被下载
& v! D. I0 K* B, p, P 安装ms发布的urlscan工具,可以从根本上解决这个问题。 - C& [! K! X8 v1 d6 v
同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。
9 T$ }/ m# w# l' s9.如何让iis的最小ntfs权限运行
( q4 z& o. f, |2 T 依次做下面的工作: 8 V& n; J6 I5 C! o
a.选取整个硬盘:
5 g; k- a# p$ a u% t3 {" T system:完全控制 3 \4 t! J9 z2 k9 x7 Z
administrator:完全控制
0 {/ T. l# ^/ o (允许将来自父系的可继承性权限传播给对象)
( [& s: S- f( r# \ b.\program files\common files:
/ N0 N/ c% a) y8 J6 \; _8 I everyone:读取及运行 8 E: U _. P& o3 ?+ g# N) y X
列出文件目录
, \: G, h) B9 F: X& i# \$ v7 x 读取 8 s i) f v; H t5 h o, o
(允许将来自父系的可继承性权限传播给对象)
9 ^3 c0 O! p* e5 d; Y% s c.\inetpub\wwwroot:
8 G, |2 o1 p% J, V iusr_machine:读取及运行 7 S3 A) N \) n# E/ I% m
列出文件目录 3 q& T. K0 h) h1 ], j' c/ u
读取
7 W8 m6 Q' ~4 I4 N (允许将来自父系的可继承性权限传播给对象) . b E4 d5 B! y( R) i
e.\winnt\system32:
. `$ O, m2 c+ m2 ]4 _0 y 选择除inetsrv和centsrv以外的所有目录,
% a1 | C: U) i5 R 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 $ s" |" D9 Y0 b) ]. R7 y
f.\winnt:
% I) f- g1 H$ c" ]5 @' u 选择除了downloaded program files、help、iis temporary compressed files、 4 B/ b6 S( F! J" O6 L2 T! D6 H
offline web pages、system32、tasks、temp、web以外的所有目录 % L3 ]' A, m+ L
去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 7 h J6 l7 e3 T! l
g.\winnt:
0 t! U- a, \# r9 P2 @) e; x( T9 a everyone:读取及运行
- g' p Z# s' X' T7 x) _! G# a 列出文件目录 ! j, Z" y6 I/ i: o4 }& R
读取 $ w6 }, M9 b6 o6 ]# e+ z
(允许将来自父系的可继承性权限传播给对象)
. f- s9 A. V) ~+ g% M- v' M" B h.\winnt\temp:(允许访问数据库并显示在asp页面上) / L! i" ]$ A; ^( S1 _' L! w
everyone:修改
) _/ B! s# O5 ^6 s (允许将来自父系的可继承性权限传播给对象)
|" H! P. a. ?10.如何隐藏iis版本 ) c3 Q4 l& e& G, Z
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息
* f- @. [3 R( U4 X/ M iis存放IIS BANNER的所对应的dll文件如下:
, P) l6 B! p Z+ C WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL 2 I4 a1 p4 a. `$ S
FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL # C% ^, L z" S8 b
SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL
* w) C% V& F* b9 |$ w 你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0 , d1 }+ c7 K; k( }8 w" ] X& m
具体过程如下:
; _% \2 p6 r2 ~: w- \6 Q7 i 1.停掉iis iisreset /stop
0 C* _+ x6 Q9 _/ l2 c 2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件 o+ Z2 ?7 x# r' ]2 c# }( v: R0 c- R
3.修改 |