从总体上来说,网络入侵检测需要分为两个部门,一是入侵信息的收集;二是在收集信息的基础之上,对相关数据进行分析。然后我们网络管理员再根据相关的结果采取对应的措施。可见,数据收集是入侵检测、提高企业网络安全的基础;是一个必须要经历的阶段。
网络的安全性,很大程度的上依赖于我们收集的信息的准确性。因为现在非法入侵越来越狡猾,不会光明正大的在系统中留下痕迹。他们在攻击的过程中,往往会采取一些隐蔽的手段,或者在攻击完成之后删除一些信息,如可以替换被程序调用的子程序、记录文件和其他工具等等。经过他们的对相关信息的调整,可以让系统的日志跟正常的差不多。所以,随着黑客技术的深入,信息收集的难度也比较大。下面笔者就入侵信息的收集这个话题,谈谈自己的想法。
第一步:收集系统日志以及网络日志文件。
俗话说,燕过留声,人过留名。无论再怎么高超的黑客,要入侵企业网络之前,肯定会在系统日志或者网络日志中留下一些蛛丝马迹,只是明不明显的区别而已。所以,网络管理员需要对这个系统日志与网络日志格外的关注。
如一些系统或者网络失败访问日志,会记录一些不寻常的或者不成本的访问记录。如当一个帐户试图多次用管理员帐户访问文件管理系统,当密码尝试错误三次的时候,就会在文件服务器系统中记录下这个访问信息,包括访问的时间、IP地址等等。当我们网络管理员收集到这条信息后,就需要注意可能有人在再这台文件服务器的注意了。我们可以根据这个IP地址,找到那台攻击的主机。不过,很可能这台主机不是始作俑者,而是被人家当做肉鸡了。总之,我们看到这个信息之后,我们就需要为文件服务器设置一个比较复杂的管理员密码了。
再如有些应用系统中,有一个“帐户活动”日志。这个日志中会记录这个帐户在系统中所进行的操作。包括什么时候利用什么角色登陆到系统,进行了哪些操作;并且还会记录这个帐户的一些必要的认证信息。通过这些信息的话,我们可以及时的发现系统入侵的迹象。如系统管理员发现一个管理员帐户在某个时间登陆了这个应用系统,但是,自己那时候根本没有登陆。或者普通员工的帐户在非上班时间多次登陆,那么就说明这个信息化应用系统有可能已经被人攻破了。他们乘我们不注意的时候,在偷偷的窃取系统中的信息。为此,我们必须要通过一些措施找到这个非法的攻击者,或者及时更改用户名与密码,防止进一步扩大损失,等等。
总之,相关的日志信息会记录某个非法用户多次尝登陆某个系统,以及记录某个非法用户多次试图访问未经授权的文件或者系统。而这些信息是我们以后作好防治措施的依据。所以,我们信息收集的第一步,就是要关注相关的日志信息。在这些日志文件中,找到攻击者蛛丝马迹。
第二步:非正常的目录以及非正常的文件。
当黑客攻击成功后,取得某个管理员帐户之后,为了进一步加固自己的成果,会在系统中设置一些文件夹、目录或者文件,以进行下一步的攻击行为。如有一些攻击者在取得系统的管理员轧帐户与密码之后,会在系统中建立一个文件夹,上传一些木马攻击。并且设置相关的任务调度计划,当某个特定的时间,运行这个文件夹中的程序等等。所以,我们若能够及早的发现这些非正常的文件夹以及文件信息,就可以及早的发现攻击的迹象,从而及时采取相关的措施。
所以,操作系统与应用软件中的目录与文件、文件夹的非正常改变,包括增加、删除、修改等等,特别是一般情况下受限制访问的文件夹以及目录非正常的改变,很可能是一种入侵产生的指示或者信号。
一般来说,有如下几种情况。
一是应用程序的执行路径发生了改变。如有些企业通过MSN跟可户进行联系。当非法攻击着侵入企业网络,取得某台主机的管理员密码之后,就可以改变用户桌面上的MSN程序图标的路径。当用户双击打开这个程序的话,打开的不是原来的MSN程序,而可能是一个绑有木马的MSN程序,可以窃取用户了聊天记录、帐户名与密码等等。
二是可疑的文件夹。当非法攻击者取得管理员用户名与密码之后,利用TELENT程序远程登陆,然后在主机上建立文件夹,上传木马或者其他的非法软件,然后通过操作系统本身的任务调度命令,在一个特定的时刻运行这个文件夹中的程序。这是很多非法攻击者常用的手段。所以,我们若能够及时的发现这些可疑的文件夹信息,就可以及早的发现攻击的行为,从而减少由此带来的损失,等等。一般来说,我们借助一些检测软件,就可以收集到这些信息。
三是日志文件的非法修改。上面我们说过,非法攻击者拜访过企业的网络主机之后,肯定会在系统日志或者网络日志中留下蛛丝马迹。在他们攻击得手之后,为了隐藏他们在系统中的表现以及攻击的痕迹,都会尽力的去替换系统日志中的相关内容。为此,若能够及时的收集这些信息的话,则即使他们更改了日志中的内容,我们也能够及早的发现,从而采取对应的措施。
第三步:非正常程序的运行信息。
黑客攻击企业网络信息的话,往往不会只是取得管理员权限那么简单。他们攻击系统的最终目的,是为了窃取相关的信息,如密码等等;或者把企业的网络主机当作肉鸡,作为攻击其他网络的跳板等等。无论是出于哪种目的,除非直接窃取电脑上的文件,不然的话,一般都需要通过在被攻击的主机后台运行一些程序,如键盘记录工具软件等等,才能够达到类似的目的。
所以,及时的收集这些非正常程序运行的信息,可以及早的发现企业网络被攻击的迹象。而一般来说,收集这些非正常的程序,就是需要收集一些进程信息。
因为在每个系统上执行的程序都是由一到几个进程来实现的。而且,一个进程的执行行为又是由他运行时执行的操作来表现的。操作执行的方式不同,利用系统资源也就不同。若在系统进程中,出现了一个我们不希望看到的进程,或者个这个进程出现了我们网络管理员不期望的行为,如试图往注册表中加入一些非法的信息等等,如建立隐形帐户等等,这就表示有攻击者存在。
若我们感到网络速度明显变慢的时候,可以通过查看系统的进程来了解相关的信息。但是,若靠手工收集这些进程信息的话,是不怎么现实的。一方面工作量比较大,另一方面这些非法的进程往往不会时刻都运行着。当他执行完一定的任务之后,就会迅速的退出,防止为我们发现。所以,我们就需要通过一些工具,实时的收集这些进程信息。如此的话,我们就可以迅速的找到入侵者的踪迹,在他们在还没有造成更大的破坏之前,把他们消灭掉。
总之,入侵信息的收集是一个比较复杂的体系。需要在计算机网络系统中若干不同关键点,如不同网段与不同主机之间收集信息。这主要是为了全方位的了解相关的入侵信息。而且非法攻击者往往善于寻找企业网络中的薄弱环节。故,网络入侵信息的收集,还需要注意一个全面性。
但是,全面收集网络入侵信息的话,往往工作量比较大。若单纯的靠手工去收集这些信息的话,是不怎么现实的;工作量大而且容易漏掉。所以,我们需要采用一些工具,来帮助我们收集这些内容。现在市面上的一些入侵检测工具,就都带有这些信息的收集功能。以为只有在这些信息的基础之上,这些工具才能够对此加以分析,得出可能的入侵结果。
另外一些系统也带有自动警告功能,可以自动把一些他们认为可疑的信息发送给我们网络安全管理员。如当有人多次试图利用管理员帐户登陆路由器的时候,若密码错了三次,则就会自动发送邮件给网络安全管理人员,提醒他们存在这个非正常的登陆事件。让我们判断这个是否是正常的。这也是一个很实用的功能,不过这需要占用额外的资源,所以,默认情况下这个功能都是没有打开的。若需要的话,则要由管理员进行手工的配置。对于一些重要的网络设备,还是建议开启这项功能。