如果你的系统上安装了SQL,一定要屏蔽了3389端口.
屏蔽端口文章:
用win2000的IP安全策略封闭端口的办法
封锁端口,全面构建防线
黑客大多通过端口进行入侵,所以你的服务器只能开放你需要的端口,那么你需要哪些端口呢?以下是常用端口,你可根据需要取舍:
80为Web网站服务;21为FTP服务;25 为E-mail SMTP服务;110为Email POP3服务。
其他还有SQL Server的端口1433等,你可到网上查找相关资料。那些不用的端口一定要关闭!关闭这些端口,我们可以通过Windows 2000的安全策略进行。
借助它的安全策略,完全可以阻止入侵者的攻击。你可以通过“管理工具→本地安全策略”进入,右击“IP安全策略”,选择“创建IP安全策略”,点[下一步]。输入安全策略的名称,点[下一步],一直到完成,你就创建了一个安全策略:
接着你要做的是右击“IP安全策略”,进入管理IP筛选器和筛选器操作,在管理IP筛选器列表中,你可以添加要封锁的端口,这里以关闭ICMP和139端口为例说明。
关闭了ICMP,黑客软件如果没有强制扫描功能就不能扫描到你的机器,也Ping不到你的机器。关闭ICMP的具体操作如下:点[添加],然后在名称中输入“关闭ICMP”,点右边的[添加],再点[下一步]。在源地址中选“任何IP地址”,点[下一步]。在目标地址中选择“我的IP地址”,点[下一步]。在协议中选择“ICMP”,点[下一步]。回到关闭ICMP属性窗口,即关闭了ICMP。
下面我们再设置关闭139,同样在管理IP筛选器列表中点“添加”,名称设置为“关闭139”,点右边的“添加”,点[下一步]。在源地址中选择“任何IP地址”,点[下一步]。在目标地址中选择“我的IP地址”,点[下一步]。在协议中选择“TCP”,点[下一步]。在设置IP协议端口中选择从任意端口到此端口,在此端口中输入139,点[下一步]。即完成关闭139端口,其他的端口也同样设置
然后进入设置管理筛选器操作,点“添加”,点[下一步],在名称中输入“拒绝”,点[下一步]。选择“阻止”,点[下一步]。
然后关闭该属性页,右击新建的IP安全策略“安全”,打开属性页。在规则中选择“添加”,点[下一步]。选择“此规则不指定隧道”,点[下一步]。在选择网络类型中选择“所有网络连接”,点[下一步]。在IP筛选器列表中选择“关闭ICMP”,点[下一步]。在筛选器操作中选择“拒绝”,点[下一步]。这样你就将“关闭ICMP”的筛选器加入到名为“安全”的IP安全策略中。同样的方法,你可以将“关闭139”等其他筛选器加入进来。
最后要做的是指派该策略,只有指派后,它才起作用。方法是右击“安全”,在菜单中选择“所有任务”,选择“指派”。IP安全设置到此结束,你可根据自己的情况,设置相应的策略。
windows2000服务安全与建议
Alerter
服务方向: 负责向用户通报管理警报,该服务和Mesenger服务一起工作,后者接收并路由前者的信息.
可执行文件: %systemRoot%\system32\services.exe
风险: 潜在可能导致社会工程攻击
建议: 将Alerter服务发出的警告限定为只由管理员接收.
Application Management
服务方向: 提供和active directory之间的通信.通过group policy(组策划)来指定,发布并删除在系统中安装的应用程序.
可执行文件: winnt\system32\services.exe
风险: 无
建议: 非组策略使用应用程序,最好禁用该服务.
Boot Information Negotiation Layer
服务方向: 与Remote Installation Service(RIS)一起使用,除有需要通过RIS安装操作系统,否则不要运行.
可执行文件: winnt\system32\services.exe
风险: 无
Brower
服务方向: 负责保存网络上的计算机列表,并将该列表提供给那些请求得到该列表的程序
可执行文件: winnt\system32\services.exe
风险: 暴露有关网络的信息
建议: 禁止
Indexing
服务方向: 负责索引磁盘上的文档和文档属性,并且在一个目录中保存信息,使得你在以后可以搜索他们.
可执行文件: winnt\system32\services.exe
风险: 其为IISweb服务器上诸多安全弱点的根源
建议: 除非特别需要,否则禁止.
ClipBook
服务方向: ClipBook支持ClipBook Viewer程序,该程序可以允许剪贴页被远程计算机上的ClipBook浏览.可以使得用户能够通过网络连接来剪切和粘贴文本和图形.
可执行文件: winnt\system32\Clipsrv.exe
风险: 潜在被非法用于远程访问ClipBook剪贴页面
建议: 禁止
Distributed File System
服务方向: 允许创建单一逻辑盘.文件分布在网络上不同位置.
可执行文件: winnt\system32\Dfssrc.exe
风险: 暂无已知风险
建议: 禁止(会产生disk error,可忽略该错误)
DHCP client
服务方向: 通过注册和更新IP地址和DNS域名来管理网络配置.
可执行文件: winnt\system32\services.exe
风险: 无已知风险
建议:为服务器分配一个静态IP
Logical Disk Manager Administrative
服务方向: 用于管理逻辑盘
可执行文件: winnt\system32\dmadmin.exe
风险: 暂无已知风险
建议:将服务的启动类型设为手动(Manual)
Logical Disk Manager
服务方向: 该服务为 Logical Disk Manager Watchdog 服务.负责管理动态磁盘的服务.
可执行文件: winnt\system32\services.exe
风险: 无已知风险
建议: 系统运行时需要,保持默认得自动启动
DNS Server
服务方向: 负责解答DNS域名查询
可执行文件: winnt\system32\dns.exe
风险: 无已知风险
建议: 因其通常是导致许多安全性弱点的根源,该服务应谨慎使用.
DNS Client
服务方向: 用于缓存DNS查询来进行记录.可用于某个入侵检测系统的DNS查询,可加速DNS查询的速度.
可执行文件: winnt\system32\services.exe
风险: 无已知风险,但攻击者可以查看你的缓存内容.确定你所访问过的网站. 命令行形式为(ipconfig/displaydns)
建议:可停可不停
Event Log
服务方向:Event Log服务负责记录来自系统和运行中程序的管理事件消息.虽然该服务功能有限,并具有一些小问题,但是该服务可以用于入侵检测和系统监视.
可执行文件: winnt\system32\services.exe
风险: 无已知风险
建议: 该服务应该被启动,尤其实在独立服务器上.
COM+Eent System
服务方向: 提供自动事件分布功能来订阅COM组件.
可执行文件: winnt\system32\svchost.exe -k nesvcs
风险: 无已知风险
建议: 如果该服务不需要已安装的任何程序所使用,你可以禁用COM+Event System 和 System Event Notification服务.
Fax
服务方向: 它负责管理传真的发送和接收.
可执行文件: winnt\system32\faxsvc.exe
风险: 无已知风险
建议: 对于服务器而言,不需要也不建议使用该服务,除非该服务器专门被指定为用做一个传真服务器.
Single Instance Storage Groveler
服务方向: 该服务和Remote Installation服务一起使用.扫描单一实例存储卷来寻找重复的文件,并将重复文件指向某个数据存储点以节省磁盘空间.
风险: 无已知风险
建议: 除非你需要使用 Remote Installation 服务,否则请停止它.
Internet Authentication Service
服务方向: 用于认证拨号和VPN用户.
可执行文件: winnt\system32\svchost.exe -k netsvcs
风险: 无已知风险
建议: 显然除了在拨号和VPN服务器上,该服务不应该使用.禁止.
IIS Admin
服务方向: IIS Admin服务允许通过Internet Services Manager MMC程序面板来对IIS服务进行管理.
可执行文件: winnt\system32\inetsrv\inetinfo.exe
风险: 无已知风险
建议: 如果服务器正在运行Inetrnet服务,则该服务是需要的.如果没有运行任何Inetrnet服务,则应当从Control Panel,Add and Remove Programs中卸载Internet Information Server,这样IIS Admin服务也将被卸载.
Intersite Messaging
服务方向: Intersite Messaging服务和Active Directory replication一起使用.
可执行文件: winnt\system32\ismserv.exe
风险: 无已知风险
建议: 除了Active Directory服务器之外,不需要也不建议使用该服务.
Kerberos Key Distribution Center
服务方向: 这是个域服务,提供了Kerberos认证服务(AS Authentication Service)和票证授予服务(TGT,Ticket-Granting Service)
可执行文件: winnt\system32\lsass.exe
风险: 没有已知风险
建议: Kerberos Key Distribution Center服务和位于某个域控制器是的Active Directory一起工作的,而且不能被停止,除了在域控制器上,该服务不应该在其他计算机上运行.
Server
服务方向: 该服务提供RPC支持以及文件,打印和命名管道共享,Server服务是作为文件系统驱动器来实现的,可以处理I/O请求.
可执行文件: winnt\system32\services.exe
风险: 如果没有提供适当地用户保护,会暴露系统文件和打印机资源
建议: 除非你打算在windows网络上共享文件或打印机,否则不需要运行该服务. (附言: 对以2000而言,这个是一个高风险服务,2000的用户多知道默认共享吧,就是该服务的问题,如果不禁止,每次注销或开机,默认共享就会打开,你的所以重要信息都将暴露.例如winnt文件夹.大家都应该知道他对于2000的重要.除非你的密码够安全,否则这个共享将是你机子的死穴!!!!)
Workstation
服务方向: 该服务提供网络连接和通信,该服务以一个文件系统驱动器的形式工作,并且可以允许用户访问位于windows网络上的资源.
可执行文件: winnt\system32\services.exe
风险: 一些独立服务器,例如web服务器,不应当参与到某个windows网络中
建议: 该服务应当只在位于某个内部网络,并受到某个防火墙保护的工作站和服务器上运行,在任何可以连接到Internet的服务器上都应该禁用这个服务.
TCP/IP打印服务器
服务方向: 该服务允许远程UNIX用户通过使用TCP/IP协议来访问由某个windows2000服务器所管理的打印机.
可执行文件: winnt\system32\tcpsvcs.exe
风险: 具有一些安全性弱点,并打开一个监听端口
建议: 该服务具有一些安全性弱点,因为打开了一个到internet的端口,因此,除非网络通过防火墙与Internet隔离开.否则不要使用该服务.
License Logging
服务方向: 该服务负责管理某个站点的许可协议信息.
可执行文件: winnt\system32\llssrv.exe
风险: 没有已知风险
建议: 除了在域控制器上,其他计算机不应当使用该服务.
TCP/IP NETBIOS Helper
服务方向: 该服务允许在TCP/IP网络上进行NETBIOS通信.
可执行文件: winnt\system32\services.exe
风险: 暴露出系统中的netBIOS安全性弱点,例如NTLM认证
建议: 除非你需要和一个旧版本的windows保持兼容,否则应当禁止该服务.
Messenger
服务方向: Messenger服务负责发送和接收由管理员或Alerter服务所传递的消息.
可执行文件: winnt\system32\services.exe
风险: 没有已知风险
建议: 该服务不需要而且应当被禁用.
NetMeeting Remote Desktop Sharing
服务方向: 该服务允许授权用户通过使用NetMeeting来远程访问你的Windows桌面.
可执行文件: winnt\system32\mnmsrvc.exe
风险: 是一个具有潜在不安全性的服务
建议: 该服务应当被禁止.因为它是会导致潜在地安全性弱点的.你可以使用Terminal服务来代替该服务用于远程桌面访问.
Distributed Transaction Coordinator
服务方向: 微软的Distributed Transaction Coordinator服务(MS DTC)可以借助OLE Transactions协议来提供一个事务(Transaction)协调工具,可以协调分布于两个和多个数据库,消息队列文件系统和其他事务保护(trasaction protected)资源管理器的事务.
可执行文件: winnt\system32\msdtc.exe
风险: 没有已知风险
建议: 无需禁止
FTP Publishing
服务方向: 文件传输协议不是一种安全的协议,如果不进行适当地保护,FTP Publishing服务将大来很多的安全性风险.
可执行文件: winnt\system32\inetsrv\inetinfo.exe
风险: 微软的FTP Server没有已知风险.但一般而言,FTP是已知不安全的服务.
建议: 除非你需要通过FTP来提供文件共享,否则该服务应当被禁止.如果需要,请谨慎地对其进行保护和监视.
2、本地连接的设置。在“高级-WINS”里取消“启用LMHOSTS查询”,选中“禁用TCP/IP协议上的NETBIOS”。
在“高级-选项-TCP/IP筛选”里选中“启用TCP/IP筛选”,在“TCP端口”那里选择“只允许”,然后添加进“21、80”端口。(说明,做过此项设置将不能使用QQ的文件传输功能,也无法玩大多数网络游戏——谁知道这两项服务用什么端口请告诉我)。
3、在“控制面板-管理工具-服务”里找到“MESSAGE”,点右键选属性,点击“停止”按钮,并且在“启动类型”里选择“已禁用”。——这样就不用老担心收到烦人的信息了(最近好像还有人拿这个做广告,说别人不收也得收,凭什么啊?)
4、还是“管理工具”,这次打开“本地安全设置”,依次选择“本地策略-用户权力指派-拒绝从网络访问这台计算机”,把“everyone”添加进去即可。
5、“开始-启动-运行”,输入“dcomcnfg”,选择“默认属性”,取消“在这台计算机上启用分布式 COM”。
(C D E指分区,如果还有别的分区请自行添加)
win2000server安全设置
1)防止SYN洪水攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ParametersSynAttackProtect REG_DWORD 0x2(默认值为0x0)
说明:SYN攻击保护包括减少SYN-ACK重新传输次数,以减少分配资源所保留的时
间.路由缓存项资源分配延迟,直到建立连接为止.如果synattackprotect=2,
则AFD的连接指示一直延迟到三路握手完成为止.注意,仅在TcpMaxHalfOpen和
TcpMaxHalfOpenRetried设置超出范围时,保护机制才会采取措施.
2) 禁止C$、D$一类的缺省共享
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters AutoShareServer、REG_DWORD、0x0
3) 禁止ADMIN$缺省共享
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters AutoShareWks、REG_DWORD、0x0
4) 限制IPC$缺省共享
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
restrictanonymous REG_DWORD 0x0 缺省
0x1 匿名用户无法列举本机用户列表
0x2 匿名用户无法连接本机IPC$共享
说明:不建议使用2,否则可能会造成你的一些服务无法启动,如SQL Server
5)修改MAC地址
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\
找到右窗口的说明为"网卡"的目录,
比如说是
展开之,在其下的0000,0001,0002...的分支中找到"DriverDesc"的键值为你网卡的说明,
比如说"DriverDesc"的值为"Intel® 82559 Fast Ethernet LAN on Motherboard"
然后在右窗口新建一字符串值,名字为"Networkaddress",内容为你想要的MAC值,比如说
是"004040404040"
然后重起计算机,ipconfig /all看看.
win2000server安全设置(2)
11.删除所有的网络共享资源,在网络连接的设置中删除文件和打印共享,只留下TCP/IP协议
说明:NT与2000在默认情况下有不少网络共享资源,在局域网内对网络管理和网络通讯有用,在网站服务器上同样是一个特大的安全隐患。(卸载“Microsoft 网络的文件和打印机共享”。当查看“网络和拨号连接”中的任何连接属性时,将显示该选项。单击“卸载”按钮删除该组件;清除“Microsoft 网络的文件和打印机共享”复选框将不起作用。)
12.改NTFS的安全权限;
说明:NTFS下所有文件默认情况下对所有人(EveryOne)为完全控制权限,这使黑客有可能使用一般用户身份对文件做增加、删除、执行等操作,建议对一般用户只给予读取权限,而只给管理员和System以完全控制权限,但这样做有可能使某些正常的脚本程序不能执行,或者某些需要写的操作不能完成,这时需要对这些文件所在的文件夹权限进行更改,建议在做更改前先在测试机器上作测试,然后慎重更改。
14.只保留TCP/IP协议,删除NETBEUI、IPX/SPX协议;
说明:网站需要的通讯协议只有TCP/IP,而NETBEUI是一个只能用于局域网的协议,IPX/SPX是面临淘汰的协议,放在网站上没有任何用处,反而会被某些黑客工具利用。
15.不要起用IP转发功能,控制面板->网络->协议->TCP/IP协议->属性,使这个选框为空。(NT)
说明:缺省情况下,NT的IP转发功能是禁止的,但注意不要启用,否则它会具有路由作用,被黑客利用来对其他服务器进行攻击。
16.安装最新的MDAChttp://www.microsoft.com/data/download.htm)
说明:MDAC为数据访问部件,通常程序对数据库的访问都通过它,但它也是黑客攻击的目标,为防止以前版本的漏洞可能会被带入升级后的版本,建议卸载后安装最新的版本。注意:在安装最新版本前最好先做一下测试,因为有的数据访问方式或许在新版本中不再被支持,这种情况下可以通过修改注册表来档漏洞,祥见漏洞测试文档。
17.设置IP拒绝访问列表
说明:对于WWW服务,可以拒绝一些对站点有攻击嫌疑的地址;尤其对于FTP服务,如果只是自己公司上传文件,就可以只允许本公司的IP访问改FTP服务,这样,安全性大为提高。
18.禁止对FTP服务的匿名访问
说明:如果允许对FTP服务做匿名访问,该匿名帐户就有可能被利用来获取更多的信息,以致对系统造成危害。
19.建议使用W3C扩充日志文件格式,每天记录客户IP地址,用户名,服务器端口,方法,URI字根,HTTP状态,用户代理,而且每天均要审查日志。(最好不要使用缺省的目录,建议更换一个记日志的路径,同时设置日志的访问权限,只允许管理员和system为Full Control)
说明:作为一个重要措施,既可以发现攻击的迹象,采取预防措施,也可以作为受攻击的一个证据。
20.慎重设置WEB站点目录的访问权限,一般情况下,不要给予目录以写入和允许目录浏览权限。只给予.ASP文件目录以脚本的权限,而不要给与执行权限。
说明:目录访问权限必须慎重设置,否则会被黑客利用。
21.ASP编程安全:
安全不仅是网管的事,编程人员也必须在某些安全细节上注意,养成良好的安全习惯,否则,会给黑客造成可乘之机。目前,大多数网站上的ASP程序有这样那样的安全漏洞,但如果写程序的时候注意的话,还是可以避免的。
涉及用户名与口令的程序最好封装在服务器端,尽量少的在ASP文件里出现,涉及到与数据库连接地用户名与口令应给予最小的权限。
说明:用户名与口令,往往是黑客们最感兴趣的东西,如果被通过某种方式看到源代码,后果是严重的。因此要尽量减少它们在ASP文件中的出现次数。出现次数多得用户名与口令可以写在一个位置比较隐蔽的包含文件中。如果涉及到与数据库连接,理想状态下只给它以执行存储过程的权限,千万不要直接给予该用户以修改、插入、删除记录的权限。
需要经过验证的ASP页面,可跟踪上一个页面的文件名,只有从上一页面转进来的会话才能读取这个页面。
说明:现在的需要经过验证的ASP程序多是在页面头部加一个判断语句,但这还不够,有可能被黑客绕过验证直接进入,因此有必要跟踪上一个页面。具体漏洞见所附漏洞文档。
防止ASP主页.inc文件泄露问题
当存在asp 的主页正在制作并没有进行最后调试完成以前,可以被某些搜索引擎机动追加为搜索对象,如果这时候有人利用搜索引擎对这些网页进行查找,会得到有关文件的定位,并能在浏览器中察看到数据库地点和结构的细节揭示完整的源代码。
解决方案:程序员应该在网页发布前对其进行彻底的调试;安全专家需要固定asp 包含文件以便外部的用户不能看他们。 首先对 .inc 文件内容进行加密,其次也可以使用 .asp 文件代替 .inc 文件使用户无法从浏览器直接观看文件的源代码。.inc 文件的文件名不用使用系统默认的或者有特殊含义容易被用户猜测到的,尽量使用无规则的英文字母。
注意某些ASP编辑器会自动备份asp文件,会被下载的漏洞
在有些编辑asp程序的工具,当创建或者修改一个asp文件时,编辑器自动创建一个备份文件,比如:UltraEdit就会备份一个..bak文件,如你创建或者修改了some.asp,编辑器自动生成一个叫some.asp.bak文件,如果你没有删除这个 bak文件,攻击有可以直接下载some.asp.bak文件,这样some.asp的源程序就会给下载。
在处理类似留言板、BBS等输入框的ASP程序中,最好屏蔽掉HTML、javascript、VBScript语句,如无特殊要求,可以限定只允许输入字母与数字,屏蔽掉特殊字符。同时对输入字符的长度进行限制。而且不但在客户端进行输入合法性检查,同时要在服务器端程序中进行类似检查。
说明:输入框是黑客利用的一个目标,他们可以通过输入脚本语言等对用户客户端造成损坏; 如果该输入框涉及到数据查询,他们会利用特殊查询输入得到更多的数据库数据,甚至是表的全部。因此必须对输入框进行过滤。但如果为了提高效率仅在客户端进行输入合法性检查,仍有可能被绕过,因此必须在服务器端再做一次检查。
23 .SQL SERVER的安全
SQL SERVER是NT平台上用的最多的数据库系统,但是它的安全问题也必须引起重视。数据库中往往存在着最有价值的信息,一旦数据被窃后果不堪设想。
及时更新补丁程序。
说明:与NT一样,SQL SERVER的许多漏洞会由补丁程序来弥补。建议在安装补丁程序之前先在测试机器上做测试,同时提前做好目标服务器的数据备份。
给SA一个复杂的口令。
说明:SA具有对SQL SERVER数据库操作的全部权限。遗憾的是,一部分网管对数据库并不熟悉,建立数据库的工作由编程人员完成,而这部分人员往往只注重编写SQL 语句本身,对SQL SERVER数据库的管理不熟悉,这样很有可能造成SA口令为空。这对数据库安全是一个严重威胁。目前具有这种隐患的站点不在少数。
严格控制数据库用户的权限,轻易不要给让用户对表有直接的查询、更改、插入、删除权限,可以通过给用户以访问视图的权限,以及只具有执行存储过程的权限。
说明:用户如果对表有直接的操作权限,就会存在数据被破坏的危险。
制订完整的数据库备份与恢复策略。
24. PCANYWHERE的安全:
目前,PCANYWHERE是最流行的基于NT与2000的远程控制工具,同样也需要注意安全问题。
建议采用单独的用户名与口令,最好采用加密手段。千万不要采用与NT管理员一样的用户名与口令,也不要使用与NT集成的口令。同时在服务器端的设置时务必采用security options中的强加密方式,拒绝低加密水平的连接,同时采用口令加密与传输过程中的用户名与口令加密,以防止被嗅探到,还要限制连接次数,另外很重要的一点就是一定在protect item中设置高强度的口令,同时一定限制不能够让别人看到你的host端的任何设置,即便是要察看主机端的相关设置也必须要输入口令!
说明:PCANYWHERE 口令是远程控制的第一个关口,如果与NT的一样, 就失去了安全屏障。被攻破后就毫无安全可言。而如果采用单独的口令,即使攻破了PCANYWHERE,NT还有一个口令屏障。
及时安装较新的版本。
1.利用win2000的安全配置工具来配置策略
微软提供了一套的基于MMC(管理控制台)安全配置和分析工具,利用他们你可以很方便的配置你的服务器以满足你的要求。具体内容请参考微软主页:
http://www.microsoft.com/windows200...y/sctoolset.asp
2.关闭不必要的服务
windows 2000 的 Terminal Services(终端服务),IIS ,和RAS都可能给你的系统带来安全漏洞。为了能够在远程方便的管理服务器,很多机器的终端服务都是开着的,如果你的也开了,要确认你已经正确的配置了终端服务。有些恶意的程序也能以服务方式悄悄的运行。要留意服务器上面开启的所有服务,中期性(每天)的检查他们。下面是C2级别安装的默认服务:
Computer Browser service TCP/IP NetBIOS Helper
Microsoft DNS server Spooler
NTLM SSP Server
RPC Locator WINS
RPC service Workstation
Netlogon Event log
3.关闭不必要的端口
关闭端口意味着减少功能,在安全和功能上面需要你作一点决策。如果服务器安装在防火墙的后面,冒的险就会少些,但是,永远不要认为你可以高枕无忧了。用端口扫描器扫描系统所开放的端口,确定开放了哪些服务是黑客入侵你的系统的第一步。\system32\drivers\etc\services 文件中有知名端口和服务的对照表可供参考。具体方法为:
网上邻居>属性>本地连接>属性>internet 协议(tcp/ip)>属性>高级>选项>tcp/ip筛选>属性 打开tcp/ip筛选,添加需要的tcp,udp,协议即可。
4.打开审核策略
开启安全审核是win2000最基本的入侵检测方法。当有人尝试对你的系统进行某些方式(如尝试用户密码,改变帐户策略,未经许可的文件访问等等)入侵的时候,都会被安全审核记录下来。很多的管理员在系统被入侵了几个月都不知道,直到系统遭到破坏。下面的这些审核是必须开启的,其他的可以根据需要增加:
策略 设置
审核系统登陆事件 成功,失败
审核帐户管理 成功,失败
审核登陆事件 成功,失败
审核对象访问 成功
审核策略更改 成功,失败
审核特权使用 成功,失败
审核系统事件 成功,失败
5.开启密码密码策略
策略 设置
密码复杂性要求 启用
密码长度最小值 6位
强制密码历史 5 次
强制密码历史 42 天
6.开启帐户策略
策略 设置
复位帐户锁定计数器 20分钟
帐户锁定时间 20分钟
帐户锁定阈值 3次
7.设定安全记录的访问权限
安全记录在默认情况下是没有保护的,把他设置成只有Administrator和系统帐户才有权访问。
8.把敏感文件存放在另外的文件服务器中
虽然现在服务器的硬盘容量都很大,但是你还是应该考虑是否有必要把一些重要的用户数据(文件,数据表,项目文件等)存放在另外一个安全的服务器中,并且经常备份它们。
9.不让系统显示上次登陆的用户名
默认情况下,终端服务接入服务器时,登陆对话框中会显示上次登陆的帐户明,本地的登陆对话框也是一样。这使得别人可以很容易的得到系统的一些用户名,进而作密码猜测。修改注册表可以不让对话框里显示上次登陆的用户名,具体是:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\DontDisplayLastUserName把 REG_SZ 的键值改成 1 .
10.禁止建立空连接
默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。我们可以通过修改注册表来禁止建立空连接:
Local_Machine\System\CurrentControlSet\Control
\LSA-RestrictAnonymous 的值改成”1”即可。
11.到微软网站下载最新的补丁程序
很多网络管理员没有访问安全站点的习惯,以至于一些漏洞都出了很久了,还放着服务器的漏洞不补给人家当靶子用。谁也不敢保证数百万行以上代码的2000不出一点安全漏洞,经常访问微软和一些安全站点,下载最新的service pack和漏洞补丁,是保障服务器长久安全的唯一方法。
高级篇
1. 关闭 DirectDraw
这是C2级安全标准对视频卡和内存的要求。关闭DirectDraw可能对一些需要用到DirectX的程序有影响(比如游戏,在服务器上玩星际争霸?我晕..$%$^%^&??),但是对于绝大多数的商业站点都应该是没有影响的。
修改注册表 HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI 的Timeout(REG_DWORD)为 0 即可。
2.关闭默认共享
NetLogon 这个共享在Windows 2000 服务器的Net Login 服务在处理登陆域请求时用到
PRINT$ %SYSTEMROOT%\SYSTEM32\SPOOL\DRIVERS 用户远程管理打印机
3.禁止dump file的产生
dump文件在系统崩溃和蓝屏的时候是一份很有用的查找问题的资料(不然我就照字面意思翻译成垃圾文件了)。然而,它也能够给黑客提供一些敏感信息比如一些应用程序的密码等。要禁止它,打开 控制面板>系统属性>高级>启动和故障恢复 把 写入调试信息 改成无。要用的时候,可以再重新打开它。
4.使用文件加密系统EFS
Windows2000 强大的加密系统能够给磁盘,文件夹,文件加上一层安全保护。这样可以防止别人把你的硬盘挂到别的机器上以读出里面的数据。记住要给文件夹也使用EFS,而不仅仅是单个的文件。 有关EFS的具体信息可以查看http://www.microsoft.com/windows200...ity/encrypt.asp
5.加密temp文件夹
一些应用程序在安装和升级的时候,会把一些东西拷贝到temp文件夹,但是当程序升级完毕或关闭的时候,它们并不会自己清除temp文件夹的内容。所以,给temp文件夹加密可以给你的文件多一层保护。
6.锁住注册表
在windows2000中,只有administrators和Backup Operators才有从网络上访问注册表的权限。如果你觉得还不够的话,可以进一步设定注册表访问权限,详细信息请参考:
http://support.microsoft.com/suppor...s/Q153/1/83.asp
7.关机时清除掉页面文件
页面文件也就是调度文件,是win2000用来存储没有装入内存的程序和数据文件部分的隐藏文件。一些第三方的程序可以把一些没有的加密的密码存在内存中,页面文件中也可能含有另外一些敏感的资料。 要在关机的时候清楚页面文件,可以编辑注册表HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management把ClearPageFileAtShutdown的值设置成1。
8.禁止从软盘和CD Rom启动系统
一些第三方的工具能通过引导系统来绕过原有的安全机制。如果你的服务器对安全要求非常高,可以考虑使用可移动软盘和光驱。把机箱锁起来扔不失为一个好方法。
9.考虑使用智能卡来代替密码
对于密码,总是使安全管理员进退两难,容易受到 10phtcrack 等工具的攻击,如果密码太复杂,用户把为了记住密码,会把密码到处乱写。如果条件允许,用智能卡来代替复杂的密码是一个很好的解决方法。
10.考虑使用IPSec
正如其名字的含义,IPSec 提供 IP 数据包的安全性。IPSec 提供身份验证、完整性和可选择的机密性。发送方计算机在传输之前加密数据,而接收方计算机在收到数据之后解密数据。利用IPSec可以使得系统的安全性能大大增强
在网络应用越来越广泛的今天,一个重要的问题就是有关计算机通信的安全性问题。作为网络系统管理员,一项基本职责就是保证数据在网络传输中,不能被未经授权的人访问、查看或修改,在这中间,同时要保证数据能加密传输。怎样做到这一点呢?
在Windows 2000网络中,我们可以通过Internet Protocol Security(IPSEC—Internet协议安全性)来保护网络的安全。IPSEC的工作原理是这样的:在进行数据交换之前,先相
互验证对方的计算机的身份。验证身份通过之后,在这两台计算机之间建立一种安全协作关系,并且在进行数据传输之前将数据进行加密。通过这三个步骤,可以保证网络的通信安全,即使数据中途被截获,因为截获者不知道加密的密钥也就无从了解数据的内容。
Windows 2000操作系统都支持IPSEC,Windows 2000以前的版本,如Win 98与Win NT不支持IPSEC。在Win 2000的网络中,不管是局域网、广域网,都可以使用IPSEC来保证网络的安全。下面我们简述一下,怎样在Win 2000的网络之中应用IPSEC。
启用IPSEC策略
在Win 2000的计算机中,点击“开始”→“运行”,输入“MMC”,按确定;出现Windows的管理控制台界面,按“CTRL+M”键,在出现的对话框中点“添加”,在“添加独立的管理单元”对话框中,选中“IP安全策略管理”,点添加(如图1);在“选择计算机”对话框中,选择“本地计算机”,表示管理现在正在使用的计算机,依次用鼠标按“完成”、“关闭”、“确定”按钮。
图1
用鼠标点击“IP安全策略,在本地机器”,在右边的窗口中有三种预定的策略:
1)安全服务器(必须安全性):如果采用这条策略,表示与这台计算机进行通信的计算机必须采用IPSEC安全策略,如果对方计算机没有采用安全策略,将不能与本机进行通信;
2)服务器(请求安全设置):如果采用这条策略,表示这台计算机与其他计算机进行通信时,首先要求进行安全通信,如果对方计算机不支持安全通信,这台计算机也可以与对方计算机进行通信,但这一通信是不可靠的;
3)客户机(只用于响应):如果采用这种策略,只有当对方计算机要求进行安全通信时,本机才会应用IPSEC安全策略,如果对方计算机没有要求,则采用正常方法进行通信,这一策略是最不安全的设置。
我们可以这样设置,如果网络中所有的计算机都运行Win 2000,则将Win 2000的IPSEC安全策略设置为“安全服务器”级,这样,可以保证网络中所有的数据传输都是安全的;如果网络中既有Win 2000,也有Win 98/NT,那么可以将Win 2000的IPSED安全策略设置为“服务器”级,这样,在Win 2000之间进行通信时是安全的,与Win 2000之外的计算机也可以进行通信。
策略选择:我们用鼠标右键点击选中的策略,在出现的弹出式选单中选择“指派”就启用了IPSEC安全策略,指派策略之后将立即生效,不需重新启动计算机。
身份验证
在IPSEC中,有三种身份验证方法:1)Win 2000默认值,只有在一个Win 2000的域中才可以采用这种身份验证方法,如果你的网络有不同的域,则不能采用这种方法。2)使用由证书颁发机构(CA)颁发的证书,当网络中的计算机都从同一个CA申请证书进行身份验证时,可以采用这种办法。这种方法主要用在广域网中进行通信并且通信双方的计算机都从同一个证书颁发机构申请证书时。3)预共享密钥,采用这种方法时,通信双方用一个事先认定的字符串来进行身份验证。在广域网中、在不同的域中进行通信,都可以采用这种方法。
选择方法:用鼠标双击一个选中的IPSEC策略,在“IP安全规则”对话框中,选中“所有IP通信”,用鼠标点击“编辑”,在“编辑规则属性”对话框中,选择“身份验证方法”选项栏,点击“编辑”,就可以根据需要选择相应的身份验证方法(如图2)。
为传输数据选择加密算法
有三种加密算法可供选择:1)56位DES加密算法,采用56位二进制,采用DES算法对传输的数据进行加密;2)40位DES加密算法;3)3DES,这是最安全的方法,采用3个56位二进制的密钥,对每一个数据块处理3次,每一次都利用特有的密钥。
图2
为身份验证选择加密算法:在身份验证的时候要传输身份验证密钥,为了保证密钥的安全,可以选用两种加密算法加密传输的密钥,一种是SHA加密算法,采用160个二进制位,另一种是MD5加密算法,采用128个二进制位。
当对安全性要求不是很高时,可以选用MD5身份验证加密技术和40位DES数据加密算法,这种选择占用处理器资源有限。
选择方法:用鼠标双击一个选中的IPSEC策略,在“IP安全规则”对话框中,选择“常规”选项卡,点击“高级”、“方法”、“添加”按钮,从出现的“IKE安全算法”对话框中根据需要选择相应的加密算法(如图3)。
图3
模式选择
如果将IPSEC用在局域网中,则应该选择“传送模式”;如果将IPSEC用于广域网中,则应该选择“隧道模式”,并且指出对方计算机的IP地址。IPSEC的默认模式是“传送模式”,要改为“隧道模式”,需要用鼠标双击一个选中的IPSEC策略,在“IP安全规则”对话框中,选中“所有IP通信”,用鼠标点击“编辑”,在“编辑规则属性”对话框中,选择“隧道设置”选项栏,选中“隧道终点由此IP地址指定”,在IP地址处输入远端计算机的IP地址(如图4)。
图4
恢复IPSEC的默认设置
如果多次更改IPSEC的安全策略,并且策略设置有误时,可以恢复默认的IPSEC安全设置。方法是:鼠标右键点击“IP安全策略,在本地机器”,选择“所有任务”→“还原默认策略”即可。
计算机网络通信的安全问题已经被越来越多的人们所注意,本文介绍了IPSEC,让我们尽可能利用Win 2000所提供的一些新特性来提高网络数据的安全。
目前,WIN2000 SERVER是比较流行的服务器操作系统之一,但是要想安全的配置微软的这个操作系统,却不是一件容易的事。本文试图对win2000 SERVER的安全配置进行初步的探讨。
2.IIS:IIS是微软的组件中漏洞最多的一个,平均两三个月就要出一个漏洞,而微软的IIS默认安装又实在不敢恭维,所以IIS的配置是我们的重点,现在大家跟着我一起来:
首先,把C盘那个什么Inetpub目录彻底删掉,在D盘建一个Inetpub(要是你不放心用默认目录名也可以改一个名字,但是自己要记得)在IIS管理器中将主目录指向D:Inetpub;
其次,那个IIS安装时默认的什么scripts等虚拟目录一概删除(罪恶之源呀,忘了http://www.target.com/scripts/..%c1%1c../winnt/system32/cmd.exe了?我们虽然已经把Inetpub从系统盘挪出来了,但是还是小心为上),如果你需要什么权限的目录可以自己慢慢建,需要什么权限开什么。(特别注意写权限和执行程序的权限,没有绝对的必要千万不要给)
第三,应用程序配置:在IIS管理器中删除必须之外的任何无用映射,必须指的是ASP, ASA和其他你确实需要用到的文件类型,例如你用到stml等(使用server side include),实际上90%的主机有了上面两个映射就够了,其余的映射几乎每个都有一个凄惨的故事:htw, htr, idq, ida……想知道这些故事?去查以前的漏洞列表吧。什么?找不到在哪里删?在IIS管理器中右击主机->属性->WWW服务编辑->主目录配置->应用程序映射,然后就开始一个个删吧(里面没有全选的,嘿嘿)。接着在刚刚那个窗口的应用程序调试书签内将脚本错误消息改为发送文本(除非你想ASP出错的时候用户知道你的程序/网络/数据库结构)错误文本写什么?随便你喜欢,自己看着办。点击确定退出时别忘了让虚拟站点继承你设定的属性。
为了对付日益增多的cgi漏洞扫描器,还有一个小技巧可以参考,在IIS中将HTTP404 Object Not Found出错页面通过URL重定向到一个定制HTM文件,可以让目前绝大多数CGI漏洞扫描器失灵。其实原因很简单,大多数CGI扫描器在编写时为了方便,都是通过查看返回页面的HTTP代码来判断漏洞是否存在的,例如,著名的IDQ漏洞一般都是通过取1.idq来检验,如果返回HTTP200,就认为是有这个漏洞,反之如果返回HTTP404就认为没有,如果你通过URL将HTTP404出错信息重定向到HTTP404.htm文件,那么所有的扫描无论存不存在漏洞都会返回HTTP200,90%的CGI扫描器会认为你什么漏洞都有,结果反而掩盖了你真正的漏洞,让入侵者茫然无处下手(武侠小说中常说全身漏洞反而无懈可击,难道说的就是这个境界?)不过从个人角度来说,我还是认为扎扎实实做好安全设置比这样的小技巧重要的多。
最后,为了保险起见,你可以使用IIS的备份功能,将刚刚的设定全部备份下来,这样就可以随时恢复IIS的安全配置。还有,如果你怕IIS负荷过高导致服务器满负荷死机,也可以在性能中打开CPU限制,例如将IIS的最大CPU使用率限制在70%。
3.账号安全:
Win2000的账号安全是另一个重点,首先,Win2000的默认安装允许任何用户通过空用户得到系统所有账号/共享列表,这个本来是为了方便局域网用户共享文件的,但是一个远程用户也可以得到你的用户列表并使用暴力法破解用户密码。很多朋友都知道可以通过更改注册表Local_MachineSystemCurrentControlSetControlLSA-RestrictAnonymous = 1来禁止139空连接,实际上win2000的本地安全策略(如果是域服务器就是在域服务器安全和域安全策略中)就有这样的选项RestrictAnonymous(匿名连接的额外限制),这个选项有三个值:
0:None. Rely on default permissions(无,取决于默认的权限)
1:Do not allow enumeration of SAM accounts and shares(不允许枚举SAM帐号和共享)
2:No access without explicit anonymous permissions(没有显式匿名权限就不允许访问)
0这个值是系统默认的,什么限制都没有,远程用户可以知道你机器上所有的账号、组信息、共享目录、网络传输列表(NetServerTransportEnum等等,对服务器来说这样的设置非常危险。
1这个值是只允许非NULL用户存取SAM账号信息和共享信息。
2这个值是在win2000中才支持的,需要注意的是,如果你一旦使用了这个值,你的共享估计就全部完蛋了,所以我推荐你还是设为1比较好。
好了,入侵者现在没有办法拿到我们的用户列表,我们的账户安全了……慢着,至少还有一个账户是可以跑密码的,这就是系统内建的administrator,怎么办?我改改改,在计算机管理->用户账号中右击administrator然后改名,改成什么随便你,只要能记得就行了。
不对不对,我都已经改了用户名了,怎么还是有人跑我管理员的密码?幸好我的密码够长,但是这也不是办法呀?嗯,那肯定是在本地或者Terminal Service的登录界面看到的,好吧,我们再来把HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionwinlogon项中的Don’t Display Last User Name串数据改成1,这样系统不会自动显示上次的登录用户名。
将服务器注册表HKEY_LOCAL_ MACHINESOFTWAREMicrosoft WindowsNTCurrentVersionWinlogon项中的Don‘t Display Last User Name串数据修改为1,隐藏上次登陆控制台的用户名。(哇,世界清静了)
5.安全日志:我遇到过这样的情况,一台主机被别人入侵了,系统管理员请我去追查凶手,我登录进去一看:安全日志是空的,倒,请记住:Win2000的默认安装是不开任何安全审核的!那么请你到本地安全策略->审核策略中打开相应的审核,推荐的审核是:
账户管理 成功 失败
登录事件 成功 失败
对象访问 失败
策略更改 成功 失败
特权使用 失败
系统事件 成功 失败
目录服务访问 失败
账户登录事件 成功 失败
审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义。
与之相关的是:
在账户策略->密码策略中设定:
密码复杂性要求 启用
密码长度最小值 6位
强制密码历史 5次
最长存留期 30天
在账户策略->账户锁定策略中设定:
账户锁定 3次错误登录
锁定时间 20分钟
复位锁定计数 20分钟
同样,Terminal Service的安全日志默认也是不开的,我们可以在Terminal Service Configration(远程服务配置)-权限-高级中配置安全审核,一般来说只要记录登录、注销事件就可以了。
7.目录和文件权限:
为了控制好服务器上用户的权限,同时也为了预防以后可能的入侵和溢出,我们还必须非常小心地设置目录和文件的访问权限,NT的访问权限分为:读取、写入、读取及执行、修改、列目录、完全控制。在默认的情况下,大多数的文件夹对所有用户(Everyone这个组)是完全敞开的(Full Control),你需要根据应用的需要进行权限重设。
在进行权限控制时,请记住以下几个原则:
1>限是累计的:如果一个用户同时属于两个组,那么他就有了这两个组所允许的所有权限;
2>拒绝的权限要比允许的权限高(拒绝策略会先执行)如果一个用户属于一个被拒绝访问某个资源的组,那么不管其他的权限设置给他开放了多少权限,他也一定不能访问这个资源。所以请非常小心地使用拒绝,任何一个不当的拒绝都有可能造成系统无法正常运行;
3>文件权限比文件夹权限高(这个不用解释了吧?)
4>利用用户组来进行权限控制是一个成熟的系统管理员必须具有的优良习惯之一;
5>仅给用户真正需要的权限,权限的最小化原则是安全的重要保障;
8.预防DoS:
在注册表HKLMSYSTEMCurrentControlSetServicesTcpipParameters中更改以下值可以帮助你防御一定强度的DoS攻击
SynAttackProtect REG_DWORD 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
ICMP攻击:ICMP的风暴攻击和碎片攻击也是NT主机比较头疼的攻击方法,其实应付的方法也很简单,win2000自带一个Routing & Remote Access工具,这个工具初具路由器的雏形(微软真是的,什么都要做?听说最近又要做防火墙了)在这个工具中,我们可以轻易的定义输入输出包过滤器,例如,设定输入ICMP代码255丢弃就表示丢弃所有的外来ICMP报文(让你炸?我丢、丢、丢)
3.开启用户策略。其中有用户锁定阀值设置,将它设置为多少才合适呢?用户在登录时,Windows会采用加密协议加密用户的用户名和密码。在域环境中,如果只是单纯的系统(即什么软件都不装),用户进行登录时,Windows会尝试用Kerbos协议验证,不成功则会再用Ntlm验证,此时的验证的方式有两种;如果该账户同时又是Outlook的用户,验证的方式将有6种之多,也就是说用户在登录时如果密码输入错误,一次登录就要浪费掉6次账户锁定值。因此,微软技术支持中心的工程师建议将这个锁定值设置为13,这样才可以实现错误输入密码3次再锁定账户的目的。
2005-10-11 04:18 楼主
◥◣龍飛◥◣
实习站务
精华 0
发帖 640
威望 202
黑币 6022
状态 离线
贡献值 4 点
注册时间 2005-09-20
最后登陆 2005-10-23 现在有很多人都认为微软的东西漏洞太多,,微软的系统安全性极差,不过通过我在做各种系统的安全配置的过程中我总结出了一些经验,特拿来与各位共享,其实各种系统都有很多漏洞,只不过微软的东西用的人最多,普遍又是水平不是很高,不会作各种安全设置,所以才会让人有现在网上的NT/2000服务性安全性都很差的感觉,其实NT/2000的服务器如果真的做好了各项安全设置之后,其安全性绝对不会比nix系统差,如果你按照下面我说的做,我可以保证你95%以上的安全性,100%我可不敢保证,当然你必须要及时打上微软的各种大大小小的补丁,呵呵,是谁,谁拿香蕉皮扔我,站出来!!呵呵,废话少说,转入正题。
1.初级篇:NT/2000系统本身的定制安装与相关设置
用NT(2000)建立的WEB站点在所有的网站中占了很大一部分比例,主要因为其易用性与易管理性,使该公司不必再投入大量的金钱在服务器的管理上,这一点优于nix系统,不必请很专业的管理员,不必支付一份可以节省的高薪,呵呵,当然nix的管理员也不会失业,因为其开放源码和windows系统无与伦比的速度,使得现在几乎所有的大型服务器全部采用nix系统。但对于中小型企业来说windows已经足够,但NT的安全问题也一直比较突出,使得一些每个基于NT的网站都有一种如履薄冰的感觉,在此我给出一份安全解决方案,算是为中国的网络安全事业做出一份贡献吧 (说明:本方案主要是针对建立Web站点的NT、2000服务器安全,对于局域网内的服务器并不合适。)
一、 定制自己的NT/2000 SERVER
1. 版本的选择:
WIN2000有各种语言的版本,对于我们来说,可以选择英文版或简体中文版,我强烈建议:在语言不成为障碍的情况下,请一定使用英文版。要知道,微软的产品是以Bug &Patch而著称的,中文版的Bug远远多于英文版,而补丁一般还会迟至少半个月(也就是说一般微软公布了漏洞后你的机子还会有半个月处于无保护状况)
2. 组件的定制:
win2000在默认情况下会安装一些常用的组件,但是正是这个默认安装是极度危险的你应该确切的知道你需要哪些服务,而且仅仅安装你确实需要的服务,根据安全原则,最少的服务+最小的权限=最大的安全。典型的WEB服务器需要的最小组件选择是:只安装IIS的Com Files,IIS Snap-In,WWW Server组件。如果你确实需要安装其他组件,请慎重,特别是:Indexing Service, FrontPage 2000 Server Extensions, Internet Service Manager (HTML)这几个危险服务。
二、 正确安装NT/2000 SERVER
不论是NT还是2000,硬盘分区均为NTFS分区;
说明:
(1) NTFS比FAT分区多了安全控制功能,可以对不同的文件夹设置不同的访问权限,安全性增强。
(2) 建议最好一次性全部安装成NTFS分区,而不要先安装成FAT分区再转化为NTFS分区,这样做在安装了SP5和SP6的情况下会导致转化不成功,甚至系统崩溃。
(3) 安装NTFS分区有一个潜在的危险,就是目前大多数反病毒软件没有提供对软盘启动后NTFS分区病毒的查杀,这样一旦系统中了恶性病毒而导致系统不能正常启动,后果就比较严重,因此及建议平时做好防病毒工作。
(4)分区和逻辑盘的分配
有一些朋友为了省事,将硬盘仅仅分为一个逻辑盘,所有的软件都装在C驱上,这是很不好的,建议最少建立两个分区,一个系统分区,一个应用程序分区,这是因为,微软的IIS经常会有泄漏源码/溢出的漏洞,如果把系统和IIS放在同一个驱动器会导致系统文件的泄漏甚至入侵者远程获取ADMIN。推荐的安全配置是建立三个逻辑驱动器,第一个大于2G,用来装系统和重要的日志文件,第二个放IIS,第三个放FTP,这样无论IIS或FTP出了安全漏洞都不会直接影响到系统目录和系统文件。要知道,IIS和FTP是对外服务的,比较容易出问题。而把IIS和FTP分开主要是为了防止入侵者上传程序并从IIS中运行。
(5)安装顺序的选择:
win2000在安装中有几个顺序是一定要注意的: 首先,何时接入网络:Win2000在安装时有一个漏洞,在你输入Administrator密码后,系统就建立了ADMIN$的共享,但是并没有用你刚刚输入的密码来保护它,这种情况一直持续到你再次启动后,在此期间,任何人都可以通过ADMIN$进入你的机器;同时,只要安装一完成,各种服务就会自动运行,而这时的服务器是满身漏洞,非常容易进入的,因此,在完全安装并配置好win2000 SERVER之前,一定不要把主机接入网络。 其次,补丁的安装:补丁的安装应该在所有应用程序安装完之后,因为补丁程序往往要替换/修改某些系统文件,如果先安装补丁再安装应用程序有可能导致补丁不能起到应有的效果,例如:IIS的HotFix就要求每次更改IIS的配置都需要安装
三、 安全配置NT/2000 SERVER
即使正确的安装了WIN2000 SERVER,系统还是有很多的漏洞,还需要进一步进行细致地配置。
1.端口:
端口是计算机和外部网络相连的逻辑接口,也是计算机的第一道屏障,端口配置正确与否直接影响到主机的安全,一般来说,仅打开你需要使用的端口会比较安全,配置的方法是在网卡属性-TCP/IP-高级-选项-TCP/IP筛选中启用TCP/IP筛选,不过对于win2000的端口过滤来说,有一个不好的特性:只能规定开哪些端口,不能规定关闭哪些端口,这样对于需要开大量端口的用户就比较痛苦。
2.IIS:
IIS是微软的组件中漏洞最多的一个,平均两三个月就要出一个漏洞,而微软的IIS默认安装又实在不敢恭维,所以IIS的配置是我们的重点,现在大家跟着我一起来:首先,把C盘那个什么Inetpub目录彻底删掉,在D盘建一个Inetpub(要是你不放心用默认目录名也可以改一个名字,但是自己要记得)在IIS管理器中将主目录指向D:\Inetpub;其次,那个IIS安装时默认的什么scripts等虚拟目录一概删除,如果你需要什么权限的目录可以自己慢慢建,需要什么权限开什么。(特别注意写权限和执行程序的权限,没有绝对的必要千万不要给)
第三,应用程序配置:在IIS管理器中删除必须之外的任何无用映射,必须指的是ASP,ASA和其他你确实需要用到的文件类型,例如你用到stml等(使用server side include),实际上90%的主机有了上面两个映射就够了,其余的映射几乎每个都有一个凄惨的故事:htw, htr, idq, ida……想知道这些故事?去查以前的漏洞列表吧。在IIS管理器中右击主机->属性->WWW服务 编辑->主目录配置->应用程序映射,然后就开始一个个删吧(里面没有全选的,嘿嘿)。
接着在刚刚那个窗口的应用程序调试书签内将脚本错误消息改为发送文本(除非你想ASP出错的时候用户知道你的程序/网络/数据库结构)错误文本写什么?随便你喜欢,自己看着办。点击确定退出时别忘了让虚拟站点继承你设定的属性。安装新的Service Pack后,IIS的应用程序映射应重新设置。(说明:安装新的Service Pack后,某些应用程序映射又会出现,导致出现安全漏洞。这是管理员较易忽视的一点。)
为了对付日益增多的cgi漏洞扫描器,还有一个小技巧可以参考,在IIS中将HTTP404 Object Not Found出错页面通过URL重定向到一个定制HTM文件,可以让目前绝大多数CGI漏洞扫描器失灵。其实原因很简单,大多数CGI扫描器在编写时为了方便,都是通过查看返回页面的HTTP代码来判断漏洞是否存在的,例如,著名的IDQ漏洞一般都是通过取1.idq来检验,如果返回HTTP200,就认为是有这个漏洞,反之如果返回HTTP404就认为没有,如果你通过URL将HTTP404出错信息重定向到HTTP404.htm文件,那么所有的扫描无论存不存在漏洞都会返回HTTP200,90%的CGI扫描器会认为你什么漏洞都有,结果反而掩盖了你真正的漏洞,让入侵者茫然无处下手,不过从个人角度来说,我还是认为扎扎实实做好安全设置比这样的小技巧重要的多。
最后,为了保险起见,你可以使用IIS的备份功能,将刚刚的设定全部备份下来,这样就可以随时恢复IIS的安全配置。还有,如果你怕IIS负荷过高导致服务器满负荷死机,也可以在性能中打开CPU限制,例如将IIS的最大CPU使用率限制在70%。
3.帐号策略:
(1)帐号尽可能少,且尽可能少用来登录;
说明:网站帐号一般只用来做系统维护,多余的帐号一个也不要,因为多一个帐号就会多一份被攻破的危险。
(2)除过Administrator外,有必要再增加一个属于管理员组的帐号;
说明:两个管理员组的帐号,一方面防止管理员一旦忘记一个帐号的口令还 有一个备用帐号;另方面,一旦黑客攻破一个帐号并更改口令,我们还有机会重新在短期内取得控制权。
(3)所有帐号权限需严格控制,轻易不要给帐号以特殊权限;
(4)将Administrator重命名,改为一个不易猜的名字。其他一般帐号也应尊循这一原则。
说明:这样可以为黑客攻击增加一层障碍。
(5)将Guest帐号禁用,同时重命名为一个复杂的名字,增加口令,并将它从Guest组删掉;
说明:有的黑客工具正是利用了guest 的弱点,可以将帐号从一般用户提升到管理员组。
(6)给所有用户帐号一个复杂的口令(系统帐号出外),长度最少在8位以上, 且必须同时包含字母、数字、特殊字符。同时不要使用大家熟悉的单词(如microsoft)、熟悉的键盘顺序(如qwert)、熟悉的数字(如2000)等。
说明:口令是黑客攻击的重点,口令一旦被突破也就无任何系统安全可言了,而这往往是不少网管所忽视的地方,据我们的测试,仅字母加数字的5位口令在几分钟内就会被攻破,而所推荐的方案则要安全的多。
(7)口令必须定期更改(建议至少两周该一次),且最好记在心里,除此以外不要在任何地方做记录;另外,如果在日志审核中发现某个帐号被连续尝试,则必须立刻更改此帐号(包括用户名和口令);
(8)在帐号属性中设立锁定次数,比如改帐号失败登录次数超过5次即锁定改帐号。这样可以防止某些大规模的登录尝试,同时也使管理员对该帐号提高警惕。
4.安全日志:
Win2000的默认安装是不开任何安全审核的!
那么请你到本地安全策略->审核策略中打开相应的审核,推荐的审核是:
账户管理 成功 失败
登录事件 成功 失败
对象访问 失败
策略更改 成功 失败
特权使用 失败
系统事件 成功 失败
目录服务访问 失败
账户登录事件 成功 失败
审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义。 与之相关的是:
在账户策略->密码策略中设定:
密码复杂性要求 启用
密码长度最小值 6位
强制密码历史 5次
最长存留期 30天
在账户策略->账户锁定策略中设定:
账户锁定 3次错误登录
锁定时间 20分钟
复位锁定计数 20分钟
同样,Terminal Service的安全日志默认也是不开的,我们可以在Terminal Service Configration(远程服务配置)-权限-高级中配置安全审核,一般来说只要记录登录、注销事件就可以了。
5.目录和文件权限:
为了控制好服务器上用户的权限,同时也为了预防以后可能的入侵和溢出,我们还必须非常小心地设置目录和文件的访问权限,NT的访问权限分为:读取、写入、读取及执行、修改、列目录、完全控制。在默认的情况下,大多数的文件夹对所有用户(Everyone这个组)是完全敞开的(Full Control),你需要根据应用的需要进行权限重设。
在进行权限控制时,请记住以下几个原则:
1>限是累计的:如果一个用户同时属于两个组,那么他就有了这两个组所允许的所有权限;
2>拒绝的权限要比允许的权限高(拒绝策略会先执行)如果一个用户属于一个被拒绝访问某个资源的组,那么不管其他的权限设置给他开放了多少权限,他也一定不能访问这个资源。所以请非常小心地使用拒绝,任何一个不当的拒绝都有可能造成系统无法正常运行;
3>文件权限比文件夹权限高
4>利用用户组来进行权限控制是一个成熟的系统管理员必须具有的优良习惯之一;
5>仅给用户真正需要的权限,权限的最小化原则是安全的重要保障;
6.只安装一种操作系统;
说明:安装两种以上操作系统,会给黑客以可乘之机,利用攻击使系统重启到另外一个没有安全设置的操作系统(或者他熟悉的操作系统),进而进行破坏。
7.安装成独立的域控制器(Stand Alone),选择工作组成员,不选择域;
说明:主域控制器(PDC)是局域网中队多台联网机器管理的一种方式,用于网站服务器包含着安全隐患,使黑客有可能利用域方式的漏洞攻击站点服务器。
8.将操作系统文件所在分区与WEB数据包括其他应用程序所在的分区分开,并在安装时最好不要使用系统默认的目录,如将\WINNT改为其他目录;
说明:黑客有可能通过WEB站点的漏洞得到操作系统对操作系统某些程序的执行权限,从而造成更大的破坏。同时如果采用IIS的话你应该在其设置中删除掉所有的无用的映射,同时不要安装索引服务,远程站点管理与服务器扩展最好也不要要,然后删掉默认路径下的www,整个删,不要手软,然后再硬盘的另一个硬盘建立存放你网站的文件夹,同时一定记得打开w3c日志纪录,切记(不过本人建议采用apache 1.3.24)
系统安装过程中一定本着最小服务原则,无用的服务一概不选择,达到系统的最小安装,多一个服务,多一份风险,呵呵,所以无用组件千万不要安装!
9.关于补丁:在NT下,如果安装了补丁程序,以后如果要从NT光盘上安装新的Windows程序,都要重新安装一次补丁程序, 2000下不需要这样做。
说明:
(1) 最新的补丁程序,表示系统以前有重大漏洞,非补不可了,对于局域网内服务器可以不是最新的,但站点必须安装最新补丁,否则黑客可能会利用低版本补丁的漏洞对系统造成威胁。这是一部分管理员较易忽视的一点;
(2) 安装NT的SP5、SP6有一个潜在威胁,就是一旦系统崩溃重装NT时,系统将不会认NTFS分区,原因是微软在这两个补丁中对NTFS做了改进。只能通过Windows 2000安装过程中认NTFS,这样会造成很多麻烦,建议同时做好数据备份工作。
(3) 安装Service Pack前应先在测试机器上安装一次,以防因为例外原因导致机器死机,同时做好数据备份。
尽量不安装与WEB站点服务无关的软件;
说明:其他应用软件有可能存在黑客熟知的安全漏洞。
10.解除NetBios与TCP/IP协议的绑定
说明:NetBois在局域网内是不可缺少的功能,在网站服务器上却成了黑客扫描工具的首选目标。方法:NT:控制面版——网络——绑定——NetBios接口——禁用 2000:控制面版——网络和拨号连接——本地网络——属性——TCP/IP——属性——高级——WINS——禁用TCP/IP上的NETBIOS <!--IBF.ATTACHMENT_275-->