鸿 网 互 联 www.68idc.cn

十个细节做好服务器的入侵检测

来源:互联网 作者:佚名 时间:2015-06-02 23:56
服务器被攻击几乎是无法避免的 甚至被入侵似乎也情有可原 但是 服务器被入侵管理员却浑然不觉 长期与入侵者者 和平共处 相安无事 这是无论如何都不能原谅的 其实 这样的案例难道还少吗?因此 入侵检测既是一项非常重要的服务器日常管理工作 也是管理人员必须
      服务器被攻击几乎是无法避免的甚至被入侵似乎也情有可原但是服务器被入侵管理员却浑然不觉长期与入侵者者和平共处相安无事这是无论如何都不能原谅的其实这样的案例难道还少吗?因此入侵检测既是一项非常重要的服务器日常管理工作也是管理人员必须掌握的技能下面笔者和大家一道多点出击明察秋毫进行服务器的入侵检测

  查看服务器状态

  部署性能监控工具实施对服务器的实时监控这应该成为服务器的标准配置笔者向大家推荐NetFox这款服务器监控工具通过其可以设置Web/PingFTP/Mail邮件检测空间检测等监控项当服务器性能发生异常时会发出报警声以提示管理员进行处理另外当服务器不在本地管理员可以设置手机短信报告以利用管理员远程了解服务器的运行状态当服务器异常能够尽快采取相应的措施(图)

  

  图

  如果大家的服务器没有部署这样的工具也可以通过进程管理器进行查看在其性能标签下可以直观的看到服务器CPU物理内存虚拟内存的使用状况以确定是否有CPU和内存占用过高等异常情况在其联网标签下可以实时查看当前服务器各网卡的网络使用状况以确定是否有异常流量

  检查当前进程情况

  服务器的入侵检测进程是非常重要的一项通过其可以查看是否可疑的程序在服务器中运行虽然Windows Server 集成了进程查看器但其功能比较简陋而且对一些通过Hook或者Rootkit方式插入正常系统进程或者隐藏的进程显得无能为力笔者推荐类似IceSword(冰刃)这样的工具通其可以查看进程的线程及其该进程调用的模块信息从而帮助管理员找到隐藏的进程(图)

  

  图

  在一般情况下管理员完全可以通过任务管理器查看服务器进程情况在其进程选项卡下服务器当前显式进程一目了然甄别是否是危险进程管理员要对系统进程或者常用程序的进程比较了解对于拿不准的进程或者说不知道是服务器上哪个应用程序开启的进程可以在网络上搜索一下该进程名加以确定比如大家可以在进程知识库()进行查看比对该网站比较详细地列举了系统进程应用程序进程存在安全风险的进程当然病毒木马的进程是可以由攻击者更改的但它们为了达到目的往往会在进程名上做文章一般会取一个与系统进程类似的名称通常迷惑手段是变字母o为数字变字母l为数字如svchstexeexporerexe等此时要仔细辨别(图)

  

  检查系统帐号

  攻击者在入侵服务器后为了达到后期的一直控制往往要创建系统帐户这帐户往往是管理员组的比如敲入命令net user lw test /add & net localgroup administrators lw /add(不含引号)就创建了一个用户名为lw密码为test的管理员用户对于这样的用户管理员可以在命令提示符(cmdexe)下敲入net user或者打开计算机管理展开本地用户和组查看administrators组是否有陌生帐户添加以确定入侵

  当然一个狡猾的入侵者不会这么做他们会通过各种方法进行帐户的隐藏其常用的伎俩不外乎四种

  ()激活服务器的Guest用户并把其加入管理员组对此管理员一定要查看在administrators组中是否有个guest用户如果存在几乎可以肯定服务器被入侵了

  ()创建隐藏帐户入侵者在帐户的后面加$比如把上面的命令改为net user lw$ test /add & net localgroup administrators lw$ /add就创建了一个lw$用户该用户在命令提示符(cmdexe)下输入net user命令是看不到的但在本地用户和组中可以看到

  ()克隆帐户这应该是入侵者最常使用的他们往往会克隆administrator帐户这个帐户无论在命令提示符本地用户和组设置注册表的sam项下也无法看到隐蔽性极高对此管理员必须得通过工具才能查看系统中是否有克隆帐户笔者推荐mtexemt被很多杀毒软件定义为木马也是攻击者进行帐户克隆的首选工具但其也可以让系统中克隆帐户现行

  具体操作是在命令提示符下进入mt目录输入命令mt chkuser输入命令后会在屏幕中输出结果主要查看ExpectedSID和CheckedSID如果这两个值不一样则说明账号被克隆了在本例中可以看到账号simeon$的CheckedSID跟Administrator的CheckedSID值一样说明simeon$克隆了Administrator账号(图)

  

  图

  ()Rookit帐户通过Rootkit创建的帐户具有克隆帐户隐藏的所有特点也具有非常高的隐蔽性对于这样的危险帐户的清除首先要清除系统中的Rookit程序只有把其清除了所有的隐藏帐户就会显形笔者推荐工具RootKit Hook Analyzer其可以分析检测系统中的Rootkit程序并用红色显示出来然后管理员就可以结束它(图)

  

  查看当前端口开放情况

  现在企业的服务器一般是专用的比如WebFtpSQL都是各自独立的对于这样应用单一的服务器只开放其应用端口如果出现了陌生的连接或者监听端口就要提高警惕了对于综合性的服务器由于其担负的服务因此开放的端口也多查看其当前开放的端口笔者建议使用专门的工具比如activeport

  运行activeport后服务器当前的端口连接情况一目了然作为管理员要特别注意服务器与外部的连接情况看是否有未经允许的端口与外界在通信如有立即关闭该端口并记录下该端口对应的程序将该程序转移到其他目录下存放以便后来分析此时可以利用冰刃等进程管理工具进行查看结束可疑连接程序的进程然后定位到程序目录进行查杀(图)

  

  图

  当然Windows Server 中也有相关连接端口查看的命令在命令提示符下输入netstat ano可以查看到当前服务器的网络连接状况如果服务器的连接比较多想看看正在进行的连接可以进行筛选输入命令netstat ano |find ESTABLISHED即可可以看到图中有一条的连接可以在命令行下输入命令query user查看是谁连接到了服务器从而通过命令logoff (是远程连接用户ID)踢出入侵者当然也可以在任务管理器用户选项卡下查看(图)

  

  图

  另外管理员可以对服务器的端口状况及其安全隐患进行一个检测这样至少可以防御那些只会使用工具进行攻击的恶意用户笔者推荐工具xscan_gui这是攻击者在对服务器进行攻击前进行服务器扫描的工具管理员可以利用该工具对服务器进行一个安全检测只需在扫描前输入服务器的IP并勾选相应的检测模块即可

  检查系统服务

  攻击者在攻克服务器后往往会上传一个木马的服务端从而实现对服务器的远程控制这些木马的服务端往往是以服务的形式随系统启动而运行的对这木马服务端的检测可以通过系统的服务工具实现

  运行servicesmsc检查处于已启动状态的服务查看是否有新加的未知服务并确定服务的用途对于不清楚的服务打开该服务的属性查看该服务所对应的可执行文件是什么如果确定该文件是系统内的正常使用的文件可粗略放过查看是否有其他正常开放服务依存在该服务上如果有可以粗略的放过如果无法确定该执行文件是否是系统内正常文件并且没有其他正常开放服务依存在该服务上可暂时停止掉该服务然后测试下各种应用是否正常对于一些后门由于采用了hook系统API技术添加的服务项目在服务管理器中是无法看到的这时需要打开注册表中的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl\SetServices项进行查找通过查看各服务的名称对应的执行文件来确定是否是后门木马程序等

  需要提醒的是这些木马的服务端在生成之前都可以进行设置比如服务端运行后进程的名称释放的目录服务器描述等所以管理员一定要仔细辨别(图)

  

  查看相关日志

  服务器中的日志有很多类与笔者认为与入侵检测相关首先是安全日志该日志记录了用户(本地或者远程)系统的详细信息另外与服务器中运行的服务相关的比如DNSIIS等也是入侵检测中特别注意的

  运行eventvwrmsc点击安全性就可以在右边看到与安全相关的日志比如第一条日志显示LW用户在::远程登陆了系统图如果管理员自己没有登录或者系统中本来没有该用户那么就可以断定服务器被入侵了(图)

  

  图

  服务器中的日志信息往往非常多要对这么多的日志信息进行分析显然是不可能的我们可以在日志记录上点右键选属性筛选器中设置一个日志筛选器根据自己的需要进行筛选过滤无用的信息如果要分析Web是否被入侵可以打开IIS管理器定位到其日志文件进行查看不过web日志是非常多的因此需要通过专门的工具进行分析比如Web Log Explorer就是一款不错的工具可以查看浏览者的IP及其该IP访问下载或者修改了哪些文件等等(图)

  

  图

  正因为日志会记录入侵者的踪迹所有狡猾的入侵者往往在入侵后会对日志进行操作擦除入侵痕迹常见的手段是

  ()删掉日志这是最低级的做法虽然消除了日志但也暴露了入侵者自己如果是这样管理员看到日志被删除可以马上断定服务器被入侵

  ()部分删除一些比较高明的入侵者在入侵结束后会删除日志中与自己相关的部分如果这样管理员可以实施对日志的监控保护一旦发现日志有删除的痕迹就可以进行入侵检测

  ()部分修改这是一些高明的入侵者采用的方法他们在入侵结束后会修改与自己相关的日志以欺骗管理员或者嫁祸于人金蝉脱壳对才管理员可以采取同上的方法不过还要进行一定的分析

  最后笔者以一个安全爱好者的角度建议管理员一定要备份好服务器的日志

  检查系统文件

  攻击者在入侵中或者入侵成功后会在系统文件上做文章隐藏保护入侵工具(一般是木马的客户端)其主要手段是替换同名的系统文件(exe和dll文件)或者实施系统文件与木马的捆绑

  服务器入侵检测中对于系统文件的检测笔者建议在服务器系统安装完毕之后用dir *exe /s >txt将系统盘所有的exe文件列表保存下来这样在检测时先该命令生成一份当前服务器系统盘文件列表然后用FC命令比较两个文件从而发现可疑文件对于dll文件的检测方法类似需要注意的是打补丁或者安装软件后重新生成一次原始列表检查相关系统文件是否被替换或系统中是否被安装了木马后门等恶意程序(图)

  

  图

  对于被捆绑的系统文件的安全检测笔者建议可以通过SFC命令还原纯净的系统文件必要时可运行一次杀毒程序对系统盘进行一次扫描处理

  检查安全策略是否更改

  服务器安全级别比较高其默认的安全策略限制了攻击者的很多行为因此他们在入侵过程中或者入侵后往往对服务器的安全策略进行调整设置以利用对服务器的长久控制所以安全策略检测也是服务器入侵检测的一个重要方面

  安全策略检测主要从下面几个方面入手

  ()协议相关打开本地连接的属性查看常规中是否只勾选了TCP/IP协议因为一个安全的服务器其他的选项是不需要但这也许是攻击者所需要的

  ()TCP/IP筛选打开TCP/IP协议设置高级选项查看IP安全机制是否是设定的IP策略查看TCP/IP筛选允许的端口有没有被更改

  ()IP安全策略依次打开管理工具本地安全策略查看目前使用的IP安全策略是否发生更改

  ()本地策略本地安全策略查看本地策略下的用户权限分配安全选项相关策略有无更改比如使用空白密码的本地帐户只允许进行控制台登录策略默认是启用攻击者可能基于远程登录的需要会改为已禁用(图)

  

  图

  检查目录权限

  服务器特别是WebFTP服务器管理员对于磁盘目录的权限往往经过严格的设置这些设置加固了服务器的安全限制的攻击者的入侵因此攻击者在攻击过程中或者攻击完成后往往要对目录的权限进行调整以方便自己后期的使用比如攻击者在获得一Web站点的webshell后就要进行进一步的渗透提权等操作其中对于目录权限的突破是一个手段所以对于磁盘目录权限的检测也是服务器入侵检测的一个重要方面(图)

  

  图

  ()需要检查权限的磁盘目录有系统盘及其它分区%windir%%windir%\system%windir%\system\inetsrv%windir%\system\inetsrvdatadocuments Settings如果是虚拟主机还应该有每个Web站点的目录

  ()对于用servu部署的FTP服务器需要查看servu安装目录的权限是否做过变动

  ()检查system下的某些重要系统命令的权限有无更改这些命令文件是cmdnetftptftpcacls等

  检查启动项

  攻击者在控制服务器后往往会上传一个木马服务端这个服务端除了注册为系统服务器外有的会添加到系统启动项里随系统启动因此对服务器的入侵检测启动项也是一个重要的地方

  启动项的检查可用的方法主要有以下三个

  ()Msconfig工具运行该工具启动选项卡下可以看到随系统启动的程序只需取消对可疑程序启动的勾选即可

  ()regedit(注册表)工具运行该工具定位到如下注册表项下进行检查

  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

  HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

  HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices

  以上的键值会出现在msconfig的启动项中

  HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce

  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce

  HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce

  以上的键值比较隐蔽

  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]

  Shell=EXPLOREREXE*exe

  *为某病毒或者木马的可执行文件这种方法非常隐蔽被当前的许多病毒采用

  ()专门工具这样的工具比较多比如RegRunFirst就不错运行后点选左边相关的注册表启动项项就可以看到该项下的启动程序

  另外C:\Documents and Settings\Administrator\「开始」菜单\程序\启动也是个比较危险的地方比如攻击者获得了一Web服务器的webshell没有命令执行权限但具有对该目录的写权限就可以向该目录上传木马程序等服务器重启后木马也就运行了(图)

  

  图

  总结以上我们从个方面进行了服务器的入侵检测其实在实战中没有必要一一进行笔者只是尽量囊括服务器入侵检测的方方面面毫无例外服务器的安全也遵循木桶原理它的安全性往往取决于自身最脆弱的地方因此这些地方应该成为入侵检测的重点

网友评论
<