IIS与SQL服务器安全加固详解

IIS Web服务器安全加固步骤:
  
  步骤 安装和配置 Windows Server 2003。
  
  注意:
  1.将\System32\cmd.exe转移到其他目录或更名;
  
  2.系统帐号尽量少,更改默认帐户名(如Administrator)和描述,密码尽量复杂;
  
  3.拒绝通过网络访问该计算机(匿名登录;内置管理员帐户;Support_388945a0;Guest;所有非操作系统服务帐户)
  
  4.建议对一般用户只给予读取权限,而只给管理员和System以完全控制权限,但这样做有可能使某些正常的脚本程序不能执行,或者某些需要写的操作不能完成,这时需要对这些文件所在的文件夹权限进行更改,建议在做更改前先在测试机器上作测试,然后慎重更改。
  
  5.NTFS文件权限设定(注意文件的权限优先级别比文件夹的权限高):
    
  6.禁止C$、D$一类的缺省共享
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters
  AutoShareServer、REG_DWORD、0x0
  
  7.禁止ADMIN$缺省共享
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters
  AutoShareWks、REG_DWORD、0x0
  
  8.限制IPC$缺省共享
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
  restrictanonymous REG_DWORD 0x0 缺省
  0x1 匿名用户无法列举本机用户列表
  0x2 匿名用户无法连接本机IPC$共享
  说明:不建议使用2,否则可能会造成你的一些服务无法启动,如SQL Server
  
  9.仅给用户真正需要的权限,权限的最小化原则是安全的重要保障
  
  10.在本地安全策略->审核策略中打开相应的审核,推荐的审核是:
  账户管理 成功 失败
  登录事件 成功 失败
  对象访问 失败
  策略更改 成功 失败
  特权使用 失败
  系统事件 成功 失败
  目录服务访问 失败
  账户登录事件 成功 失败
  审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义。 与之相关的是:
  在账户策略->密码策略中设定:
  密码复杂性要求 启用
  密码长度最小值 6位
  强制密码历史 5次
  最长存留期 30天
  在账户策略->账户锁定策略中设定:
  账户锁定 3次错误登录
  锁定时间 20分钟
  复位锁定计数 20分钟
  
  11.在Terminal Service Configration(远程服务配置)-权限-高级中配置安全审核,一般来说只要记录登录、注销事件就可以了。
  
  12.解除NetBios与TCP/IP协议的绑定
  控制面版——网络——绑定——NetBios接口——禁用 2000:控制面版——网络和拨号连接——本地网络——属性——TCP/IP——属性——高级——WINS——禁用TCP/IP上的NETBIOS
  
  13.在网络连接的协议里启用TCP/IP筛选,仅开放必要的端口(如80)
  
  14.通过更改注册表Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous = 1来禁止139空连接
  
  15.修改数据包的生存时间(TTL)值
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  DefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)
  
  16.防止SYN洪水攻击
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  SynAttackProtect REG_DWORD 0x2(默认值为0x0)
  
  17.禁止响应ICMP路由通告报文
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  \Interfaces\interface
  PerformRouterDiscovery REG_DWORD 0x0(默认值为0x2)
  
  18.防止ICMP重定向报文的攻击
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  EnableICMPRedirects REG_DWORD 0x0(默认值为0x1)
  
  19.不支持IGMP协议
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  IGMPLevel REG_DWORD 0x0(默认值为0x2)
  
  20.设置arp缓存老化时间设置
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services:\Tcpip\Parameters
  ArpCacheLife REG_DWORD 0-0xFFFFFFFF(秒数,默认值为120秒)
  ArpCacheMinReferencedLife REG_DWORD 0-0xFFFFFFFF(秒数,默认值为600)
  
  21.禁止死网关监测技术
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services:\Tcpip\Parameters
  EnableDeadGWDetect REG_DWORD 0x0(默认值为ox1)
  
  22.不支持路由功能
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services:\Tcpip\Parameters
  IPEnableRouter REG_DWORD 0x0(默认值为0x0)
 
  安装和配置 IIS 服务:
  1.仅安装必要的 IIS 组件。(禁用不需要的如FTP 和 SMTP 服务)
  
  2.仅启用必要的服务和 Web Service 扩展,推荐配置:
    
  万维网服务子组件
    
  3.将IIS目录&数据与系统磁盘分开,保存在专用磁盘空间内。
  
  4.在IIS管理器中删除必须之外的任何没有用到的映射(保留asp等必要映射即可)
  
  5.在IIS中将HTTP404 Object Not Found出错页面通过URL重定向到一个定制HTM文件
  
  6.Web站点权限设定(建议)
    
  7.建议使用W3C扩充日志文件格式,每天记录客户IP地址,用户名,服务器端口,方法,URI字根,HTTP状态,用户代理,而且每天均要审查日志。(最好不要使用缺省的目录,建议更换一个记日志的路径,同时设置日志的访问权限,只允许管理员和system为Full Control)。
  
  8.程序安全:
  1) 涉及用户名与口令的程序最好封装在服务器端,尽量少的在ASP文件里出现,涉及到与数据库连接地用户名与口令应给予最小的权限;
  2) 需要经过验证的ASP页面,可跟踪上一个页面的文件名,只有从上一页面转进来的会话才能读取这个页面。
  3) 防止ASP主页.inc文件泄露问题;
  4) 防止UE等编辑器生成some.asp.bak文件泄露问题。
  
  安全更新。应用所需的所有 Service Pack 和 定期手动更新补丁。
  安装和配置防病毒保护。推荐NAV 8.1以上版本病毒防火墙(配置为至少每周自动升级一次)。
  安装和配置防火墙保护。推荐最新版BlackICE Server Protection防火墙(配置简单,比较实用)
  监视解决方案。根据要求安装和配置 MOM代理或类似的监视解决方案。
  加强数据备份。Web数据定时做备份,保证在出现问题后可以恢复到最近的状态。
  考虑实施 IPSec 筛选器。用 IPSec 过滤器阻断端口
  Internet 协议安全性 (IPSec) 过滤器可为增强服务器所需要的安全级别提供有效的方法。本指南推荐在指南中定义的高安全性环境中使用该选项,以便进一步减少服务器的受攻击面。
  
  有关使用 IPSec 过滤器的详细信息,请参阅模块其他成员服务器强化过程。
  
  下表列出在本指南定义的高级安全性环境下可在 IIS 服务器上创建的所有 IPSec 过滤器。
    
  在实施上表所列举的规则时,应当对它们都进行镜像处理。这样可以确保任何进入服务器的网络通信也可以返回到源服务器。

 

  SQL服务器安全加固
    
  
  附:Win2003系统建议禁用服务列表


    


  

posted @ 2012-09-11 21:27  diewcs  阅读(273)  评论(0编辑  收藏  举报