1、 侵检测的基本概念 入侵检测是指"通过对行为、安全日志或审计数据或其它网络上可以获得的信息进行操作,检测到对系统的闯入或闯入的企图"(参见国标GB/T18336)。入侵检测是检测和响应计算机误用的学科,其作用包括威慑、检测、响应、损失情况评估、攻击预测和起诉支持。入侵检测技术是为保证计算机系统的安全而设计与配置的一种能够及时发现并报告系统中未授权或异常现象的技术,是一种用于检测计算机网络中违反安全策略行为的技术。进行入侵检测的软件与硬件的组合便是入侵检测系统(Intrusion Detection System,简称IDS)。
2、 入侵检测系统的发展历史 1980年JamesP.Anderson在给一个保密客户写的一份题为《计算机安全威胁监控与监视》的技术报告中指出,审计记录可以用于识别计算机误用,他给威胁进行了分类,第一次详细阐述了入侵检测的概念。1984年到1986年乔治敦大学的DorothyDenning和SRI公司计算机科学实验室的PeterNeumann研究出了一个实时入侵检测系统模型- IDES(Intrusion Detection Expert Systems入侵检测专家系统),是第一个在一个应用中运用了统计和基于规则两种技术的系统,是入侵检测研究中最有影响的一个系统。1989年,加州大学戴维斯分校的Todd Heberlein写了一篇论文《A Network SecurityMonitor》,该监控器用于捕获TCP/IP分组,第一次直接将网络流作为审计数据来源,因而可以在不将审计数据转换成统一格式的情况下监控异种主机,网络入侵检测从此诞生。
3、 系统模型 为解决入侵检测系统之间的互操作性,国际上的一些研究组织开展了标准化工作,目前对IDS进行标准化工作的有两个组织:IETF的Intrusion Detection Working Group(IDWG)和Common Intrusion Detection Framework(CIDF)。
CIDF早期由美国国防部高级研究计划局赞助研究,现在由CIDF工作组负责,是一个开放组织。 CIDF阐述了一个入侵检测系统(IDS)的通用模型。它将一个入侵检测系统分为以下组件:事件产生器(Event generators),用E盒表示;事件分析器(Event analyzers),用A盒表示;响应单元(Responseunits),用R盒表示;事件数据库(Event databases),用D盒表示。
CIDF模型的结构如下:E盒通过传感器收集事件数据,并将信息传送给A盒,A盒检测误用模式;D盒存储来自A、E盒的数据,并为额外的分析提供信息;R盒从A、E盒中提取数据,D盒启动适当的响应。A、E、D及R盒之间的通信都基于GIDO(generalized Intrusion detection objects,通用入侵检测对象)和CISL(common intrusion specification language,通用入侵规范语言)。如果想在不同种类的A、E、D及R盒之间实现互操作,需要对GIDO实现标准化并使用CISL。
4、 分类 4.1 按照检测类型划分 从技术上划分,入侵检测有两种检测模型:
(1) 异常检测模型(Anomaly Detection):检测与可接受行为之间的偏差。如果可以定义每项可接受的行为,那么每项不可接受的行为就应该是入侵。首先总结正常操作应该具有的特征(用户轮廓),当用户活动与正常行为有重大偏离时即被认为是入侵。这种检测模型漏报率低,误报率高。因为不需要对每种入侵行为进行定义,所以能有效检测未知的入侵。
(2) 误用检测模型(Misuse Detection):检测与已知的不可接受行为之间的匹配程度。如果可以定义所有的不可接受行为,那么每种能够与之匹配的行为都会引起告警。收集非正常操作的行为特征,建立相关的特征库,当监测的用户或系统行为与库中的记录相匹配时,系统就认为这种行为是入侵。这种检测模型误报率低、漏报率高。对于已知的攻击,它可以详细、准确地报告出攻击类型,但是对未知攻击却效果有限,而且特征库必须不断更新。
4.2 按照检测对象划分
基于主机:系统分析的数据是计算机操作系统的事件日志、应用程序的事件日志、系统调用、端口调用和安全审计记录。主机型入侵检测系统保护的一般是所在的主机系统。是由代理(agent)来实现的,代理是运行在目标主机上的小的可执行程序,它们与命令控制台(console)通信。
基于网络:系统分析的数据是网络上的数据包。网络型入侵检测系统担负着保护整个网段的任务,基于网络的入侵检测系统由遍及网络的传感器(sensor)组成,传感器是一台将以太网卡置于混杂模式的计算机,用于嗅探网络上的数据包。
混合型:基于网络和基于主机的入侵检测系统都有不足之处,会造成防御体系的不全面,综合了基于网络和基于主机的混合型入侵检测系统既可以发现网络中的攻击信息,也可以从系统日志中发现异常情况。
5、 入侵检测过程分析 过程分为三部分:信息收集、信息分析和结果处理。 (1) 信息收集:入侵检测的第一步是信息收集,收集内容包括系统、网络、数据及用户活动的状态和行为。由放置在不同网段的传感器或不同主机的代理来收集信息,包括系统和网络日志文件、网络流量、非正常的目录和文件改变、非正常的程序执行。
(2)信息分析:收集到的有关系统、网络、数据及用户活动的状态和行为等信息,被送到检测引擎,检测引擎驻留在传感器中,一般通过三种技术手段进行分析:模式匹配、统计分析和完整性分析。当检测到某种误用模式时,产生一个告警并发送给控制台。
(3)结果处理:控制台按照告警产生预先定义的响应采取相应措施,可以是重新配置路由器或防火墙、终止进程、切断连接、改变文件属性,也可以只是简单的告警。
6、IDS部署实例 图2 RealSecure的部署图 图2为ISS(Internet Security Systems)RealSecure的部署图,RealSecure是一种混合型的入侵检测系统,提供基于网络和基于主机的实时入侵检测。其控制台运行在Windows 2000上。RealSecure的传感器是自治的,能被许多控制台控制。各部分的功能如下:
(1) ReaISecure控制台:对多台网络传感器和服务器代理进行管理;对被管理传感器进行远程的配置和控制;各个监控器发现的安全事件实时地报告控制台。
(2) Network Sensor(网络引擎):对网络进行监听并自动对可疑行为进行响应,最大程度保护网络安全;运行在特定的主机上,监听并解析所有的网络信息,及时发现具有攻击特征的信息包;检测本地网段,查找每一数据包内隐藏的恶意入侵,对发现的入侵做出及时的响应。当检测到攻击时,网络引擎能即刻做出响应,进行告警/通知(向控制台告警、向安全管理员发E-mail、SNMP trap、查看实时会话和通报其他控制台),记录现场(记录事件日志及整个会话),采取安全响应行动(终止入侵连接、调整网络设备配置,如防火墙、执行特定的用户响应程序)。
(3) Server Sensor(服务器代理,安装在各个服务器上):对主机的核心级事件、系统日志以及网络活动实现实时入侵检测;具有包拦截、智能报警以及阻塞通信的能力,能够在入侵到达操作系统或应用之前主动阻止入侵;自动重新配置网络引擎和选择防火墙阻止黑客的进一步攻击。
7、 发展趋势 对分析技术加以改进:采用当前的分析技术和模型,会产生大量的误报和漏报,难以确定真正的入侵行为。采用协议分析和行为分析等新的分析技术后,可极大地提高检测效率和准确性,从而对真正的攻击做出反应。协议分析是目前最先进的检测技术,通过对数据包进行结构化协议分析来识别入侵企图和行为,这种技术比模式匹配检测效率更高,并能对一些未知的攻击特征进行识别,具有一定的免疫功能;行为分析技术不仅简单分析单次攻击事件,还根据前后发生的事件确认是否确有攻击发生、攻击行为是否生效,是入侵检测技术发展的趋势。
增进对大流量网络的处理能力:随着网络流量的不断增长,对获得的数据进行实时分析的难度加大,这导致对所在入侵检测系统的要求越来越高。入侵检测产品能否高效处理网络中的数据是衡量入侵检测产品的重要依据。
向高度可集成性发展:集成网络监控和网络管理的相关功能。入侵检测可以检测网络中的数据包,当发现某台设备出现问题时,可立即对该设备进行相应的管理。未来的入侵检测系统将会结合其它网络管理软件,形成入侵检测、网络管理、网络监控三位一体的工具。