• 1470 阅读
  • 3 回复

Windows Server 200x 安全集中帖 (含一键做安全脚本-见二楼) [置顶]

视频在线上传+队列转换FLV+水印+捉图+修复+获时+转3GP(API语言不限,开视频站必备!)
本主题由 张小鱼 于 2010/1/27 12:04:00 执行 设置置顶 [查看记录]
  Windows 200作为服务器操作系统,你知道他的安全性能如何保护吗?下面请看防木马权限设置IIS服务器安全配置。

一、 系统的安装

  1、按照Windows2003安装光盘的提示安装,默认情况下2003没有把IIS6.0安装在系统里面。
  2、IIS6.0的安装
  开始菜单—>控制面板—>添加或删除程序—>添加/删除Windows组件
  应用程序 ———ASP.NET(可选)
  |——启用网络 COM+ 访问(必选)
  |——Internet 信息服务(IIS)———Internet 信息服务管理器(必选) 
  |——公用文件(必选)
  |——万维网服务———Active Server pages(必选)
  |——Internet 数据连接器(可选)
  |——WebDAV 发布(可选)
  |——万维网服务(必选)
  |——在服务器端的包含文件(可选)

您是游客您没有权限查看该图片



  然后点击确定—>下一步安装。(具体见本文附件1)
  3、系统补丁的更新
  点击开始菜单—>所有程序—>Windows Update
  按照提示进行补丁的安装。
  4、备份系统
  用GHOST备份系统。
  5、安装常用的软件
  例如:杀毒软件、解压缩软件等;安装完毕后,配置杀毒软件,扫描系统漏洞,安装之后用GHOST再次备份系统。

您是游客您没有权限查看该图片


  6、先关闭不需要的端口 开启防火墙 导入IPSEC策略
  在” 网络连接”里,把不需要的协议和服务都删掉,这里只安装了基本的Internet协议(TCP/IP),由于要控制带宽流量服务,额外安装了Qos数据包计划程序。在高级tcp/ip设置里--"NetBIOS"设置"禁用tcp/IP上的NetBIOS(S)"。在高级选项里,使用"Internet连接防火墙",这是windows 2003 自带的防火墙,在2000系统里没有的功能,虽然没什么功能,但可以屏蔽端口,这样已经基本达到了一个IPSec的功能。

您是游客您没有权限查看该图片



  修改3389远程连接端口
  修改注册表.
  开始--运行--regedit
  依次展开 HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/
  TERMINAL SERVER/WDS/RDPWD/TDS/TCP
  右边键值中 PortNumber 改为你想用的端口号.注意使用十进制(例 10000 )

您是游客您没有权限查看该图片


  HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/TERMINAL SERVER/
  WINSTATIONS/RDP-TCP/
  右边键值中 PortNumber 改为你想用的端口号.注意使用十进制(例 10000 )
  注意:别忘了在WINDOWS2003自带的防火墙给+上10000端口
  修改完毕.重新启动服务器.设置生效.
  二、用户安全设置
  1、禁用Guest账号
  在计算机管理的用户里面把Guest账号禁用。为了保险起见,最好给Guest加一个复杂的密码。你可以打开记事本,在里面输入一串包含特殊字符、 数字、字母的长字符串,然后把它作为Guest用户的密码拷进去。
  2、限制不必要的用户
  去掉所有的Duplicate User用户、测试用户、共享用户等等。用户组策略设置相应权限,并且经常检查系统的用户,删除已经不再使用的用户。这些用户很多时候都是黑客们入侵系统的突破口。
  3、把系统Administrator账号改名
  大家都知道,Windows 2003 的Administrator用户是不能被停用的,这意味着别人可以一遍又一遍地尝试这个用户的密码。尽量把它伪装成普通用户,比如改成Guesycludx。
  4、创建一个陷阱用户
  什么是陷阱用户?即创建一个名为“Administrator”的本地用户,把它的权限设置成最低,什么事也干不了的那种,并且加上一个超过10位的超级复杂密码。这样可以让那些 Hacker们忙上一段时间,借此发现它们的入侵企图。 如下图Administrator 已经不是管理员,是陷阱用户。


您是游客您没有权限查看该图片


  5、把共享文件的权限从Everyone组改成授权用户
  任何时候都不要把共享文件的用户设置成“Everyone”组,包括打印共享,默认的属性就是“Everyone”组的,一定不要忘了改。
  6、开启用户策略
  使用用户策略,分别设置复位用户锁定计数器时间为20分钟,用户锁定时间为20分钟,用户锁定阈值为3次。 (该项为可选)

您是游客您没有权限查看该图片

7、不让系统显示上次登录的用户名
  默认情况下,登录对话框中会显示上次登录的用户名。这使得别人可以很容易地得到系统的一些用户名,进而做密码猜测。修改注册表可以不让对话框里显示上次登录的用户名。方法为:打开注册表编辑器并找到注册表“HKLM\Software\Microsoft\Windows T\CurrentVersion
\Winlogon\Dont-DisplayLastUserName”,把REG_SZ的键值改成1。

  密码安全设置
  1、使用安全密码
  一些公司的管理员创建账号的时候往往用公司名、计算机名做用户名,然后又把这些用户的密码设置得太简单,比如“welcome”等等。因此,要注意密码的复杂性,还要记住经常改密码。
  2、设置屏幕保护密码
  这是一个很简单也很有必要的操作。设置屏幕保护密码也是防止内部人员破坏服务器的一个屏障。
  3、开启密码策略
  注意应用密码策略,如启用密码复杂性要求,设置密码长度最小值为6位 ,设置强制密码历史为5次,时间为42天。
    4、考虑使用智能卡来代替密码     对于密码,总是使安全管理员进退两难,密码设置简单容易受到黑客的攻击,密码设置复杂又容易忘记。如果条件允许,用智能卡来代替复杂的密码是一个很好的解决方法。     三、系统权限的设置  1、磁盘权限(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定)
  系统盘及所有磁盘只给 Administrators 组和 SYSTEM 的完全控制权限
  系统盘\Documents and Settings 目录只给 Administrators 组和 SYSTEM 的完全控制权限
  系统盘\Documents and Settings\All Users 目录只给 Administrators 组和 SYSTEM 的完全控制权限
  系统盘\Windows\System32\cacls.exe、cmd.exe、net.exe、net1.exe、ftp.exe、
tftp.exe、telnet.exe 、netstat.exe、regedit.exe、at.exe、attrib.exe、format.com、
del文件只给 Administrators 组和SYSTEM 的完全 控制权限

  另将
\System32\cmd.exe、format.com、ftp.exe转移到其他目录或更名   Documents and Settings下所有些目录都设置只给adinistrators权限。并且要一个一个目录查看,包括下面的所有子目录。
  删除c:\inetpub目录
  2、本地安全策略设置
  开始菜单—>管理工具—>本地安全策略
  A、本地策略——>审核策略
  审核策略更改 成功 失败
  审核登录事件 成功 失败
  审核对象访问失败
  审核过程跟踪 无审核
  审核目录服务访问失败
  审核特权使用失败
  审核系统事件 成功 失败
  审核账户登录事件 成功 失败
  审核账户管理 成功 失败

您是游客您没有权限查看该图片


  B、本地策略——>用户权限分配
  关闭系统:只有Administrators组、其它全部删除。
  通过终端服务允许登陆:只加入Administrators,Remote Desktop Users组,其他全部删除

您是游客您没有权限查看该图片


  C、本地策略——>安全选项
  交互式登陆:不显示上次的用户名 启用
  网络访问:不允许SAM帐户和共享的匿名枚举  启用
  网络访问:不允许为网络身份验证储存凭证 启用
网络访问:可匿名访问的共享 全部删除
  网络访问:可匿名访问的命全部删除
  网络访问:可远程访问的注册表路径全部删除
  网络访问:可远程访问的注册表路径和子路径全部删除
  帐户:重命名来宾帐户重命名一个帐户
  帐户:重命名系统管理员帐户 重命名一个帐户

您是游客您没有权限查看该图片

3、禁用不必要的服务 开始-运行-services.msc(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  TCP/IPNetBIOS Helper提供 TCP/IP 服务上的 NetBIOS 和网络上客户端的 NetBIOS 名称解析的支持而使用户能够共享
  文件、打印和登录到网络
  Server支持此计算机通过网络的文件、打印、和命名管道共享
  Computer Browser 维护网络上计算机的最新列表以及提供这个列表
  Task scheduler 允许程序在指定时间运行
  Messenger 传输客户端和服务器之间的 NET SEND 和 警报器服务消息
  Distributed File System: 局域网管理共享文件,不需要可禁用
  Distributed linktracking client:用于局域网更新连接信息,不需要可禁用
  Error reporting service:禁止发送错误报告
  Microsoft Serch:提供快速的单词搜索,不需要可禁用
  NTLMSecuritysupportprovide:telnet服务和Microsoft Serch用的,不需要可禁用
  PrintSpooler:如果没有打印机可禁用
  Remote Registry:禁止远程修改注册表
  Remote Desktop Help Session Manager:禁止远程协助
  Workstation 关闭的话远程NET命令列不出用户组
    以上是在Windows Server 2003 系统上面默认启动的服务中禁用的,默认禁用的服务如没特别需要的话不要启动。     4、修改注册表 (如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)  修改注册表,让系统更强壮
  4.1、隐藏重要文件/目录可以修改注册表实现完全隐藏(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击 “CheckedValue”,选择修改,把数值由1改为0
  4.2、防止SYN洪水攻击 (如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  新建DWORD值,名为SynAttackProtect,值为2
  新建EnablePMTUDiscovery REG_DWORD 0
  新建NoNameReleaseOnDemand REG_DWORD 1
  新建EnableDeadGWDetect REG_DWORD 0
  新建KeepAliveTime REG_DWORD 300,000
  新建PerformRouterDiscovery REG_DWORD 0
  新建EnableICMPRedirects REG_DWORD 0
  4.3. 禁止响应ICMP路由通告报文(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
\Interfaces\interface

  新建DWORD值,名为PerformRouterDiscovery 值为0
  4.4. 防止ICMP重定向报文的攻击
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  将EnableICMPRedirects 值设为0
  4.5. 不支持IGMP协议 (如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  新建DWORD值,名为IGMPLevel 值为0

  4.6、禁止IPC空连接(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  cracker可以利用net use命令建立空连接,进而入侵,还有net view,nbtstat这些都是基于空连接的,禁止空连接就好了。
  Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 把这个值改成”1”即可。
  4.7、更改TTL值
  cracker可以根据ping回的TTL值来大致判断你的操作系统,如:
  TTL=107(WINNT);
  TTL=108(win2000);
  TTL=127或128(win9x);
  TTL=240或241(linux);
  TTL=252(solaris);
  TTL=240(Irix);
  实际上你可以自己改的:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Tcpip\ Parameters:DefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不一定哦

  4.8. 删除默认共享 (如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
\LanmanServer\Parameters:AutoShareServer类型是REG_DWORD把值改为0即可

  4.9. 禁止建立空连接(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。我们可以通过修改注册表来禁止建立空连接:
  Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 的值改成”1”即可。
  4.10. 建立一个记事本,填上以下代码。保存为*.bat并加到启动项目中
  net share c$ /del
  net share d$ /del
  net share e$ /del
  net share f$ /del
  net share ipc$ /del
    net share admin$ /del     5、IIS站点设置:  5.1、将IIS目录&数据与系统磁盘分开,保存在专用磁盘空间内。
  5.2、启用父级路径
  5.3、在IIS管理器中删除必须之外的任何没有用到的映射(保留asp, aspx html htm 等必要映射即可)
  5.4、在IIS中将HTTP404 Object Not Found出错页面通过URL重定向到一个定制HTM文件
  5.5、Web站点权限设定(建议)
  读 允许
  写 不允许
  脚本源访问 不允许
  目录浏览 建议关闭
  日志访问 建议关闭
  索引资源 建议关闭
  执行 推荐选择 “纯脚本”

您是游客您没有权限查看该图片
本帖最后由 张小鱼 于 2010-01-27 12:15 编辑
小鱼的淘宝店铺-多多支持哇
视频在线上传+队列转换FLV+水印+捉图+修复+获时+转3GP(API语言不限,开视频站必备!)
[size=2]  5.6、建议使用W3C扩充日志文件格式,每天记录客户IP地址,用户名,服务器端口,方法,URI字根,HTTP状态,用户代理,而且每天均要审查日志。(最好不要使用缺省的目录,建议更换一个记日志的路径,同时设置日志的访问权限,只允许管理员和system为Full Control)。

您是游客您没有权限查看该图片


  5.7、程序安全:
  1) 涉及用户名与口令的程序最好封装在服务器端,尽量少的在ASP文件里出现,涉及到与数据库连接地用户名与口令应给予最小的权限;
  2) 需要经过验证的ASP页面,可跟踪上一个页面的文件名,只有从上一页面转进来的会话才能读取这个页面。
  3) 防止ASP主页.inc文件泄露问题;
  4) 防止UE等编辑器生成some.asp.bak文件泄露问题。
  6、IIS权限设置的思路
  ·要为每个独立的要保护的个体(比如一个网站或者一个虚拟目录)创建一个系统用户,让这个站点在系统中具有惟一的可以设置权限的身份。

  ·在IIS的【站点属性或者虚拟目录属性→目录安全性→匿名访问和验证控制→编辑→匿名访问→编辑】填写刚刚创建的那个用户名。
[size=2]  ·设置所有的分区禁止这个用户访问,而刚才这个站点的主目录对应的那个文件夹设置允许这个用户访问(要去掉继承父权限,并且要加上超管组和SYSTEM组)。

您是游客您没有权限查看该图片


  7、卸载最不安全的组件 (注意: 按实际要求删除,删除后用不了FSO的)  (如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)
  最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.BAT文件,( 以下均以 WIN2000 为例,如果使用2003,则系统文件夹应该是 C:\WINDOWS\ )
  regsvr32/u C:\WINDOWS\System32\wshom.ocx
  del C:\WINDOWS\System32\wshom.ocx
  regsvr32/u C:\WINDOWS\system32\shell32.dll
  del C:\WINNT\WINDOWS\shell32.dll
  然后运行一下,WScript.Shell, Shell.application, WScript.Network就会被卸载了。可能会提示无法删除文件,不用管它,重启一下服务器,你会发现这三个都提示“×安全”了。
  为了方便大家,和减示错误,大部份步骤可以用如下脚本代替,我已经改成脚本cmd,新建一个txt文把,把如下代码,复制到里面后,把扩展名改为.cmd 双击运行,运行后,请按提示backup。

一建做安全 脚本 代码如下

代码 复制 - 运行


@echo off  
ECHO.  
ECHO.  
ECHO. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
ECHo.  
ECHo 你现在使用世界网络教研室整理的"一建做安全"脚本  
ECHo.  
ECHO. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
ECHO.  
ECHO.  
ECHO. -------------------------------------------------------------------------  
ECHo 请按提示操作备份好注册表,否则修改后无法还原,本人不负责.  
ECHO.  
ECHO YES=next set NO=exit (this time 30 Second default for n)  
ECHO. -------------------------------------------------------------------------  
CHOICE /T 30 /C yn /D n  
if errorlevel 2 goto end  
if errorlevel 1 goto next  
:next  
if EXIST backup (echo.)else md backup  
if EXIST temp (rmdir /s/q temp|md temp) else md temp  
if EXIST backup\backupkey.reg (move backup\backupkey.reg backup\backupkey_old.reg ) else goto run  
:run  
regedit /e temp\backup-reg1.key1 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\"  
regedit /e temp\backup-reg2.key2 "HKEY_CLASSES_ROOT\"  
copy /b /y /v temp\backup-reg1.key1+temp\backup-reg2.key2 backup\backupkey.reg  
if exist backup\wshom.ocx (echo 备份已存在) else copy /v/y %SystemRoot%\System32\wshom.ocx backup\wshom.ocx  
if exist backup\shell32.dll (echo 备份已存在) else copy /v/y %SystemRoot%\system32\shell32.dll backup\shell32.dll  
ECHO 备份已经完成  
ECHO.  
goto next2  
:next2  
ECHO.  
ECHO. -------------------------------------------------------------------  
ECHo 修改权限system32目录中不安全的几个exe文件,改为只有Administrators才有权限运行  
ECHO YES=next set NO=this set ignore (this time 30 Second default for y)  
ECHO. -------------------------------------------------------------------  
CHOICE /T 30 /C yn /D y  
if errorlevel 2 goto next3  
if errorlevel 1 goto next21  
:next21  
xcacls.exe %SystemRoot%\system32\net.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\net1.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\cmd.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\tftp.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\netstat.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\regedit.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\at.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\attrib.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\cacls.exe /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\fortmat.com /t /g Administrators:F /y /C  
xcacls.exe %SystemRoot%\system32\secedit.exe /t /g Administrators:F /y /C  
echo "虚拟主机C盘权限设定"  
echo "删除C盘的everyone的权限"  
cd/  
cacls "%SystemDrive%" /r "everyone" /e  
cacls "%SystemRoot%" /r "everyone" /e  
cacls "%SystemRoot%/Registration" /r "everyone" /e  
cacls "%SystemDrive%/Documents and Settings" /r "everyone" /e  

echo "删除C盘的所有的users的访问权限"  
cacls "%SystemDrive%" /r "users" /e  
cacls "%SystemDrive%/Program Files" /r "users" /e  
cacls "%SystemDrive%/Documents and Settings" /r "users" /e  
cacls "%SystemRoot%" /r "users" /e  
cacls "%SystemRoot%/addins" /r "users" /e  
cacls "%SystemRoot%/AppPatch" /r "users" /e  
cacls "%SystemRoot%/Connection Wizard" /r "users" /e  
cacls "%SystemRoot%/Debug" /r "users" /e  
cacls "%SystemRoot%/Driver Cache" /r "users" /e  
cacls "%SystemRoot%/Help" /r "users" /e  
cacls "%SystemRoot%/IIS Temporary Compressed Files" /r "users" /e  
cacls "%SystemRoot%/java" /r "users" /e  
cacls "%SystemRoot%/msagent" /r "users" /e  
cacls "%SystemRoot%/mui" /r "users" /e  
cacls "%SystemRoot%/repair" /r "users" /e  
cacls "%SystemRoot%/Resources" /r "users" /e  
cacls "%SystemRoot%/security" /r "users" /e  
cacls "%SystemRoot%/system" /r "users" /e  
cacls "%SystemRoot%/TAPI" /r "users" /e  
cacls "%SystemRoot%/Temp" /r "users" /e  
cacls "%SystemRoot%/twain_32" /r "users" /e  
cacls "%SystemRoot%/Web" /r "users" /e  
cacls "%SystemRoot%/system32/3com_dmi" /r "users" /e  
cacls "%SystemRoot%/system32/administration" /r "users" /e  
cacls "%SystemRoot%/system32/Cache" /r "users" /e  
cacls "%SystemRoot%/system32/CatRoot2" /r "users" /e  
cacls "%SystemRoot%/system32/Com" /r "users" /e  
cacls "%SystemRoot%/system32/config" /r "users" /e  
cacls "%SystemRoot%/system32/dhcp" /r "users" /e  
cacls "%SystemRoot%/system32/drivers" /r "users" /e  
cacls "%SystemRoot%/system32/export" /r "users" /e  
cacls "%SystemRoot%/system32/icsxml" /r "users" /e  
cacls "%SystemRoot%/system32/lls" /r "users" /e  
cacls "%SystemRoot%/system32/LogFiles" /r "users" /e  
cacls "%SystemRoot%/system32/MicrosoftPassport" /r "users" /e  
cacls "%SystemRoot%/system32/mui" /r "users" /e  
cacls "%SystemRoot%/system32/oobe" /r "users" /e  
cacls "%SystemRoot%/system32/ShellExt" /r "users" /e  
cacls "%SystemRoot%/system32/wbem" /r "users" /e  
echo "添加iis_wpg的访问权限"  
cacls "%SystemRoot%" /g iis_wpg:r /e  
cacls "%SystemDrive%/Program Files/Common Files" /g iis_wpg:r /e  
cacls "%SystemRoot%/Downloaded Program Files" /g iis_wpg:c /e  
cacls "%SystemRoot%/Help" /g iis_wpg:c /e  
cacls "%SystemRoot%/IIS Temporary Compressed Files" /g iis_wpg:c /e  
cacls "%SystemRoot%/Offline Web Pages" /g iis_wpg:c /e  
cacls "%SystemRoot%/System32" /g iis_wpg:c /e  
cacls "%SystemRoot%/WinSxS" /g iis_wpg:c /e  
cacls "%SystemRoot%/WinSxS" /r "users" /e  
cacls "%SystemRoot%/Tasks" /g iis_wpg:c /e  
cacls "%SystemRoot%/Temp" /g iis_wpg:c /e  
cacls "%SystemRoot%/Web" /g iis_wpg:c /e  
echo "添加iis_wpg的访问权限[.net专用]"  
cacls "%SystemRoot%/Assembly" /g iis_wpg:c /e  
cacls "%SystemRoot%/Microsoft.NET" /g iis_wpg:c /e  
echo "添加iis_wpg的访问权限[装了MACFEE的软件专用]"  
cacls "%SystemDrive%/Program Files/Network Associates" /g iis_wpg:r /e  
echo "添加users的访问权限"  
cacls "%SystemRoot%/temp" /g users:c /e  
goto next3  
:next3  
ECHO.  
ECHO.  
ECHO. ------------------------------------------------------------------------  
ECHo 禁止不必要的服务,如果要退出请按Ctrl+C  
ECHO YES=next set NO=this set ignore (this time 30 Second default for y)  
ECHO. ------------------------------------------------------------------------  
CHOICE /T 30 /C yn /D y  
if errorlevel 2 goto next4  
if errorlevel 1 goto next31  
:next31  
echo Windows Registry Editor Version 5.00 >temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanworkstation] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Alerter] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dfs] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Scheduler] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LmHosts] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TlntSvr] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteAccess] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NtmsSvc] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteRegistry] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TrkWks] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ERSvc] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Messenger] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetLogon] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetLogon] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetDDE] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetDDEdsdm] >>temp\Services.reg  
echo "Start"=dword:00000004 >>temp\Services.reg  
regedit /s temp\Services.reg  
ECHO.  
goto next4  
:next4  
ECHO.  
ECHO. -------------------------------------------------------------------------  
ECHo 防止人侵和攻击. 如果要退出请按Ctrl+C  
ECHO YES=next set NO=this set ignore (this time 30 Second default for y)  
ECHO. -------------------------------------------------------------------------  
CHOICE /T 30 /C yn /D y  
if errorlevel 2 goto next5  
if errorlevel 1 goto next41  
:next41  
echo Windows Registry Editor Version 5.00 >temp\skyddos.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] >>temp\skyddos.reg  
echo "EnableDeadGWDetect"=dword:00000000 >>temp\skyddos.reg  
echo "EnableICMPRedirects"=dword:00000000 >>temp\skyddos.reg  
echo "PerformRouterDiscovery"=dword:00000000 >>temp\skyddos.reg  
echo "NoNameReleaseOnDemand"=dword:00000001 >>temp\skyddos.reg  
echo "KeepAliveTime"=dword:000493e0 >>temp\skyddos.reg  
echo "EnablePMTUDiscovery"=dword:00000000 >>temp\skyddos.reg  
echo "SynAttackProtect"=dword:00000002 >>temp\skyddos.reg  
echo "TcpMaxHalfOpen"=dword:00000064 >>temp\skyddos.reg  
echo "TcpMaxHalfOpenRetried"=dword:00000050 >>temp\skyddos.reg  
echo "TcpMaxConnectResponseRetransmissions"=dword:00000001 >>temp\skyddos.reg  
echo "TcpMaxDataRetransmissions"=dword:00000003 >>temp\skyddos.reg  
echo "TCPMaxPortsExhausted"=dword:00000005 >>temp\skyddos.reg  
echo "DisableIPSourceRouting"=dword:0000002 >>temp\skyddos.reg  
echo "TcpTimedWaitDelay"=dword:0000001e >>temp\skyddos.reg  
echo "EnableSecurityFilters"=dword:00000001 >>temp\skyddos.reg  
echo "TcpNumConnections"=dword:000007d0 >>temp\skyddos.reg  
echo "TcpMaxSendFree"=dword:000007d0 >>temp\skyddos.reg  
echo "IGMPLevel"=dword:00000000 >>temp\skyddos.reg  
echo "DefaultTTL"=dword:00000016 >>temp\skyddos.reg  
echo 删除IPC$(Internet Process Connection)是共享“命名管道”的资源  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] >>temp\skyddos.reg  
echo "restrictanonymous"=dword:00000001 >>temp\skyddos.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interfaces] >>temp\skyddos.reg  
echo "PerformRouterDiscovery"=dword:00000000 >>temp\skyddos.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters] >>temp\skyddos.reg  
echo "BacklogIncrement"=dword:00000003 >>temp\skyddos.reg  
echo "MaxConnBackLog"=dword:000003e8 >>temp\skyddos.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Afd\Parameters] >>temp\skyddos.reg  
echo "EnableDynamicBacklog"=dword:00000001 >>temp\skyddos.reg  
echo "MinimumDynamicBacklog"=dword:00000014 >>temp\skyddos.reg  
echo "MaximumDynamicBacklog"=dword:00002e20 >>temp\skyddos.reg  
echo "DynamicBacklogGrowthDelta"=dword:0000000a >>temp\skyddos.reg  
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters] >>temp\skyddos.reg  
echo "autoshareserver"=dword:00000000 >>temp\skyddos.reg  
regedit /s temp\skyddos.reg  
ECHO.  
ECHO.  
goto next5  
:next5  
ECHO.  
ECHO. ------------------------------------------------------------------------  
ECHo 防止ASP木马运行 卸除WScript.Shell, Shell.application, WScript.Network  
ECHO YES=next set NO=this set ignore (this time 30 Second default for y)  
ECHO. -----------------------------------------------------------------------  
CHOICE /T 30 /C yn /D y  
if errorlevel 2 goto next6  
if errorlevel 1 goto next51  
:next51  
echo Windows Registry Editor Version 5.00 >temp\del.reg  
echo [-HKEY_CLASSES_ROOT\Shell.Application] >>temp\del.reg  
echo [-HKEY_CLASSES_ROOT\Shell.Application.1] >>temp\del.reg  
echo [-HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540000}] >>temp\del.reg  
echo [-HKEY_CLASSES_ROOT\ADODB.Command\CLSID] >>temp\del.reg  
echo [-HKEY_CLASSES_ROOT\CLSID\{00000566-0000-0010-8000-00AA006D2EA4}] >>temp\del.reg  
regedit /s temp\del.reg  
regsvr32 /u %SystemRoot%\system32\wshom.ocx  
del /f/q %SystemRoot%\System32\wshom.ocx  
regsvr32 /u %SystemRoot%\system32\shell32.dll  
del /f/q %SystemRoot%\System32\shell32.dll  
rmdir /q/s temp  
ECHO.  
goto next6  
:next6  
ECHO.  
ECHO.  
ECHO. ---------------------------------------------------------------------  
ECHo 设置已经完成重启后才能生效.  
ECHO YES=reboot server NO=exit (this time 60 Second default for y)  
ECHO. ----------------------------------------------------------------------  
CHOICE /T 30 /C yn /D y  
if errorlevel 2 goto end  
if errorlevel 1 goto reboot  
:reboot  
shutdown /r /t 0  
:end  
if EXIST temp (rmdir /s/q temp|exit) else exit 

本帖最后由 张小鱼 于 2010-01-27 12:08 编辑
小鱼的淘宝店铺-多多支持哇

Windows WEB服务器配置安全规范(试行版)

视频在线上传+队列转换FLV+水印+捉图+修复+获时+转3GP(API语言不限,开视频站必备!)
一、安装 Win 200x 安全概览1.硬盘分区的文件系统选择①使用多分区分别管理不同内容
在安装Win 2000时,如条件许可,应至少建立两个逻辑分区,一个用作系统分区,另一个用作应用程序分区。尽量修改“我的文档”及“Outlook Express”等应用程序的默认文件夹位置,使其位置不在系统分区。对提供服务的机器,可按如下设置分区:
分区1:系统分区,安装系统和重要日志文件。
分区2:提供给IIS使用。
分区3:提供给FTP使用。
分区4:放置其他一些资料文件。(以上为示例,可灵活把握)

②采用NTFS文件系统
所有磁盘分区必须采用 NTFS 文件系统,而不要使用 FAT32!
特别注意:一定要在系统安装时,通过安装程序将系统盘格式化为NTFS,而不要先以 FAT32 格式安装系统,然后再用 Convert 转换!因为转换后的磁盘根目录的默认权限过高!
③使用文件加密系统EFS
Windows2000 强大的加密系统能够给磁盘,文件夹,文件加上一层安全保护。这样可以防止别人把你的硬盘挂到别的机器上以读出里面的数据。记住要给文件夹也使用EFS,而不仅仅是单个的文件。 有关EFS的具体信息可以查看
http://www.microsoft.com/windows2000/techinfo/howitworks/security/encrypt.asp
注意:建议加密temp文件夹!因为一些应用程序在安装和升级的时候,会把一些东西拷贝到temp文件夹,但是当程序升级完毕或关闭的时候,它们并不会自己清除temp文件夹的内容。所以,给temp文件夹加密可以给你的文件多一层保护。
2.组件的定制不要按Win 2000的默认安装组件,根据安全原则“最少的服务+最小的权限=最大的安全”,只选择确实需要的服务安装即可。
典型Web服务器需要的最小组件是:
公用文件、Internet 服务管理器、WWW服务器。
3.接入网络时间在安装完成Win 2000**作系统时,不要立即把服务器接入网络,因为这时的服务器还没有打上各种补丁,存在各种漏洞,非常容易感染病毒和被入侵。
补丁的安装应该在所有应用程序安装完之后,因为补丁程序往往要替换或修改某些系统文件,如果先安装补丁再安装应用程序有可能导致补丁不能起到应有的效果。IIS的HotFix要求每次更改IIS的配置时都需要重新安装。
4.账户安全管理1)账户要尽可能少,并且要经常用一些扫描工具检查系统账户、账户权限及密码。删除已经不再使用的账户。
2)停用Guest账号,并给Guest 加一个复杂的密码。
3)把系统Administrator账号改名,尽量把它伪装成普通用户,名称不要带有Admin字样。
4)不让系统显示上次登录的用户名,具体**作如下:
修改注册表“HKLM\Software\Microsoft\ WindowsNT\ Current Version\Winlogon\Dont Display Last User Name”的键值,把REG_SZ 的键值改成1。
5.安全审核在“管理工具→远程控制服务配置→连接”处,右键点击“RPD-TCP”连接,选择“属性”,在其窗口选中“权限”,点击右下角的“高级”,选择“审核”,增加一个“everyone”组,审核它的“连接”、“断开”、“注销”和“登录”的成功和失败。在“管理工具→日记查看→安全日记”可看到该审核记录。

开启安全审核是win2000最基本的入侵检测方法。当有人尝试对你的系统进行某些方式(如尝试用户密码,改变帐户策略,未经许可的文件访问等等)入侵的时候,都会被安全审核记录下来。很多的管理员在系统被入侵了几个月都不知道,直到系统遭到破坏。下面的这些审核是必须开启的,其他的可以根据需要增加:
策略 设置
审核系统登陆事件 成功,失败
审核帐户管理 成功,失败
审核登陆事件 成功,失败
审核对象访问 成功
审核策略更改 成功,失败
审核特权使用 成功,失败
审核系统事件 成功,失败
 
6.卸载无用的组件模块将\Winnt\inf 下的sysoc.inf 文件中的所有hide用替换法删除;然后在控制面板的添加删除程序中就可以卸载所有不需要的组件。
二、基本系统设置1.安装各种补丁安装Service Pack 和最新的hotfix;安装SQL和IIS系列补丁。
如果从本地备份中安装,则随后必须立即通过在线更新功能查验是否有遗漏的补丁没有安装。
建议启用系统自动更新功能,并设置为有更新时自动下载安装。
注意:建议记得安装最新的MDAC(http://www.microsoft.com/data/download.htm)
  MDAC为数据访问部件,通常程序对数据库的访问都通过它,但它也是黑客攻击的目标,且MDAC一般不以补丁形式发放的,比较容易漏更新。为防止以前版本的漏洞可能会被带入升级后的版本,建议卸载后安装最新的版本。注意:在安装最新版本前最好先做一下测试,因为有的数据访问方式或许在新版本中不再被支持,这种情况下可以通过修改注册表来档漏洞,详见漏洞测试文档。
2.分区内容规划1)操作系统、Web主目录、日志分别安装在不同的分区。
2)关闭任何分区的自动运行特性:
可以使用 TweakUI 等工具进行修改。以防万一有人放入Autorun程序实现恶意代码自动加载。
3.协议管理卸载不需要的协议,比如IPX/SPX, NetBIOS;
在连接属性对话框的TCP)/IP属性的高级选项卡中,选择“WINS”,选定“禁用TCP/IP上的NETBIOS”。
4.关闭所有以下不需要的服务以下仅供参考,具体还要看服务器上运行的应用来确定!要特别注意各服务之间的储存关系,个性为当可能导致某些功能的异常,甚至服务器不能工作!建议每次只个性两三个项目,重启测试无误后再设置其他项目!
* Alerter (disable)
* ClipBook Server (disable)
* Computer Browser (disable)
* DHCP Client (disable)
* Directory Replicator (disable)
* FTP publishing service (disable)
* License Logging Service (disable)
* Messenger (disable)
* Netlogon (disable)
* Network DDE (disable)
* Network DDE DSDM (disable)
* Network Monitor (disable)
**** Plug and Play (disable after all hardware configuration)****
* Remote Access Server (disable)
* Remote Procedure Call (RPC) locater (disable)
* Schedule (disable)
* Server (disable)
* Simple Services (disable)
* Spooler (disable)
* TCP/IP Netbios Helper (disable)
* ***Telephone Service (disable)****
在必要时禁止如下服务:
* SNMP service (optional)
* SNMP trap (optional)
* UPS (optional
设置如下服务为自动启动:
* Eventlog ( required )
* NT LM Security Provider (required)
* RPC service (required)
* WWW (required)
* Workstation (leave service on: will be disabled later in the document.
* MSDTC (required)
* Protected Storage (required)
5.删除 OS/2 和 POSIX 子系统:删除如下目录的任何键:
HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\OS/2 Subsystem for NT
删除如下的键:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Os2LibPath
删除如下的键:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\Optional
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\Posix
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\Os2
删除如下目录:c:\winnt\system32\os2 但会出现文件保护的提示,建议不删除,修改注册表就可以了
6.帐号和密码策略   1)保证禁止guest帐号
  2)将administrator改名为比较难猜的帐号
  3)密码唯一性:记录上次的 6 个密码
  4) 最短密码期限:2
  5) 密码最长期限:42
  6) 最短密码长度:8
  7) 密码复杂化(passfilt.dll):启用
  8) 用户必须登录方能更改密码:启用
  9) 帐号失败登录锁定的门限:6
  10)锁定后重新启用的时间间隔:720分钟
  11)本地安全策略:
设置“本地安全策略→本地策略→选项”中的RestrictAnonymous(匿名连接的额外限制)为“不容许枚举SAM账号和共享”。
在安全选项中,不显示上次登录用户名、重命名管理员账号名称(某些情况下可能导致个别程序运行异常!);在用户权力指派中,限制更改系统时间、关闭系统的权力仅管理员。
7.设置文件和目录权限将C:\winnt, C:\winnt\config, C:\winnt\system32, C:\winnt\system等目录的访问权限做限制,限制everyone的写权限,限制users组的读写权限;
将各分区的根目录的everyone从权限列表中删除!然后分别添加Administrators、PowerUsers、Users、IUSR_***以不同的权限。不要给Guests任何权限。
运行Sfc /enable 启动文件保护机制。
 
8.注册表一些条目的修改   1) 去除logon对话框中的shutdown按钮
将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\
中 ShutdownWithoutLogon REG_SZ 值设为0
  2)去除logon信息的cashing功能
将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current Version\Winlogon\中
CachedLogonsCount REG_SZ 值设为0
  3)隐藏上次登陆的用户名
将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current Version\Winlogon\中
DontDisplayLastUserName REG_SZ 值设为1
  4)限制LSA匿名访问
将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA中
RestricAnonymous REG_DWORD 值设为1
  5)去除所有网络共享
将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters\中
AutoShareServer REG_DWORD 值设为0
再创建一个AutoShareWks双字节值,设置为0(注意大小写)。
  6)禁止建立空连接
默认情况下,任何用户可通过空连接连上服务器,枚举账号并猜测密码。可以通过以下两种方法禁止
建立空连接。
Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 的值改成1
  7)修改终端服务的默认端口
终端服务的默认端口为3389,可考虑修改为别的端口。修改方法为:
打开注册表,在“HKLM\SYSTEM\Current ControlSet\Control\Terminal Server\Win Stations”处
找到类似RDP-TCP的子键,修改PortNumber值。
9.启用TCP/IP过滤只允许TCP端口80和443(如果使用SSL)以及其他可能要用的端口;
不允许UDP端口;
只允许IP Protocol 6 (TCP)。
web服务器就可以,其他如域服务器不行,该规范主要针对WEB服务器。
10.移动部分重要文件并加访问控制创建一个只有系统管理员能够访问的目录,将system32目录下的一些重要文件移动到此目录(注意同时处理System32\Dllcache目录中的同名文件!)。但有时会因系统文件保护功能被启用而无法实现顺利删除。
变通办法是选中这些文件,然后禁止任何人访问。
为稳妥起见,应当事先将这些文件存放到其他比较安全的位置供管理员自己使用。
xcopy.exe, wscript.exe, cscript.exe, net.exe, ftp.exe, telnet.exe,arp.exe,
edlin.exe,ping.exe,route.exe,at.exe,finger.exe,posix.exe,rsh.exe,atsvc.exe,
qbasic.exe,runonce.exe,syskey.exe,cacls.exe, ipconfig.exe, rcp.exe,
secfixup.exe, nbtstat.exe, rdisk.exe, debug.exe, regedt32.exe, regedit.exe,
edit.com, netstat.exe, tracert.exe, nslookup.exe, rexec.exe, cmd.exe
11.下载Hisecweb.inf安全模板来配置系统Http://download.microsoft.com/downl...US/hisecweb.exe
该模板配置基本的 Windows 2000 系统安全策略。
将该模板复制到 %windir%\security\templates 目录。
打开“安全模板”工具,查看这些设置。
打开“安全配置和分析”工具,然后装载该模板。
右键单击“安全配置和分析”工具,然后从上下文菜单中选择“立即分析计算机”。
等候操作完成。
查看结果,如有必要就更新该模板。
右键单击“安全配置和分析”工具,然后从上下文菜单中选择“立即配置计算机”。
12. 服务器上其他工具程序的替代浏览器建议使用FireFox,以免最新的针对IE的漏洞造成的危害。平时尽量不在服务器上上网。
13.设置陷阱脚本既要防范被人启用Telnet服务,又要考虑万一被入侵后的对策。
除Telnet服务外,对System32目录下的Telsrv.exe等文件设置访问权限;关闭相关服务;然后再编辑System32\login.cmd文件,在其中添加脚本,目的是导致对方登录后出现异常,无法正常连接和工作。脚本的内容可以自由发挥,以阻断对方操作为准。
14.取消部分危险文件扩展名如reg VBS   VBE   JS等。
关闭445端口445端口惹出了不少问题 关闭方法 修改注册表,添加一个键值
Hive: HKEY_LOCAL_MACHINE
Key: System\CurrentControlSet\Services\NetBT\Parameters
Name: SMBDeviceEnabled
Type: REG_DWORD
value: 0
修改完后重启机器,运行“netstat -an”,445端口已经不再Listening了。
关闭 DirectDraw这是C2级安全标准对视频卡和内存的要求。关闭DirectDraw可能对一些需要用到DirectX的程序有影响(比如游戏,在服务器上玩星际争霸?我晕..$%$^%^&??),但是对于绝大多数的商业站点都应该是没有影响的。 修改注册表 HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI 的Timeout(REG_DWORD)为 0 即可。
禁止dump file的产生和自动清除掉页面文件dump文件在系统崩溃和蓝屏的时候是一份很有用的查找问题的资料(不然我就照字面意思翻译成垃圾文件了)。然而,它也能够给黑客提供一些敏感信息比如一些应用程序的密码等。要禁止它,打开 控制面板>系统属性>高级>启动和故障恢复 把 写入调试信息 改成无。要用的时候,可以再重新打开它。
关机时清除掉页面文件:
页面文件也就是调度文件,是win2000用来存储没有装入内存的程序和数据文件部分的隐藏文件。一些第三方的程序可以把一些没有的加密的密码存在内存中,页面文件中也可能含有另外一些敏感的资料。 要在关机的时候清楚页面文件,可以编辑注册表
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management
把ClearPageFileAtShutdown的值设置成1。
禁止从软盘和CD Rom启动系统一些第三方的工具能通过引导系统来绕过原有的安全机制。如果你的服务器对安全要求非常高,可以考虑使用可移动软盘和光驱。把机箱锁起来仍不失为一个好方法。
锁住注册表的访问权限在windows2000中,只有administrators和Backup Operators才有从网络上访问注册表的权限。如果你觉得还不够的话,可以进一步设定注册表访问权限,详细信息请参考:
http://support.microsoft.com/support/kb/articles/Q153/1/83.asp
考虑使用IPSec增强IP数据包的安全性正如其名字的含义,IPSec 提供 IP 数据包的安全性。IPSec 提供身份验证、完整性和可选择的机密性。发送方计算机在传输之前加密数据,而接收方计算机在收到数据之后解密数据。利用IPSec可以使得系统的安全性能大大增强。有关IPSes的详细信息可以参考: http://www.microsoft.com/china/technet/security/ipsecloc.asp
 
考虑使用智能卡来代替密码对于密码,总是使安全管理员进退两难,容易受到 10phtcrack 等工具的攻击,如果密码太复杂,用户把为了记住密码,会把密码到处乱写。如果条件允许,用智能卡来代替复杂的密码是一个很好的解决方法。
将服务器隐藏起来  为了防止黑客或其他非法攻击者轻易搜索到局域网服务器的名字,你可以巧妙使用“net config”命令,将服务器的名称暂时隐藏起来。如此一来局域网中的非法用户,即使通过网上邻居窗口,也无法找到服务器的“身影”了,服务器遭受外来攻击的危险性将会大大下降。

  要用命令隐藏服务器的名称时,可以直接在DOS命令行中输入“net config server /hidden:yes”(其中server是服务器的计算机名称),回车后,服务器的计算机名称就会从网上邻居窗口中自动消失,这样黑客就无法知道服务器的名称是什么了,更不要谈如何去攻击它了。
Win 2003中提高FSO的安全性  ASP提供了强大的文件系统访问能力,可以对服务器硬盘上的任何文件进行读、写、复制、删除、改名等操作,这给学校网站的安全带来巨大的威胁。现在很多校园主机都遭受过FSO木马的侵扰。但是禁用FSO组件后,引起的后果就是所有利用这个组件的ASP程序将无法运行,无法满足客户的需求。如何既允许FileSystemObject组件,又不影响服务器的安全性呢(即:不同虚拟主机用户之间不能使用该组件读写别人的文件)?以下是笔者多年来摸索出来的经验:

  第一步是有别于Windows 2000设置的关键:右击C盘,点击“共享与安全”,在出现在对话框中选择“安全”选项卡,将Everyone、Users组删除,删除后如果你的网站连ASP程序都不能运行,请添加IIS_WPG组,并重启计算机。
  经过这样设计后,FSO木马就已经不能运行了。如果你要进行更安全级别的设置,请分别对各个磁盘分区进行如上设置,并为各个站点设置不同匿名访问用户。下面以实例来介绍(假设你的主机上E盘Abc文件夹下设Abc.com站点):
  1. 打开“计算机管理→本地用户和组→用户”,创建Abc用户,并设置密码,并将“用户下次登录时须更改密码”前的对号去掉,选中“用户不能更改密码”和“密码永不过期”,并把用户设置为隶属于Guests组。
  2. 右击E:\Abc,选择“属性→安全”选项卡,此时可以看到该文件夹的默认安全设置是“Everyone”完全控制(视不同情况显示的内容不完全一样),删除Everyone的完全控制(如果不能删除,请点击[高级]按钮,将“允许父项的继承权限传播”前面的对号去掉,并删除所有),添加Administrators及Abc用户对本网站目录的所有安全权限。

  3. 打开IIS管理器,右击Abc.com主机名,在弹出的菜单中选择“属性→目录安全性”选项卡,点击身份验证和访问控制的[编辑],弹出图2所示对话框,匿名访问用户默认的就是“IUSR_机器名”,点击[浏览],在“选择用户”对话框中找到前面创建的Abc账户,确定后重复输入密码。
  经过这样设置,访问网站的用户就以Abc账户匿名身份访问E:\Abc文件夹的站点,因为Abc账户只对此文件夹有安全权限,所以他只能在本文件夹下使用FSO。

  常见问题:

  如何解除FSO上传程序小于200k限制?

  先在服务里关闭IIS admin service服务,找到Windows\System32\Inesrv目录下的Metabase.xml并打开,找到ASPMaxRequestEntityAllowed,将其修改为需要的值。默认为204800,即200K,把它修改为51200000(50M),然后重启IIS admin service服务。

  
三、IIS 安全设置1.关闭并删除默认站点默认FTP站点
默认Web站点
管理Web站点
2.建立自己的站点,与系统不在一个分区如:D:\wwwroot3.建立 E:\Logfiles 目录,以后建立站点时的日志文件均位于此目录,确保此目录
上的访问控制权限是: Administrators(完全控制)System(完全控制)
3.删除IIS的部分目录IISHelp C:\winnt\help\iishelp
IISAdmin C:\system32\inetsrv\iisadmin
MSADC C:\Program Files\Common Files\System\msadc\
删除 C:\\inetpub
4.删除不必要的IIS映射和扩展IIS 被预先配置为支持常用的文件名扩展如 .asp 和 .shtm 文件。IIS 接收到这些类型 的文件
请求时,该调用由 DLL 处理。如果您不使用其中的某些扩展或功能,则应删除该映射,步骤如下:
打开 Internet 服务管理器:
选择计算机名,点鼠标右键,选择属性:
然后选择编辑
然后选择主目录, 点击配置
选择扩展名 \".htw\", \".htr\",\".idc\",\".ida\",\".idq\"和,点击删除
如果不使用server side include,则删除\".shtm\" \".stm\" 和 \".shtml\"
5.禁用父路径 (有可能导致某些使用相对路径的子页面不能打开)“父路径”选项允许您在对诸如 MapPath 函数调用中使用“..”。在默认情况下,该选项
处于启用状态,应该禁用它。
禁用该选项的步骤如下:
右键单击该 Web 站点的根,然后从上下文菜单中选择“属性”。
单击“主目录”选项卡。
单击“配置”。
单击“应用程序选项”选项卡。
取消选择“启用父路径”复选框。
6.在虚拟目录上设置访问控制权限在iis里把所有的目录,不包括asp等文件的目录 ,比如img,image,pic,upload等等这些目录,里面一般是没有asp文件的目录的执行许可设置为无,这样就算你用的程序被发现了新的漏洞,传了马上来了,它也执行不了,不过要看仔细了,有些目录里也是有asp,asa文件的!
主页使用的文件按照文件类型应使用不同的访问控制列表:
CGI (.exe, .dll, .cmd, .pl)
Everyone (X)
Administrators(完全控制)
System(完全控制)
脚本文件 (.asp)
Everyone (X)
Administrators(完全控制)
System(完全控制)
include文件 (.inc, .shtm, .shtml)
Everyone (X)
Administrators(完全控制)
System(完全控制)
静态内容 (.txt, .gif, .jpg, .html)
Everyone (R)
Administrators(完全控制)
System(完全控制)
在创建Web站点时,没有必要在每个文件上设置访问控制权限,应该为每个文件类型创建一个
新目录,然后在每个目录上设置访问控制权限、允许访问控制权限传给各个文件。
例如,目录结构可为以下形式:
D:\wwwroot\myserver\static (.html)
D:\wwwroot\myserver\include (.inc)
D:\wwwroot\myserver \script (.asp)
D:\wwwroot\myserver \executable (.dll)
D:\wwwroot\myserver \images (.gif, .jpeg)
7.启用日志记录1)日志的审核配置
确定服务器是否被攻击时,日志记录是极其重要的。
应使用 W3C 扩展日志记录格式,步骤如下:
打开 Internet 服务管理器:
右键单击站点,然后从上下文菜单中选择“属性”。
单击“Web 站点”选项卡。
选中“启用日志记录”复选框。
从“活动日志格式”下拉列表中选择“W3C 扩展日志文件格式”。
单击“属性”。
单击“扩展属性”选项卡,然后设置以下属性:
* 客户 IP 地址
* 用户名
* 方法
* URI 资源
* HTTP 状态
* Win32 状态
* 用户代理
* 服务器 IP 地址
* 服务器端口
2)日志的安全管理
1、启用操作系统组策略中的审核功能,对关键事件进行审核记录;
2、启用IIS、FTP服务器等服务本身的日志功能;并对所有日志存放的默认位置进行更改同时作好文件夹权限设置!
3、安装Portreport对所有网络访问操作进行监视(可选,可能增大服务器负荷);
4、安装自动备份工具,定时对上述日志进行异地备份,起码是在其他分区的隐蔽位置进行备份,并对备份目录设置好权限(仅管理员可访问)。
5、准备一款日志分析工具,以便随时可用。
6、要特别关注任何服务的重启、访问敏感的扩展存储过程等事件。
8.备份IIS配置可使用IIS的备份功能,将设定好的IIS配置全部备份下来,这样就可以随时恢复
9.修改IIS标志1)使用工具程序修改IIS标志
修改IIS标志Banner的方法:
下载一个修改IIS Banner显示信息的软件——IIS/PWS Banner Edit。利用它我们可以很轻松地修改IIS的Banner。但要注意在修改之前我们首先要将IIS停止(最好是在服务中将World Wide Web Publishing停止),并要将DLLcache下的文件全部清除。否则你会发现即使修改了一点改变也没有。
IIS/PWS Banner Edit其实是个傻瓜级的软件,我们只要直接在New Banner中输入想要的Banner信息,再点击Save to file就修改成功了。用IIS/PWS Banner Edit简单地修改,对菜鸟黑客来说他可能已被假的信息迷惑了,可是对一些高手来说这并没有给他们造成什么麻烦。为此我们必须亲自修改IIS的Banner信息,这样才能做到万无一失。
高版本Windows的文件路径为 C:\WINDOWS\system32\inetsrv\w3svc.dll,可以直接用Ultraedit打开W3SVC.DLL,然后以“Server:”为关键字查找。利用编辑器将原来的内容替换成我们想要的信息,比如改成Apache的显示信息,这样入侵者就无法判断我们的主机类型,也就无从选择溢出工具了。
2)修改IIS的默认出错提示信息等。
10.重定义错误信息很多文章讲了怎样防止数据库不被下载都不错的,只要记住一点 .不要改成asp就可以了,不然给你放一个一句话木马让你死的很难看,再着在IIS中将HTTP404.500等 Object Not Found出错页面通过URL重定向到一个定制HTM文件,这样大多数的暴库得到的都是你设置好的文件,自然就掩饰了数据库的地址还能防止一些菜鸟sql注射。
对于服务器管理员,既然你不可能挨个检查每个网站是否存在SQL注入漏洞,那么就来个一个绝招。这个绝招能有效防止SQL注入入侵而且"省心又省力,效果真好!"SQL注入入侵是根据IIS给出的ASP错误提示信息来入侵的,如果你把IIS设置成不管出什么样的ASP错误,只给出一种错误提示信息,即http 500错误,那么人家就没办法入侵了。具体设置请参看图2。主要把500:100这个错误的默认提示页面 C:\WINDOWS\Help\iisHelp\common\500-100.asp改成
C:\WINDOWS\Help\iisHelp\common\500.htm即可,这时,无论ASP运行中出什么错,服务器都只提示HTTP 500错误。
还可更改C:\WINDOWS\Help\iisHelp\common\404b.htm内容改为<META HTTP-EQUIV=REFRESH CONTENT="0;URL=/;">这样,出错了自动转到首页。
 
Win 2003中提高FSO的安全性ASP提供了强大的文件系统访问能力,可以对服务器硬盘上的任何文件进行读、写、复制、删除、改名等操作,这给学校网站的安全带来巨大的威胁。现在很多校园主机都遭受过FSO木马的侵扰。但是禁用FSO组件后,引起的后果就是所有利用这个组件的ASP程序将无法运行,无法满足客户的需求。如何既允许FileSystemObject组件,又不影响服务器的安全性呢(即:不同虚拟主机用户之间不能使用该组件读写别人的文件)?以下是笔者多年来摸索出来的经验:

  第一步是有别于Windows 2000设置的关键:右击C盘,点击“共享与安全”,在出现在对话框中选择“安全”选项卡,将Everyone、Users组删除,删除后如果你的网站连ASP程序都不能运行,请添加IIS_WPG组(图1),并重启计算机。

经过这样设计后,FSO木马就已经不能运行了。如果你要进行更安全级别的设置,请分别对各个磁盘分区进行如上设置,并为各个站点设置不同匿名访问用户。下面以实例来介绍(假设你的主机上E盘Abc文件夹下设Abc.com站点):

  1. 打开“计算机管理→本地用户和组→用户”,创建Abc用户,并设置密码,并将“用户下次登录时须更改密码”前的对号去掉,选中“用户不能更改密码”和“密码永不过期”,并把用户设置为隶属于Guests组。

  2. 右击E:\Abc,选择“属性→安全”选项卡,此时可以看到该文件夹的默认安全设置是“Everyone”完全控制(视不同情况显示的内容不完全一样),删除Everyone的完全控制(如果不能删除,请点击[高级]按钮,将“允许父项的继承权限传播”前面的对号去掉,并删除所有),添加Administrators及Abc用户对本网站目录的所有安全权限。

  3. 打开IIS管理器,右击Abc.com主机名,在弹出的菜单中选择“属性→目录安全性”选项卡,点击身份验证和访问控制的[编辑],弹出图2所示对话框,匿名访问用户默认的就是“IUSR_机器名”,点击[浏览],在“选择用户”对话框中找到前面创建的Abc账户,确定后重复输入密码。



经过这样设置,访问网站的用户就以Abc账户匿名身份访问E:\Abc文件夹的站点,因为Abc账户只对此文件夹有安全权限,所以他只能在本文件夹下使用FSO。

  常见问题:

  如何解除FSO上传程序小于200k限制?

  先在服务里关闭IIS admin service服务,找到Windows\System32\Inesrv目录下的Metabase.xml并打开,找到ASPMaxRequestEntityAllowed,将其修改为需要的值。默认为204800,即200K,把它修改为51200000(50M),然后重启IIS admin service服务。
 
防止 ASP 木马在服务器上运行目前比较流行的ASP木马主要通过三种技术来进行对服务器的相关操作。
  一、使用FileSystemObject组件
  FileSystemObject可以对文件进行常规操作
  可以通过修改注册表,将此组件改名,来防止此类木马的危害。
  HKEY_CLASSES_ROOT\Scripting.FileSystemObject\
  改名为其它的名字,如:改为FileSystemObject_ChangeName
  自己以后调用的时候使用这个就可以正常调用此组件了
  也要将clsid值也改一下
  HKEY_CLASSES_ROOT\Scripting.FileSystemObject\CLSID\项目的值
  也可以将其删除,来防止此类木马的危害。
  注销此组件命令:RegSrv32 /u C:\WINNT\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来防止调用此组件。
  使用命令:cacls C:\WINNT\system32\shell32.dll /e /d guests
  注:操作均需要重新启动WEB服务后才会生效。
  四、调用Cmd.exe
  禁用Guests组用户调用cmd.exe
  cacls C:\WINNT\system32\Cmd.exe /e /d guests
  通过以上四步的设置基本可以防范目前比较流行的几种木马,但最有效的办法还是通过综合安全设置,将服务器、程序安全都达到一定标准,才可能将安全等级设置较高,防范更多非法入侵。
  
四、数据及备份管理1.备份1)要经常把重要数据备份到专用的备份服务器,备份完毕后,可将备份服务器与网络隔离。 可采用自动的备份工具进行,要求支持FTP方式备份。
2)使用系统的备份功能对安装好的系统进行阶段性备份。
3)使用WonRescue等工具对注册表进行阶段性备份。
4)使用Ghost对全面配置完毕的系统分区进行映像备份,并存放到隐藏的分区中。
2.设置文件共享权限1)限制共享权限
设置共享文件时,要注意把共享文件的权限从“everyone”组改成“授权用户”,包括打印共享。
2)关闭默认共享
Win 2000安装好以后,系统会创建一些隐藏的共享,在cmd下可用net share命令查看它们。要禁止这
些共享。操作方法是:打开“管理工具→计算机管理→共享文件夹→共享”,在相应的共享文件夹上按右
键,点“停止共享”即可。不当过机器重新启动后,这些共享又会重新开启。
3.防止文件名欺骗设置以下选项可防止文件名欺骗,如防止以.txt或.exe为后缀的恶意文件被显示为.txt文件,从而使
人大意打开该文件: 双击“我的电脑→工具→文件夹选项→查看”,选择“显示所有文件和文件夹”属性
设置,去掉“隐藏已知文件类型扩展名”属性设置。
4.Access数据库的安全概要1)新生成的数据库在保证干净的前提下,主动在尾部合并一行ASP代码,内容一般可以为重定向,以免别人通过论坛发帖等方式嵌入有害代码后被得到执行;
2)对MDB文件创建一个无效的映射,以便在IE中下载时出错;
3)修改出错页面,建议将出错页面设计为正常被曝库后的内容,但给一个数据库的虚假地址(最好存在相应的虚假数据库文件,比如一个改名后的病毒等);
4)在防火墙中对MDB类型的扩展名进行过滤;
5)删除或禁用网站的后台数据库备份功能,而用本地安装的专门自动备份程序进行自动增量备份。
6)ASP 通用防止注入的程序:

来源:http://hi.baidu.com/ctian/blog/item/e4cadd1361a113015aaf53b1.html
小鱼的淘宝店铺-多多支持哇

一键解决安全烦恼,2003安全工具包。

视频在线上传+队列转换FLV+水印+捉图+修复+获时+转3GP(API语言不限,开视频站必备!)
下载:http://down.51cto.com/data/28428

本地下载:
51CTO下载-2003safe.rar (您是游客您没有权限下载)


相信搞服务器的人都比较在意安全的问题吧,要是按照安全文档来的话,需要的时间可真不少,这个附件里是一个安全程序,轻轻的点击一下就能解决你90%的安全问题,轻松的解决注入和提权的漏洞。

这个工具是某IDC公司的内部工具,相当的实用,附件是一个winrar自解压文件,里面包含了相关的注册表数据和权限设定功能,有兴趣的话可以自行添加其他内容,但是千万不要捣乱哦。

PS:这个工具还有10%欠缺的是目录权限没有设置,如果不是做虚拟主机或者WEB服务的话,这些完全够了,如果要做WEB服务的话,还要做以下的修改。
本帖最后由 张小鱼 于 2010-01-27 12:20 编辑
小鱼的淘宝店铺-多多支持哇