【IT168 应用】随着网络安全风险系数不断提高,曾经作为最主要的安全防范手段的防火墙,已经不能满足人们对网络安全的需求。作为对防火墙及其有益的补充,IDS(入侵检测系统)能够帮助网络系统快速发现网络攻击的发生,扩展了系统管理员的安全管理能力(包括安全审计、监视、进攻识别和响应),提高了信息安全基础结构的完整性。
IDS被认为是防火墙之后的第二道安全闸门,它能在不影响网络性能的情况下对网络进行监听,从而提供对内部攻击、外部攻击和误操作的实时保护。
伴随着计算机网络技术和互联网的飞速发展,网络攻击和入侵事件与日俱增,特别是近两年,政府部门、军事机构、金融机构、企业的计算机网络频遭黑客袭击。攻击者可以从容地对那些没有安全保护的网络进行攻击和入侵,如进行拒绝服务攻击、从事非授权的访问、肆意窃取和篡改重要的数据信息、安装后门监听程序以便随时获得内部信息、传播计算机病毒、摧毁主机等等。攻击和入侵事件给这些机构和企业带来了巨大的经济损失和形象的损害,甚至直接威胁到国家的安全。
攻击者为什么能够对网络进行攻击和入侵呢?原因在于,我们的计算机网络中存在着可以为攻击者所利用的安全弱点、漏洞以及不安全的配置,主要表现在操作系统、网络服务、TCP/IP协议、应用程序(如数据库、浏览器等)、网络设备等几个方面。正是这些弱点、漏洞和不安全设置给攻击者以可乘之机。另外,由于大部分网络缺少预警防护机制,即使攻击者已经侵入到内部网络,侵入到关键的主机,并从事非法的操作,我们的网管人员也很难察觉到。这样,攻击者就有足够的时间来做他们想做的任何事情。
那么,我们如何防止和避免遭受攻击和入侵呢?首先要找出网络中存在的安全弱点、漏洞和不安全的配置;然后采用相应措施堵塞这些弱点、漏洞,对不安全的配置进行修正,最大限度地避免遭受攻击和入侵;同时,对网络活动进行实时监测,一旦监测到攻击行为或违规操作,能够及时做出反应,包括记录日志、报警甚至阻断非法连接。
IDS的出现,解决了以上的问题。设置硬件防火墙,可以提高网络的通过能力并阻挡一般性的攻击行为;而采用IDS入侵防护系统,则可以对越过防火墙的攻击行为以及来自网络内部的违规操作进行监测和响应。
在本质上,入侵检测系统是一个典型的“窥探设备”。它不跨接多个物理网段(通常只有一个监听端口),无须转发任何流量,而只需要在网络上被动地、无声息地收集它所关心的报文即可。IDS处理过程分为数据采集阶段、数据处理及过滤阶段、入侵分析及检测阶段、报告以及响应阶段等四个阶段。数据采集阶段是数据审核阶段。入侵检测系统收集目标系统中引擎提供的主机通讯数据包和系统使用等情况。数据处理及过滤阶段是把采集到的数据转换为可以识别是否发生入侵的阶段。分析及检测入侵阶段通过分析上一阶段提供的数据来判断是否发生入侵。这一阶段是整个入侵检测系统的核心阶段,根据系统是以检测异常使用为目的还是以检测利用系统的脆弱点或应用程序的BUG来进行入侵为目的,可以区分为异常行为和错误使用检测。报告及响应阶段针对上一个阶段中进行的判断做出响应。如果被判断为发生入侵,系统将对其采取相应的响应措施,或者通知管理人员发生入侵,以便于采取措施。最近人们对入侵检测以及响应的要求日益增加,特别是对其跟踪功能的要求越来越强烈。
目前,IDS分析及检测入侵阶段一般通过以下几种技术手段进行分析:特征库匹配、基于统计分析和完整性分析。其中前两种方法用于实时的入侵检测,而完整性分析则用于事后分析。
特征库匹配就是将收集到的信息与已知的网络入侵和系统误用模式数据库进行比较,从而发现违背安全策略的行为。该过程可以很简单(如通过字符串匹配以寻找一个简单的条目或指令),也可以很复杂(如利用正规的数学表达式来表示安全状态的变化)。一般来讲,一种进攻模式可以用一个过程(如执行一条指令)或一个输出(如获得权限)来表示。
该方法的一大优点是只需收集相关的数据集合,显著减少系统负担,且技术已相当成熟。它与病毒防火墙采用的方法一样,检测准确率和效率都相当高。但是,该方法存在的弱点是需要不断升级以对付不断出现的黑客攻击手法,不能检测到从未出现过的黑客攻击手段。
统计分析方法首先给信息对象(如用户、连接、文件、目录和设备等)创建一个统计描述,统计正常使用时的一些测量属性(如访问次数、操作失败次数和延时等)。测量属性的平均值将被用来与网络、系统的行为进行比较,任何观察值在正常偏差之外时,就认为有入侵发生。例如,统计分析可能标识一个不正常行为,因为它发现一个在晚八点至早六点不登录的账户却在凌晨两点试图登录,或者针对某一特定站点的数据流量异常增大等。其优点是可检测到未知的入侵和更为复杂的入侵,缺点是误报、漏报率高,且不适应用户正常行为的突然改变。
完整性分析主要关注某个文件或对象是否被更改,包括文件和目录的内容及属性,它在发现被更改的、被特络伊化的应用程序方面特别有效。完整性分析利用强有力的加密机制,称为消息摘要函数(例如MD5),能识别极其微小的变化。其优点是不管模式匹配方法和统计分析方法能否发现入侵,只要是成功的攻击导致了文件或其他对象的任何改变,它都能够发现。缺点是一般以批处理方式实现,不用于实时响应。
一、认清需求
在许多时候,第一个障碍是说服管理层这个投资是必要的,因为他们不一定有IT背景。设备、招收员工和培训所造成的增加成本也应该讨论。关键是要论证需要保护的并不是服务器、工作站、文件服务器或其它网络设备,而是这些设备上的公司数据。对以下问题认真考虑能够有助于说明增强网络安全的重要性:
1、公司数据的安全有多重要?
如果有一天早晨你发现所有的数据库都成了空白的或被修改了,那该怎么办?如果研究了一年的新产品落到竞争者的手中该怎么办?
2、潜在的损失是什么?
丢失数据可能会造成因恢复或重建数据而带来的额外成本,还会造成公司内部失去信任,长远来说这可能代价更高。
客户愿意相信他们的个人信息是安全的,而商业伙伴希望共享的公司秘密也是如此。
3、未来被攻击的潜在可能性有多少?
公司以前成为过攻击目标吗?相似的公司是否受到过攻击?公司是否涉及敏感或有争议的领域?与政府机构之间的关系是否会增加受到攻击的可能性?
二、全面了解入侵检测系统
要保证真正地理解IDS的意图。网络安全并不是一个单个系统所能完成的工作,需要配合口令系统的使用和管理、反病毒程序的安装、文件系统的许可和审核以及全面优良的的网络实践及策略。IDS不会“包治百病”,它所能做的是对那些可能危害网络结构以及存储数据完整性的行为进行检测、报告和有限的响应。
1、IDS系统的检测方式
IDS通常使用异常检测和特征检测两种方式判断行为是否有害:
(1)异常检测方式
这种方式下,IDS首先要学习并了解一个系统的基本情况,包括CPU、文件使用、用户登录及其它行为,然后根据是否发生了异常举动进而采取对策。例如,如果一个用户通常是在星期一至星期五的上午8点到下午5点之间登录进来的,而突然试图在星期六的凌晨2点登录,这就会警告管理员这个行为对于这个用户来说是不正常的。
(2)特征检测方式
这种方式下,IDS会对每个信息包进行特征内容核查,看是否与那些已知的攻击模式相匹配。例如,字符串"/cgi-bin/phf?"就可触发一个报警,表明可能有人在web 服务器上寻找一个CGI脚本漏洞。许多商业 IDS系统都是基于特征的,它们的数据库一般都有几百个特征。
遗憾的是,不论基于异常行为还是特征内容的检测都不完美,两种产品都有误报,会出现对用户、资源和目的系统本来合法的行为作为事件来报告。误报的概率永远无法完全消除,但是系统管理员通过仔细研究报警信息及其原因,对检测系统进行微调就可以降低误报的发生几率。另外,一个IDS产品有一定数量的误报总比无视可能的入侵要好。
2、IDS系统的种类
除了检测方法上的不同方式外,还有许多不同类型的入侵检测系统,基于网络的、基于主机的,其功能各有千秋:
1)基于网络的IDS系统
这种IDS系统用于检测网络上所有的信息包。根据多种因素,要想全面覆盖网络,可能需要一个以上的网络IDS。基于网络的IDS的优势是:
● 基于网络的IDS购买成本低,放置在一个重要网络入口处的IDS可为多个系统提供安全。
● 基于网络的IDS能够检测数据包报头和有效负载,不会漏掉基于主机的IDS系统可能会错过的攻击。
● 对识别出来的攻击进行实时检测和各种响应,包括通知、中止会话、记录会话日志用于分析和证据。
● 检测和记录不成功的攻击,用于评估安全状态和策略。
● 基于网络的IDS在检测攻击时并不依赖于操作系统,而基于主机的IDS要依赖操作系统、应用程序或其它系统的日志来识别攻击。
2)基于主机的IDS系统
这种IDS系统用于检测发往一个计算机的信息包,通常在高度敏感的系统上使用。基于主机的IDS的优势是:
● 能够校验出攻击是成功还是失败,因为处理结果是在对系统日志中所记录下来事件的分析基础上做出的。
● 可使特定的系统行为受到严密监控,例如文件访问、对文件许可的变更、用户上网和下网的情况,其监控程度比基于网络的IDS要详细得多。
● 基于网络的IDS可以检测出没有通过受保护网络入口的攻击,基于主机的IDS能够检测和报告监控服务器上的键盘动作。
● 基于网络的IDS对经过加密的攻击往往“有眼无珠”,而基于主机的IDS会在主机操作系统对信息包解密之后再进行检验。
● 基于主机的IDS安装在现有服务器上,不需要额外的系统支持,降低了初始配置成本。
基于网络和基于主机的IDS都各有优势和用途,前者“主外”,为整个网络提供全面保护,后者“主内”,为选中的系统提供特殊保护,二者联合起来就能够提供全面的保护。
三、详细了解网络现状
详细理解现有网络的拓扑结构、各种系统的用途和功能是很必要的。一般情况下,需要对网络进行以下检查:
1、存在网络管理部门吗?
有没有一个单独的网络管理部门,或者网络管理功能是否被分给了多个功能不同的部门?识别域控制器和邮件服务器很重要,但只是个开始,还需要知道其他部门比如人力资源部有没有一个数据库服务器?其中是否包含了敏感的员工保险记录?
2、网络有多少个入口?
如果一次成功的入侵没有被基于网络的IDS检测到,其原因是“入侵者从另一个未知的、未受保护的门进入”,那么就需要彻底打扫一下“卫生”了,看看哪个地方还有“黑洞”?
3、网络中安装了防火墙吗?
如果安装,那么需要进一步确定基于网络的IDS是安装于防火墙前还是后。IDS位于防火墙前面,就能记录下可能会被防火墙阻挡在外的攻击,从而利用这些数据调整IDS的配置。IDS位于防火墙后面,就只能报告穿越防火墙的攻击。
4、网络上有没有交换机?
这个信息用于决定IDS系统的放置场所及其部署类型。
5、可用资金有多少?
钱的数量会对选择造成直接的影响。为了保护特殊系统,即使买不起基于网络的IDS系统,也要“省吃俭用”购置一套基于主机的IDS系统以保护重点对象。
四、评估IDS系统
评估IDS系统是很费时间的,但是绝对重要和必要,值得“千呼万唤始出来”。除了基于网络和主机的系统外,还需考虑以下因素:
● 基于网络和主机的系统能组合到一个管理系统中,从而允许在同一个控制台上发出报警吗?
● 有没有事件相关功能,从而减少触发和响应时间?
● 支持何种操作系统?
● 特征数据库多久升级一次?
● 哪种IDS能够显示网络拓扑结构?
● 哪种系统与现有操作系统最适应?