热搜词
发表于 2009-10-2 20:20:10 | 显示全部楼层 |阅读模式
本帖最后由 灰儿 于 2009-10-2 21:25 编辑

架设WEB服务器需要对你的服务器做出安全设置控制,用2003系统来说下具体安全设置如下:

一、服务器安全设置之--硬盘权限篇
  
  这里着重谈需要的权限,也就是最终文件夹或硬盘需要的权限,可以防御各种木马入侵,提权攻击,跨站攻击等。本实例经过多次试验,安全性能很好,服务器基本没有被木马威胁的担忧了。
  
  硬盘或文件夹: C:\ D:\ E:\ F:\ 类推
  主要权限部分:
  Administrators 完全控制 无
  该文件夹,子文件夹及文件
  <不是继承的>
  CREATOR OWNER 完全控制
  只有子文件夹及文件
  <不是继承的>
  SYSTEM 完全控制
  该文件夹,子文件夹及文件
  <不是继承的>
  
  其他权限部分:
  如果安装了其他运行环境,比如PHP等,则根据PHP的环境功能要求来设置硬盘权限,一般是安装目录加上users读取运行权限就足够了,比如c:\php的话,就在根目录权限继承的情况下加上users读取运行权限,需要写入数据的比如tmp文件夹,则把users的写删权限加上,运行权限不要,然后把虚拟主机用户的读权限拒绝即可。如果是mysql的话,用一个独立用户运行MYSQL会更安全,下面会有介绍。如果是winwebmail,则最好建立独立的应用程序池和独立IIS用户,然后整个安装目录有users用户的读/运行/写/权限,IIS用户则相同,这个IIS用户就只用在winwebmail的WEB访问中,其他IIS站点切勿使用
  硬盘设置需要根据你的实际需要来设置权限!

二、服务器安全设置之--系统服务篇(设置完毕需要重新启动)
  
*除非特殊情况非开不可,下列系统服务要停止并禁用:
1、Alerter
2、Application Layer Gateway Service
3、Background Intelligent Transfer Service
4、Computer Browser
5、Distributed File System
6、Help and Support
7、Messenger
8、NetMeeting Remote Desktop Sharing
9、Print Spooler
10、Remote Registry
11、Task Scheduler
12、TCP/IP NetBIOS Helper
13、Telnet
14、Workstation

以上是windows2003server标准服务当中需要停止的服务,作为IIS网络服务器,以上服务务必要停止,如果需要SSL证书服务,则设置方法不同。如果你装有虚拟主机系统,设置当然也不一样!更详细设置可以根据自己的需要找更详细的参考资料。
全部评论1
灰儿 发表于 2009-10-2 21:20:04 | 显示全部楼层
三、服务器安全设置之--组件安全设置篇 (非常重要!!!)
  A、卸载WScript.Shell 和 Shell.application 组件,将下面的代码保存为一个.BAT文件执行(仅限win2003系统,2000系统命令与此不一样)

  regsvr32/u C:\WINDOWS\System32\wshom.ocx
  del C:\WINDOWS\System32\wshom.ocx
  regsvr32/u C:\WINDOWS\system32\shell32.dll
  del C:\WINDOWS\system32\shell32.dll

  B、改名不安全组件,需要注意的是组件的名称和Clsid都要改,并且要改彻底了,不要照抄,要自己改
  【开始→运行→regedit→回车】打开注册表编辑器
  
  然后【编辑→查找→填写Shell.application→查找下一个】
  
  用这个方法能找到两个注册表项:
  
  {13709620-C279-11CE-A49E-444553540000} 和 Shell.application 。
  
  第一步:为了确保万无一失,把这两个注册表项导出来,保存为xxxx.reg 文件。
  
  第二步:比如我们想做这样的更改
  
  13709620-C279-11CE-A49E-444553540000 改名为 13709620-C279-11CE-A49E-444553540001
  
  Shell.application 改名为 Shell.application_nohack
  
  第三步:那么,就把刚才导出的.reg文件里的内容按上面的对应关系替换掉,然后把修改好的.reg文件导入到注册表中(双击即可),导入了改名后的注册表项之后,别忘记了删除原有的那两个项目。这里需要注意一点,Clsid中只能是十个数字和ABCDEF六个字母。
  
  其实,只要把对应注册表项导出来备份,然后直接改键名就可以了。
  WScript.Shell 和 Shell.application 组件是 脚本入侵过程中,提升权限的重要环节,这两个组件的卸载和修改对应注册键名,可以很大程度的提高虚拟主机的脚本安全性能,一般来说,ASP和php类脚本提升权限的功能是无法实现了,再加上一些系统服务、硬盘访问权限、端口过滤、本地安全策略的设置,虚拟主机因该说,安全性能有非常大的提高,黑客入侵的可能性是非常低了。注销了Shell组件之后,侵入者运行提升工具的可能性就很小了,但是prel等别的脚本语言也有shell能力,为防万一,还是设置一下为好。下面是另外一种设置,大同小异。
  一、禁止使用FileSystemObject组件
  FileSystemObject可以对文件进行常规操作,可以通过修改注册表,将此组件改名,来防止此类木马的危害。
  
  HKEY_CLASSES_ROOT\Scripting.FileSystemObject\
  
  改名为其它的名字,如:改为 FileSystemObject_ChangeName
  
  自己以后调用的时候使用这个就可以正常调用此组件了
  
  也要将clsid值也改一下
  
  HKEY_CLASSES_ROOT\Scripting.FileSystemObject\CLSID\项目的值
  
  也可以将其删除,来防止此类木马的危害。
  
  2000注销此组件命令:RegSrv32 /u C:\WINNT\SYSTEM\scrrun.dll
  
  2003注销此组件命令:RegSrv32 /u C:\WINDOWS\SYSTEM\scrrun.dll
  
  如何禁止Guest用户使用scrrun.dll来防止调用此组件?
  
  使用这个命令:cacls C:\WINNT\system32\scrrun.dll /e /d guests
  
  二、禁止使用WScript.Shell组件
  
  WScript.Shell可以调用系统内核运行DOS基本命令
  
  可以通过修改注册表,将此组件改名,来防止此类木马的危害。
  
  HKEY_CLASSES_ROOT\WScript.Shell\及HKEY_CLASSES_ROOT\WScript.Shell.1\
  
  改名为其它的名字,如:改为WScript.Shell_ChangeName 或 WScript.Shell.1_ChangeName
  
  自己以后调用的时候使用这个就可以正常调用此组件了
  
  也要将clsid值也改一下
  
  HKEY_CLASSES_ROOT\WScript.Shell\CLSID\项目的值
  
  HKEY_CLASSES_ROOT\WScript.Shell.1\CLSID\项目的值
  
  也可以将其删除,来防止此类木马的危害。
  
  三、禁止使用Shell.Application组件
  
  Shell.Application可以调用系统内核运行DOS基本命令
  
  可以通过修改注册表,将此组件改名,来防止此类木马的危害。
  
  HKEY_CLASSES_ROOT\Shell.Application\
  
  及
  
  HKEY_CLASSES_ROOT\Shell.Application.1\
  
  改名为其它的名字,如:改为Shell.Application_ChangeName 或 Shell.Application.1_ChangeName
  
  自己以后调用的时候使用这个就可以正常调用此组件了
  
  也要将clsid值也改一下
  
  HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值
  
  HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值
  
  也可以将其删除,来防止此类木马的危害。
  
  禁止Guest用户使用shell32.dll来防止调用此组件。
  
  2000使用命令:cacls C:\WINNT\system32\shell32.dll /e /d guests
  2003使用命令:cacls C:\WINDOWS\system32\shell32.dll /e /d guests
  
  注:操作均需要重新启动WEB服务后才会生效。
  
  四、调用Cmd.exe
  
  禁用Guests组用户调用cmd.exe
  
  2000使用命令:cacls C:\WINNT\system32\Cmd.exe /e /d guests
  2003使用命令:cacls C:\WINDOWS\system32\Cmd.exe /e /d guests
  
  通过以上四步的设置基本可以防范目前比较流行的几种木马,但最有效的办法还是通过综合安全设置,将服务器、程序安全都达到一定标准,才可能将安全等级设置较高,防范更多非法入侵。
  
  
四、服务器安全设置之--IIS用户设置方法
  不同站点使用不用的IIS用户。另外权限的设置要细致。

五、服务器安全设置之--服务器安全和性能配置
  把下面文本保存为: windows2000-2003服务器安全和性能注册表自动配置文件.reg 运行即可。[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
  "NoRecentDocsMenu"=hex:01,00,00,00
  "NoRecentDocsHistory"=hex:01,00,00,00
  
  [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
  "DontDisplayLastUserName"="1"
  
  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
  "restrictanonymous"=dword:00000001
  
  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\Parameters]
  "AutoShareServer"=dword:00000000
  "AutoShareWks"=dword:00000000
  
  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
  "EnableICMPRedirect"=dword:00000000
  "KeepAliveTime"=dword:000927c0
  "SynAttackProtect"=dword:00000002
  "TcpMaxHalfOpen"=dword:000001f4
  "TcpMaxHalfOpenRetried"=dword:00000190
  "TcpMaxConnectResponseRetransmissions"=dword:00000001
  "TcpMaxDataRetransmissions"=dword:00000003
  "TCPMaxPortsExhausted"=dword:00000005
  "DisableIPSourceRouting"=dword:00000002
  "TcpTimedWaitDelay"=dword:0000001e
  "TcpNumConnections"=dword:00004e20
  "EnablePMTUDiscovery"=dword:00000000
  "NoNameReleaseOnDemand"=dword:00000001
  "EnableDeadGWDetect"=dword:00000000
  "PerformRouterDiscovery"=dword:00000000
  "EnableICMPRedirects"=dword:00000000
  
  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters]
  "BacklogIncrement"=dword:00000005
  "MaxConnBackLog"=dword:000007d0
  
  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters]
  "EnableDynamicBacklog"=dword:00000001
  "MinimumDynamicBacklog"=dword:00000014
  "MaximumDynamicBacklog"=dword:00007530
  "DynamicBacklogGrowthDelta"=dword:0000000a
  功能:可抵御DDOS攻击2-3万包,提高服务器TCP-IP整体安全性能(效果等于软件防火墙,节约了系统资源)

六、服务器安全设置之--IP安全策略 (仅仅列出需要屏蔽或阻止的端口或协议)
  
  协议 IP协议端口 源地址 目标地址 描述 方式
  ICMP -- -- -- ICMP 阻止
  UDP 135 任何IP地址 我的IP地址 135-UDP 阻止
  UDP 136 任何IP地址 我的IP地址 136-UDP 阻止
  UDP 137 任何IP地址 我的IP地址 137-UDP 阻止
  UDP 138 任何IP地址 我的IP地址 138-UDP 阻止
  UDP 139 任何IP地址 我的IP地址 139-UDP 阻止
  TCP 445 任何IP地址-从任意端口 我的IP地址-445 445-TCP 阻止
  UDP 445 任何IP地址-从任意端口 我的IP地址-445 445-UDP 阻止
  UDP 69 任何IP地址-从任意端口 我的IP地址-69 69-入 阻止
  UDP 69 我的IP地址-69 任何IP地址-任意端口 69-出 阻止
  TCP 4444 任何IP地址-从任意端口 我的IP地址-4444 4444-TCP 阻止
  TCP 1026 我的IP地址-1026 任何IP地址-任意端口 灰鸽子-1026 阻止
  TCP 1027 我的IP地址-1027 任何IP地址-任意端口 灰鸽子-1027 阻止
  TCP 1028 我的IP地址-1028 任何IP地址-任意端口 灰鸽子-1028 阻止
  UDP 1026 我的IP地址-1026 任何IP地址-任意端口 灰鸽子-1026 阻止
  UDP 1027 我的IP地址-1027 任何IP地址-任意端口 灰鸽子-1027 阻止
  UDP 1028 我的IP地址-1028 任何IP地址-任意端口 灰鸽子-1028 阻止
  TCP 21 我的IP地址-从任意端口 任何IP地址-到21端口 阻止tftp出站 阻止
  TCP 99 我的IP地址-99 任何IP地址-任意端口 阻止99shell 阻止
  
  以上是IP安全策略里的设置,可以根据实际情况,增加或删除端口

七、服务器安全设置之--本地安全策略设置
  
  安全策略自动更新命令:GPUpdate /force (应用组策略自动生效不需重新启动)
  
  开始菜单—>管理工具—>本地安全策略
  
  A、本地策略——>审核策略
  
  审核策略更改 成功 失败
  审核登录事件 成功 失败
  审核对象访问 失败
  审核过程跟踪 无审核
  审核目录服务访问 失败
  审核特权使用 失败
  审核系统事件 成功 失败
  审核账户登录事件 成功 失败
  审核账户管理 成功 失败
  B、本地策略——>用户权限分配
  
  关闭系统:只有Administrators组、其它全部删除。
  通过终端服务拒绝登陆:加入Guests、User组
  通过终端服务允许登陆:只加入Administrators组,其他全部删除
  
  C、本地策略——>安全选项
  
  交互式登陆:不显示上次的用户名 启用
  网络访问:不允许SAM帐户和共享的匿名枚举 启用
  网络访问:不允许为网络身份验证储存凭证 启用
  网络访问:可匿名访问的共享 全部删除
  网络访问:可匿名访问的命 全部删除
  网络访问:可远程访问的注册表路径 全部删除
  网络访问:可远程访问的注册表路径和子路径 全部删除
  帐户:重命名来宾帐户 重命名一个帐户
  帐户:重命名系统管理员帐户 重命名一个帐户
回复

使用道具 举报

回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-12-23 22:30 , Processed in 0.167437 second(s), 22 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team