一位高手整理的IIS FAQ
, J8 B) T3 q2 a( |) c% L下面是一位高手整理的问题精华,大家好好看看吧,收获肯定很大的! 0 L9 t. Q v8 Z) q5 H* c
1.如何让asp脚本以system权限运行 9 |9 Q% E' \6 v9 ^$ o, D
修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
M, R- J9 A+ S: u8 w p& g2.如何防止asp木马
1 l b# T* W: w9 K8 { 基于FileSystemObject组件的asp木马 cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用
% O0 z+ a. b6 h; k c1 { regsvr32 scrrun.dll /u /s //删除
+ G6 F$ d$ ?2 K+ z/ l7 g% b/ i) i 基于shell.application组件的asp木马 ( U; c" ]' I5 i, P% z0 }( ?6 `! Z3 x
cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用 0 Z" Z3 K: c1 A, k. F' B
regsvr32 shell32.dll /u /s //删除 9 ]+ }" e" P2 }/ _$ ~9 j' J
3.如何加密asp文件 ; j( P3 i" y% b8 Y! t
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。
* f% l( {% }+ q& d 安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。
4 G7 R. T+ g! Y) w. R 运行screnc - l vbscript source.asp destination.asp
2 [& h7 C* G" a _# ?) H 生成包含密文ASP脚本的新文件destination.asp
) Y/ i% }6 f+ }2 J0 ?3 I; b* o2 K 用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了 ( {% m+ T, L0 D" O) F. ]. I
但无法加密中文。 0 `. o- }4 H1 |: {# p
4.如何从IISLockdown中提取urlscan
# d" E1 l! `9 f: h' Q! W e# ~ iislockd.exe /q /c /t:c:\urlscan
: v9 Z8 s5 s. r7 S5.如何防止Content-Location标头暴露了web服务器的内部IP地址
, [ l9 n% X; g: a 执行
1 H+ u1 i' |, C0 D" E! } s+ B$ m cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/UseHostName True
8 H' a$ X: u. Y+ l 最后需要重新启动iis ' ]; y, u2 X$ F* g1 d8 S
6.如何解决HTTP500内部错误 0 \5 E1 j" U2 L& s: J$ q+ s
iis http500内部错误大部分原因
( e7 E9 g5 g, `6 L 主要是由于iwam账号的密码不同步造成的。 % t* M6 u; t, J' k2 v$ Q/ Q+ E
我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。 8 F z! G. H6 J9 ?
执行
+ [; Z) r2 s6 x5 y" g6 M8 \. d cscript c:\inetpub\adminscripts\synciwam.vbs -v , e1 i0 c& Y9 {. I: k$ V% K, B
7.如何增强iis防御SYN Flood的能力
Y9 W6 h. \: p R B2 \ Windows Registry Editor Version 5.00
* K$ k4 H. l Y1 _- ~ [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] # b! L# N+ ~2 X$ h" t0 a* d* ~
启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后
|+ H! Z2 f2 q7 S. z! M 安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。 9 [; ?6 Q) [9 c% L9 y! g) C) H
"SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
6 o8 z+ r- r2 Y+ t: d "TcpMaxHalfOpen"=dword:00000064
" E, h+ ], P# H. Q% s 判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。 + X; J3 L4 }0 l5 R% w! N9 A. A/ l
"TcpMaxHalfOpenRetried"=dword:00000050 : Z/ p/ a2 h! `
设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
# ]) v5 l. `# J2 C$ n. K6 ] 项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。
! Z$ f8 A* q! M. e 微软站点安全推荐为2。
* ]) z) N* o8 ~* Q) [ l: @ "TcpMaxConnectResponseRetransmissions"=dword:00000001 + U& f: D5 q; o. o7 T3 k
设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。 0 c. [+ Y+ t' V* z9 z- j
"TcpMaxDataRetransmissions"=dword:00000003 5 ?% ]7 Z* ?' P4 d
设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。
3 x/ a; p6 S( Q3 D* ]% l "TCPMaxPortsExhausted"=dword:00000005
# n+ S. ~. S$ z: Z 禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
/ L5 _9 ^. |1 E' Q& s' Y; W: e "DisableIPSourceRouting"=dword:0000002
7 A, h. p4 B9 C: I 限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。 - n1 G: B8 t+ q" {4 S
"TcpTimedWaitDelay"=dword:0000001e 4 k2 b/ L; L( W) v8 j/ W: s
8.如何避免*mdb文件被下载 0 Y# A3 b" @5 K0 O# H$ s
安装ms发布的urlscan工具,可以从根本上解决这个问题。
6 q4 y* [4 j% P' X 同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。 / S5 c# ]+ ~% Z
9.如何让iis的最小ntfs权限运行
3 E7 p; n- {7 d! m# v; J+ R 依次做下面的工作: O9 ~ y$ F% O
a.选取整个硬盘: 3 R& Z3 P; `0 i/ y0 V
system:完全控制
; K+ z/ A2 F) o( L6 V administrator:完全控制 $ ^% b, P, e% c _$ W
(允许将来自父系的可继承性权限传播给对象) ( h2 d- z2 t( H5 E( e- {3 O0 }; l
b.\program files\common files:
; Z2 f+ d( F" V# Q everyone:读取及运行
( J1 x' w, ?, h$ _ 列出文件目录 0 b1 R8 B) d+ \/ s( P) c
读取
: ~0 L1 K5 O1 D' b# A- t (允许将来自父系的可继承性权限传播给对象) $ D2 K& g$ B4 k% t; }9 c
c.\inetpub\wwwroot: O9 V( [1 a8 m" I. n& Q4 f( w
iusr_machine:读取及运行
8 D- C9 c! Z& F0 n# E; Z( i 列出文件目录 ( h) n! t6 H; P+ u# U
读取 $ m5 T8 {5 G" s2 W
(允许将来自父系的可继承性权限传播给对象)
+ D) \6 _' N( a% ~: f' k3 ` e.\winnt\system32:
* C, I3 D1 G9 X! {, B2 A# z' T 选择除inetsrv和centsrv以外的所有目录, ) M* }8 X/ j' R; T' A) S4 s- Y
去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
+ Y5 M/ Y" q& }, I f.\winnt:
$ `4 C* r& ]/ j: C8 a 选择除了downloaded program files、help、iis temporary compressed files、 & d+ B* O4 ?# Z+ }3 _3 a
offline web pages、system32、tasks、temp、web以外的所有目录
, }8 y: u5 ], U# E5 x, X 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 , C/ X1 e8 g( Q: o3 \ q
g.\winnt: & V" _! {$ v! z7 y0 ]) g+ K+ V
everyone:读取及运行
) j+ q6 C# O; C* t% M- B0 i 列出文件目录
! D3 U- q% S p% [ 读取
! C4 |; g U8 h- [% P) i8 r (允许将来自父系的可继承性权限传播给对象)
# f( ^" o+ _7 j h.\winnt\temp:(允许访问数据库并显示在asp页面上) ( H; f$ J4 b1 N8 n5 l7 X9 |7 `+ ]
everyone:修改 ; U. F2 v* e5 r G& U4 ~+ ?
(允许将来自父系的可继承性权限传播给对象) * I: h1 x: F) s- H ?
10.如何隐藏iis版本 3 N# W8 k- E( i& ^; U: N
一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息
$ G* B0 h7 c( }' a; }( n* }' l. [ iis存放IIS BANNER的所对应的dll文件如下:
' }* p$ ?8 J$ |- r2 u- C- ? WEB:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL 7 N+ g; R5 O5 Y5 `! u) h
FTP:C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL - _9 c; e6 i! k1 O8 Z
SMTP:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL
8 b+ r/ l2 Z& u- ~5 I7 ^4 T 你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0
( _' ?' A# J" ?' f& \ 具体过程如下: 0 i& |) _8 D) R6 }! L4 E7 Z# u
1.停掉iis iisreset /stop 5 v1 v3 K& `5 j/ n- U8 ?1 f" _& S
2.删除%SYSTEMROOT%\system32\dllcache目录下的同名文件
* M) b0 R. L" L0 w, _4 K% r: }% j 3.修改 |