返回列表 发帖

学会十个“如何”打造安全IIS服务器

1、如何让asp脚本以system权限运行
1 `) s+ C! u+ Q* w. Z$ j修改你asp脚本所对应的虚拟目录,把"应用程序保护"修改为"低"....
) e$ |. \% ~& M( P5 a% Z; i2、如何防止asp木马
) r- j: ~# ^3 ?- h& F基于FileSystemObject组件的asp木马 3 ~0 o  e) Z$ f3 t
cacls %systemroot%/system32/scrrun.dll /e /d guests //禁止guests使用
9 z- F3 ~2 x7 d2 Kregsvr32 scrrun.dll /u /s //删除4 Y% I. C% o' O9 A* N
基于shell.application组件的asp木马
" B& H" d( s' Y$ R& Z/ b# @8 }+ [) Icacls %systemroot%/system32/shell32.dll /e /d guests //禁止guests使用
$ v* q! E/ x7 I5 V& vregsvr32 shell32.dll /u /s //删除
$ c& D. j( b# o% o3、如何加密asp文件 ( F( k4 }4 a: l3 h
从微软免费下载到sce10chs.exe 直接运行即可完成安装过程。
3 G% }( Z5 f6 {% \安装完毕后,将生成screnc.exe文件,这是一个运行在DOS PROMAPT的命令工具。" t9 f- n7 o3 x
运行screnc - l vbscript source.asp destination.asp
4 a- [: p  n" D生成包含密文ASP脚本的新文件destination.asp
1 E7 l" D/ q0 I+ O+ S3 Z用记事本打开看凡是""之内的,不管是否注解,都变成不可阅读的密文了' D7 P4 R4 F3 @0 e" f
但无法加密中文。
: P1 G5 W9 L+ Q+ A4、如何从IISLockdown中提取urlscan
5 m; c! Y6 R3 Z4 T/ P4 Riislockd.exe /q /c /t:c:/urlscan9 z( \# y* M! _0 \' @# }$ ]! Z
5、如何防止Content-Location标头暴露了web服务器的内部IP地址 8 v. x+ M/ E# O/ g9 e$ j2 H
执行
1 s8 z( B$ n5 Z- p2 w# ecscript c:/inetpub/adminscripts/adsutil.vbs set w3svc/UseHostName True   D; @( J7 k5 }3 W  T$ v, z1 e
最后需要重新启动iis
5 L" \- x. P& m6 D" x) y6、如何解决HTTP500内部错误# g! q; a) L4 P  k1 x
iis http500内部错误大部分原因/ f$ g3 N2 K* p4 w; T
主要是由于iwam账号的密码不同步造成的。
# p; l% a0 Q, w. b3 C; }) L我们只要同步iwam_myserver账号在com+应用程序中的密码即可解决问题。8 k) q" X) @2 r  P+ M$ ]
执行 6 W4 I& f$ h& N/ F
cscript c:/inetpub/adminscripts/synciwam.vbs -v
7 N* I6 t- [  s7、如何增强iis防御SYN Flood的能力
) \: K& v; x- B, M3 e/ pWindows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters]
7 x+ e+ a; ~8 D启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后 安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值 设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。" Z* ?7 z, `3 o) O% R: l( I
"SynAttackProtect"=dword:00000002 同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
: e6 A1 S  r' d4 R"TcpMaxHalfOpen"=dword:00000064 判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。 "TcpMaxHalfOpenRetried"=dword:00000050
9 M( V! y+ a8 {6 a, v9 S设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
8 x0 o0 h$ s- q# e% m% \4 v1 f项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。/ C' @) }: O  F+ M4 F- A4 q. b
微软站点安全推荐为2。
5 N; N# @0 o8 u"TcpMaxConnectResponseRetransmissions"=dword:00000001
' f; i' z& s7 }+ r( j4 \6 d  U设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。 1 }  H+ L2 J& G( B5 X" K3 X
"TcpMaxDataRetransmissions"=dword:00000003
: a  f" m8 K# T# w4 i设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。
8 h( d* _# M0 J0 V5 `2 Z1 k* C"TCPMaxPortsExhausted"=dword:00000005 2 W/ m# W' r$ p% r
禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
/ y0 W: A8 h8 @3 g) H; l( L) E6 V* ]"DisableIPSourceRouting"=dword:0000002
0 k  z, [* v- n3 C' r6 J9 g限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。) H4 d5 y# ~8 E* k
"TcpTimedWaitDelay"=dword:0000001e
9 Y  x* {$ Y6 o4 q- r! n7 z5 V: o
. K3 f' \" c7 ]% u9 e0 B  n8、如何避免*mdb文件被下载/ @' k1 c% H' p7 R
安装ms发布的urlscan工具,可以从根本上解决这个问题。+ t1 @1 z- i3 q( U3 l
同时它也是一个强大的安全工具,你可以从ms的网站上获取更为详细的信息。
. _1 P: Q* i" t( }1 ?5 |* t& o6 _- T9、如何让iis的最小ntfs权限运行 1 ~: ^5 }! S$ p$ ]
依次做下面的工作: ; r: z8 x9 @, @% Y: m: C- R
a、选取整个硬盘: : H% t8 \; u. ~
system:完全控制
9 V  Y) ]- D" A7 M7 ^administrator:完全控制
: j# k6 j) `8 f& ?4 b' {" U. V- X* S5 u(允许将来自父系的可继承性权限传播给对象) b、/program files/common files: 2 b* A3 s6 G2 v* H2 e7 J( a
everyone:读取及运行列出文件目录读取 : ?7 G: R* r- u! P" h, E  d, h
(允许将来自父系的可继承性权限传播给对象) 3 q3 G( H2 Y- |- p
c、/inetpub/wwwroot: , s% I# W- b/ T5 x% q
iusr_machine:读取及运行列出文件目录读取
- G3 a& L! P- j' b" J3 ](允许将来自父系的可继承性权限传播给对象)/ k( |) S, f+ y, A. W
e、/winnt/system32:, ]1 a5 C& i9 U" }
选择除inetsrv和centsrv以外的所有目录,去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 9 `& B4 B# d+ p& t, u5 [0 n8 E7 i
f、/winnt:
- ~* G+ `! G4 s# Y选择除了downloaded program files、help、iis temporary compressed files、offline web pages、system32、tasks、temp、web以外的所有目录去除“允许将来自父系的可继承性权限传播给对象”选框,复制。
" r; _8 k" F0 n. og、/winnt:
  B: A1 Y1 X& o& y  
5 _+ W0 \: o5 z* H. l4 _, geveryone:读取及运行列出文件目录读取8 T) R$ s  m) N( c4 @' r7 b
(允许将来自父系的可继承性权限传播给对象) ' v$ C* L$ E, P1 i, I
h、/winnt/temp:(允许访问数据库并显示在asp页面上)
: f5 u" C" Y+ f1 f( ?- k2 O  \everyone:修改 / v8 [2 p6 n6 O) C" W
(允许将来自父系的可继承性权限传播给对象)  }/ T$ K  B1 L2 h1 L# n
10、如何隐藏iis版本
  f" W! `' g, q2 m' N3 Q一个黑客可以可以轻易的telnet到你的web端口,发送get命令来获取很多信息
  G* r* r1 D/ diis存放IIS BANNER的所对应的dll文件如下:" j* l$ D( ?/ n, J  V% g- Q0 e6 x
WEB:C:/WINNT/SYSTEM32/INETSRV/W3SVC.DLL
) l  ~& _: ?3 L  }  ]$ WFTP:C:/WINNT/SYSTEM32/INETSRV/FTPSVC2.DLL
4 |! @7 V$ U/ q7 y5 \* iSMTP:C:/WINNT/SYSTEM32/INETSRV/SMTPSVC.DLL 1 V/ B8 d1 k' W9 `
你可以用16进制编辑器去修改那些dll文件的关键字,比如iis的Microsoft-IIS/5.0
. t9 Y, u! J' ]# G, |1 `具体过程如下:
" P" K4 h% o9 \1、停掉iis iisreset /stop * p5 a; J6 ~0 f' |7 d3 m6 b
2、删除%SYSTEMROOT%/system32/dllcache目录下的同名文件( f$ T/ O2 x: ~/ s$ H; _
3、修改

返回列表
【捌玖网络】已经运行: