《服务器安全维护.docx》由会员分享,可在线阅读,更多相关《服务器安全维护.docx(8页珍藏版)》请在三一办公上搜索。
1、服务器安全维护一 IIS优化1、禁止多余的Web服务扩展 IIS6.0支持多种服务扩展,有些管理员偷懒或者不求甚解,担心Web运行中出现解析错误,索性在建站时开启了所有的Web服务扩展。殊不 知,这其中的有些扩展比如“所有未知CGI扩展”、“在服务器端的包含文件”等是Web运行中根本用不到的,况且还占用IIS资源影响性能拖垮Web,甚 至某些扩展存在漏洞容易被攻击者利用。因此,科学的原则是,用到什么扩展就启用什么扩展。如果企业站点是静态页面,那什么扩展都不要开启。不过现在的企业站点都是交互的动态页面比如asp、php、jsp等。如果是asp页面,那只 需开启“Active Server Pag
2、es”即可。对于php、jsp等动态页面IIS6.0默认是不支持的需要进行安装相应组件实现对这些扩展的支持。不过,此时用不到的扩展完全可以 禁用。禁止Web服务扩展的操作非常简单,打开“IIS管理器”,在左窗格中点击“Web服务扩展”,在右侧选择相应的扩展,然后点击“禁用”即可。(图1)2、删除不必要的IIS扩展名映射IIS默认支持.asp、.cdx等8种扩展名的映射,这其中除了.asp之外其他的扩展几乎用不到。这些用不着的扩展会加重web服务器的负担,而且带来一定的安全隐患。比如.asa,.cer等扩展名,就可以被攻击者利用来获得webshell。因为一般的asp系统都会限制asp文件的上传
3、,但如果没有限制.asa或者.cer等扩展名,攻击者就可以更改文件后缀突破上传限制,运行.asa或者.cer的文件获得webshell。(图 2)删除IIS扩展名的操作是:打开IIS管理器,右键单击“默认Web站点”选择“属性”,点击“主目录”选项卡,然后点击“配置”打开应用程序 窗口,最后根据自己的需要选择不必要的应用程序映射比如.shtml, .shtm, .stm等,然后点击“删除”即可。(图3)服务器安全维护 (二)磁盘权限设置很简单,大体来说就几步:第一, 先创建一个用户组,以后任何的站点的用户都建在这个組里,然后配置这个组在各个分区没有权限或完全拒绝(直接在根磁盘配置就能够了,不要
4、替换任何子目录的权限)。然后再配置各个IIS用户在各自的文档夹里的权限。第二,改名或卸载不安全组件 第三,把system32下面的一些常用网络命令配置成只有 system administrators 能够访问 其他用户全部删除,如net.exe tftp.exe at.exe .网上应该有很多相关介绍了第四,使用一般用户启动mssql或mysql数据库假如出现asp数据库连不上的问题,应该是c:windowstemp c:WINDOWSIIS Temporary Compressed Files 文档夹没有给虚拟用户组权限,给他可读可写。这样配置出来,不支持, 要支持的话 c:WINDOWS
5、Microsoft.NETFrameworkv1.1.4322这个目录也要给虚拟用户组可运行权限,web文档夹要加上iis_wpg可读可写,但开启会带来新的安全问题,假如无需的话不建议开启。 ASP的安全设置:设置过权限和服务之后,防范asp木马还需要做以下工作,在cmd窗口运行以下命令:regsvr32/u C:WINNTSystem32wshom.ocxdel C:WINNTSystem32wshom.ocxregsvr32/u C:WINNTsystem32shell32.dlldel C:WINNTsystem32shell32.dll即可将WScript.Shell, Shell.a
6、pplication, WScript.Network组件卸载,可有效防止asp木马通过wscript或shell.application执行命令以及使用木马查看一些系统敏感信息。另法:可取消以上文件的users用户的权限,重新启动IIS即可生效。但不推荐该方法。另外,对于FSO由于用户程序需要使用,服务器上可以不注销掉该组件,这里只提一下FSO的防范,但并不需要在自动开通空间的虚拟商服务器上使用,只适合于手工开通的站点。可以针对需要FSO和不需要FSO的站点设置两个组,对于需要FSO的用户组给予c: winntsystem32scrrun.dll文件的执行权限,不需要的不给权限。重新启动服务
7、器即可生效。对于这样的设置结合上面的权限设置,海阳木马已经在这里失去了作用.服务器安全维护 (三)MySQL安全设置:如果服务器上启用MySQL数据库,MySQL数据库需要注意的安全设置为:删除mysql中的所有默认用户,只保留本地root帐户,为root用户加上一个复杂的密码。赋予普通用户 updatedeletealertcreatedrop权限的时候,并限定到特定的数据库,尤其要避免普通客户拥有对mysql数据库操作的权限。检查 mysql.user表,取消不必要用户的shutdown_priv,reload_priv,process_priv和File_priv权限,这些权限可能泄漏更
8、多的服务器信息包括非mysql的其它信息出去。可以为mysql设置一个启动用户,该用户只对mysql目录有权限。设置安装目录的data数据库的权限(此目录存放了mysql数据库的数据信息)。对于mysql安装目录给users加上读取、列目录和执行权限。Serv-u安全问题:安装程序尽量采用最新版本,避免采用默认安装目录,设置好serv-u目录所在的权限,设置一个复杂的管理员密码。修改serv-u的 banner信息,设置被动模式端口范围(40014003)在本地服务器中设置中做好相关安全设置:包括检查匿名密码,禁用反超时调度,拦截“FTP bounce”攻击和FXP,对于在30秒内连接超过3次
9、的用户拦截10分钟。域中的设置为:要求复杂密码,目录只使用小写字母,高级中设置取消允许使用 MDTM命令更改文件的日期。更改serv-u的启动用户:在系统中新建一个用户,设置一个复杂点的密码,不属于任何组。将servu的安装目录给予该用户完全控制权限。建立一个FTP根目录,需要给予这个用户该目录完全控制权限,因为所有的ftp用户上传,删除,更改文件都是继承了该用户的权限,否则无法操作文件。另外需要给该目录以上的上级目录给该用户的读取权限,否则会在连接的时候出现530 Not logged in, home directory does not exist。比如在测试的时候ftp根目录为d:so
10、ft,必须给d盘该用户的读取权限,为了安全取消d盘其他文件夹的继承权限。而一般的使用默认的 system启动就没有这些问题,因为system一般都拥有这些权限的。MSSQL数据库服务器的安全设置对于专用的MSSQL数据库服务器,对外只开放1433和5631端口。对于MSSQL首先需要为sa设置一个强壮的密码,使用混合身份验证,加强数据库日志的记录,审核数据库登陆事件的”成功和失败”.删除一些不需要的和危险的OLE自动存储过程(会造成企业管理器中部分功能不能使用),这些过程包括如下:Sp_OACreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProper
11、tySp_OAMethod Sp_OASetProperty Sp_OAStop去掉不需要的注册表访问过程,包括有:Xp_regaddmultistring Xp_regdeletekey Xp_regdeletevalueXp_regenumvalues Xp_regread Xp_regremovemultistringXp_regwrite去掉其他系统存储过程,如果认为还有威胁,当然要小心Drop这些过程,可以在测试机器上测试,保证正常的系统能完成工作,这些过程包括:xp_cmdshell xp_dirtree xp_dropwebtask sp_addsrvrolememberxp_m
12、akewebtask xp_runwebtask xp_subdirs sp_addloginsp_addextendedproc在实例属性中选择TCP/IP协议的属性。选择隐藏 SQL Server 实例可防止对1434端口的探测,可修改默认使用的1433端口。除去数据库的guest账户把未经认可的使用者据之在外。 例外情况是master和 tempdb 数据库,因为对他们guest帐户是必需的。另外注意设置好各个数据库用户的权限,对于这些用户只给予所在数据库的一些权限。在程序中不要用sa用户去连接任何数据库。网络上有建议大家使用协议加密的,千万不要这么做,否则你只能重装MSSQL了。服务器
13、安全维护 (四)入侵检测工作作为服务器的日常管理,入侵检测是一项非常重要的工作,在平常的检测过程中,主要包含日常的服务器安全例行检查和遭到入侵时的入侵检查,也就是分为在入侵进行时的安全检查和在入侵前后的安全检查。日常的安全检测日常安全检测主要针对系统的安全性,工作主要按照以下步骤进行:1查看服务器状态:打开进程管理器,查看服务器性能,观察CPU和内存使用状况。查看是否有CPU和内存占用过高等异常情况。2检查当前进程情况切换“任务管理器”到进程,查找有无可疑的应用程序或后台进程在运行。用进程管理器查看进程时里面会有一项taskmgr,这个是进程管理器自身的进程。如果正在运行windows更新会有
14、一项wuauclt.exe进程。通常的后门如果有进程的话,一般会取一个与系统进程类似的名称,如svch0st.exe,此时要仔细辨别通常迷惑手段是变字母o为数字0,变字母l为数字13检查系统帐号打开计算机管理,展开本地用户和组选项,查看组选项,查看administrators组是否添加有新帐号,检查是否有克隆帐号。4查看当前端口开放情况使用netstat -an,查看当前的端口连接情况,尤其是注意与外部连接着的端口情况,看是否有未经允许的端口与外界在通信。如有,立即关闭该端口并记录下该端口对应的程序并记录,将该程序转移到其他目录下存放以便后来分析。5检查系统服务运行services.msc,检
15、查处于已启动状态的服务,查看是否有新加的未知服务并确定服务的用途。对于不清楚的服务打开该服务的属性,查看该服务所对应的可执行文件是什么,如果确定该文件是系统内的正常使用的文件,可粗略放过。查看是否有其他正常开放服务依存在该服务上,如果有,可以粗略的放过。如果无法确定该执行文件是否是系统内正常文件并且没有其他正常开放服务依存在该服务上,可暂时停止掉该服务,然后测试下各种应用是否正常。对于一些后门由于采用了hook系统API技术,添加的服务项目在服务管理器中是无法看到的,这时需要打开注册表中的 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices项进行
16、查找,通过查看各服务的名称、对应的执行文件来确定是否是后门、木马程序等。6查看相关日志运行eventvwr.msc,粗略检查系统中的相关日志记录。在查看时在对应的日志记录上点右键选“属性”,在“筛选器”中设置一个日志筛选器,只选择错误、警告,查看日志的来源和具体描述信息。对于出现的错误如能在服务器常见故障排除中找到解决办法则依照该办法处理该问题,如果无解决办法则记录下该问题,详细记录下事件来源、ID号和具体描述信息,以便找到问题解决的办法。7检查系统文件主要检查系统盘的exe和dll文件,建议系统安装完毕之后用dir *.exe /s 1.txt将C盘所有的exe文件列表保存下来,然后每次检查
17、的时候再用该命令生成一份当时的列表,用fc比较两个文件,同样如此针对dll文件做相关检查。需要注意的是打补丁或者安装软件后重新生成一次原始列表。检查相关系统文件是否被替换或系统中是否被安装了木马后门等恶意程序。必要时可运行一次杀毒程序对系统盘进行一次扫描处理。8检查安全策略是否更改打开本地连接的属性,查看“常规”中是否只勾选了“TCP/IP协议”,打开“TCP/IP”协议设置,点“高级”=“选项”,查看 “IP安全机制”是否是设定的IP策略,查看“TCP/IP”筛选允许的端口有没有被更改。打开“管理工具”=“本地安全策略”,查看目前使用的IP安全策略是否发生更改。9检查目录权限重点查看系统目录
18、和重要的应用程序权限是否被更改。需要查看的目录有c:;c:winnt;C:windowssystem32;c:C:windowssystem32inetsrv;C:windowssystem32netsrvdata;c:documents and Settings;然后再检查serv-u安装目录,查看这些目录的权限是否做过变动。检查system32下的一些重要文件是否更改过权限,包括:cmd,net,ftp,tftp,cacls等文件。10检查启动项主要检查当前的开机自启动程序。可以使用msconfig.exe来检查开机自启动的程序。发现入侵时的应对措施对于即时发现的入侵事件,以下情况针对系统
19、已遭受到破坏情况下的处理,系统未遭受到破坏或暂时无法察觉到破坏先按照上述的检查步骤检查一遍后再酌情考虑以下措施。系统遭受到破坏后应立即采取以下措施:视情况严重决定处理的方式,是通过远程处理还是通过实地处理。如情况严重建议采用实地处理。如采用实地处理,在发现入侵的第一时间通知机房关闭服务器,待处理人员赶到机房时断开网线,再进入系统进行检查。如采用远程处理,如情况严重第一时间停止所有应用服务,更改IP策略为只允许远程管理端口进行连接然后重新启动服务器,重新启动之后再远程连接上去进行处理,重启前先用msconfig.exs检查开机自启动的程序。然后再进行安全检查。以下处理措施针对用户站点被入侵但未危及系统的情况,如果用户要求加强自己站点的安全性,可按如下方式加固用户站点的安全:站点根目录-只给administrator读取权限,权限继承下去。wwwroot -给web用户读取、写入权限。高级里面有删除子文件夹和文件权限database-给web用户读取、写入权限。高级里面没有删除子文件夹和文件权限如需要进一步修改,可针对用户站点的特性对于普通文件存放目录如html、js、图片文件夹只给读取权限,对asp等脚本文件给予上表中的权限。另外查看该用户站点对应的安全日志,找出漏洞原因,协助用户修补程序漏洞。