基于人工免疫的入侵预警系统技术报告中国科学技术大学内容
1,概述
2,基于人工免疫的入侵预警系统的原理
3,基于人工免疫的入侵预警系统组成介绍
4,基于人工免疫的入侵预警系统运行环境
5,基于人工免疫的入侵预警系统功能描述
6,实验验证
7,本项目的创新之处
8,本系统的商业价值
9,小结一、网络安全概述
网络安全是计算机网络及其应用领域中一直在研究的关键问题。它对于保障以电子商务为代表的网络经济的快速发展,保证专用的金融网、政府网和军事网的安全运行具有极其重要的战略意义。网络安全已经成为一个迫在眉睫的问题。
一般而言,网络安全在技术层次上主要包括防火墙技术,加密解密技术,攻击预警技术和数据恢复技术等 。
从网络安全防护上讲,防火墙技术和数据加密技术给出了一个静态防护的概念,而入侵预警技术则具有主动防御的意义 。
因此,对攻击的识别与预警的研究具有十分重要的意义,目前已成为网络安全系统不可缺少的一个重要组成部分。
入侵预警概述
入侵预警是指使用自动和智能工具检测实时入侵企图。
入侵预警的研究在 20世纪 80年代早期开始出现。
– 如斯坦福研究所在 1983年 6月到 1986年 11月实施的研究,称作 6169项目,其 Statistical
Techniques Development for an Audit
Trail System使用统计方法根据用户的行为判断是否有入侵企图,是入侵检测领域较早的研究之一。
入侵预警系统分类
( 1) 基于规则的预警系统 。 它依赖于已知攻击和攻击特点的库和数据库 。 如果当前通信状态满足某个标准或规则,它就被标记为入侵企图 。 其缺点是只能检测已知入侵 。 另外,有时在特定的规则和可靠检测率之间存在反比关系 。 即,如果一个规则定义过于严格,
与此相似但又不完全相同的攻击会绕过该检测 。
( 2)异常预警系统。它通过采用更高级的技术,包括人工智能在内,来发现当前网络状态的异常情况。这类系统的最终目标是要求不仅能识别已知入侵,而且应该能够自己学习新的攻击特点,识别未知入侵。但是,现有的异常预警系统均很难达到这一要求。
入侵预警系统现状
对于异常预警系统,从采用的技术来看,至今人们已用统计分析,专家系统,神经网络,遗传算法等方法来设计出入侵预警系统 。
但是,现有技术还很难识别未知入侵,其关键题就是难于区分网络行为的正常 ( 自我 ) 和异常 ( 非我 ) 。
要使网络得到更高水平的安全保护,应加快研发具有高度主动性和自适应性的网络安全技术。
因此,我们需要新的思想和方法来检测网络入侵。
基于人工免疫的入侵预警系统简介
生物免疫系统具有很强的自我保护功能,能够识别未知抗原,正好可以满足异常预警系统的要求 。 因此,
我们可以借鉴生物免疫机制来设计和建立异常预警系统,使相应的预警系统具有很强的未知入侵识别能力 。
我们针对数据报报头,设计和建立了基于人工免疫的入侵预警系统,并通过测试证明系统的未知入侵预警能力。同时,由于该系统采用了独特的检测器机制以及不依赖于所监视数据源的基于人工免疫的入侵预警算法,从而使得系统具有很好的可扩展性。因此,用户只需针对不同的数据源(包括数据报内容、系统调用、日志等),编写相应的模式抽取程序,就可使该系统能够在更大范围内(或用户指定范围内)具有未知入侵预警能力。
二、基于人工免疫的入侵预警系统的原理
生物免疫基础
相关算法
– 阴性 /阳性选择
– 亲和度变异
– 免疫记忆和非选择生物免疫基础
免疫( immunity)是生物体的一种特异生理反应,免疫系统通过识别和排除抗原性异物维持体内环境的稳定。
具体地说,当抗原异物进入机体后,机体能识别,自己,和,非己,,并发生特异性的免疫应答,排除抗原性的非己物质。
– 初次免疫应答
– 二次免疫应答免疫系统的组成
通常可将免疫系统分为免疫器官,免疫细胞和免疫分子三大类,免疫系统在体内分布广泛,如外周淋巴器官位于全身各个部位。
免疫器官包括骨髓、胸腺、淋巴结等。其中骨髓和胸腺是产生免疫细胞的场所。
淋巴细胞是最主要的免疫细胞。淋巴细胞和其它免疫细胞不仅定居在淋巴器官中,也分布在粘膜和皮肤组织中。
免疫细胞和免疫分子还可通过血液在体内各处漫游,
可持续地执行识别和排除抗原性异物的功能。各种免疫细胞和免疫分子既相互协作,又相互制约,使免疫应答既能有效又能在适度的范围内进行。
免疫功能和特征
人体免疫系统是一自适应的并行分布式系统 。 具有如下功能特征:
a) 免疫识别:免疫识别是指对外来异物的识别与分类,其重要特征是能够识别未知抗原 。
b) 免疫记忆:免疫记忆是指当相同或类似抗原再次进入生物体时,可引起比初次免疫更强的抗体产生 。 免疫系统能够免疫记忆快速识别已记忆抗原 。
c) 免疫耐受:免疫耐受是指免疫活性细胞 ( T细胞,B细胞等 )
接触抗原物质所表现的一种特异性的无应答状态 。
d) 免疫调节:主要包括浓度调节和网络调节 。 免疫系统主要通过浓度和网络调节维持抗体的多样性,从而识别大量的未知抗原 。
以上功能和特征是生物免疫系统能够识别未知抗原,保护自身生命活动的基础。通过研究和借鉴这些功能特征所蕴涵的机制,
建立相应的模型和算法,进而可以设计出具有未知入侵识别能力的算法和系统。
基于人工免疫的入侵预警算法框架检测器基因库亲和度变异阴性 /阳性选择非选择当前个体实时监视检测未成熟检测器记忆并反馈阴性 /阳性选择
阴性 /阳性选择模块对应于生物免疫系统的中枢免疫器官(主要是骨髓和胸腺)产生免疫细胞的机制。
通过阴性 /阳性选择,不仅增加好的基因的选择概率,而且抑制浓度过高的基因的选择概率。
这样,使得算法在通过基因重组生成检测器时,
不仅能够保证检测器集不会收敛于某些检测器,
而且能够在基因重组的层次使好的基因有相对较高的选择概率,进而使得生成的检测器趋向于具有较高的检测效果。
阴性 /阳性选择(续)
具体的实现过程为:
( 1) 依据反馈的检测器以较小的步长增加该检测器包含的基因的选择概率 。
( 2) 计算基因浓度 。
( 3) 生成新的检测器 。 基于人工免疫的入侵预警系统采用适应度比例选择机制和浓度选择机制相结合的办法 。 于是基因 i在检测器第 j个基因位的选择概率 pi由适应度概率 pf和浓度概率 pd两部分组成,即
其中 α 和 β 为常数。从上式可以看出:基因 i的适应度越大,选择概率越大;而浓度越大,选择概率越小。这样既可产生较好的检测器,又可确保检测器的多样性。
e ijCN
j
dfi jF it iF itppp,1)()(
1


亲和度变异
未知入侵预警要求系统在有限的检测器中保留充分和必要的检测器,充分意味着至少在理论上能够检测到所有非我模式;必要意味着每种入侵模式仅被较少、甚至仅仅一个检测器检测到。
本系统采用亲和度变异,对检测器引入多态性,
能够响应较大范围入侵模式刺激的检测器被认为是较低级的检测器,它需要大量刺激才能被激活;而只能响应较小范围入侵模式刺激的检测器,则认为是高级检测器,仅需少量刺激就能被激活。
亲和度变异(续)
亲和度变异模型抗原低级高级增殖变异变异非选择免疫记忆和非选择
免疫记忆模块直接对应于生物免疫记忆特征,其主要功能是对当前有效的检测器进行记忆并反馈到阴性 /阳性选择和亲和度变异。
非选择模块是在 S,Forrest提出的非选择算法的基础上,针对入侵预警系统中检测器生成和分发的特殊性而提出并实现的。
三、基于人工免疫的入侵预警系统组成介绍
自我数据获取模块
进化进程
服务器
检测单元
控制台基于人工免疫的入侵预警系统组成结构图服务器自我数据获取阴性 /阳性亲和度变异非选择检测单元实时监视检测结果
(基于 TCP的通信)
基于人工免疫的入侵预警系统组成结构图进化进程控制台报警信息
(基于 TCP的通信)
检测器
(基于 TCP的通信)
自我集获取
自我集获取模块的功能是通过分析数据报报头的特征,
建立自我 /非我模式,通过模式抽取程序,从正常数据中提取,自我,个体组成,自我集,。
这里特别指出,自我获取是一个动态的过程,在实时监控过程中,也可以调整自我集中的个体 。 如:用户通过控制台将某些确认为误报的告警信息加入自我集 。
tcpdump收集自我数据定义模式自我集模式抽取程序初始自我集获取流程进化进程
进化进程和服务器运行在同一台主机上,
其主要功能是完成检测器的产生、进化和学习。
进化进程实现了包括阴性 /阳性选择、非选择、亲和度变异、非选择、免疫记忆在内的功能。
进化进程(续)
基因库自我集未成熟检测器基因重组进化进程流程图匹配检测器丢弃阴性 /阳性选择亲和度变异来自检测进程的有效检测器
Y
N
服务器
服务器是整个系统的中转枢纽,主要包括以下功能:
– 用户认证;
– 接收控制台请求,离线检测请求,数据源配置等;
– 接收检测单元的预警信息,并发送到控制台;
– 在进化进程和检测器单元之间转发检测器,
等等。
服务器(续)
进化进程预警信息等接收检测器共享内存服务器流程图发送检测器检测单元有效检测器控制台根据包类型和来源进行处理预警信息检测单元
检测单元执行实际检测功能,不仅能够实时监视网络状态并预警,而且能够针对用户提供的离线数据进行离线分析和预警。
检测单元(续)
服务器进程检测器管理接收检测器检测单元流程图模式匹配日志记录驱动进化模式抽取数据源(实时或离线)
控制台
用户通过控制台使用和管理整个系统。控制台运行在 Windows9x/2000/XP操作系统上,具有一个使用非常方便的界面。它通过 TCP/IP协议和服务器通信,一方面可以通过服务器从检测单元获得报警信息;另一方面,用户可以通过控制台对监视数据源进行处理,包括,忽略,,
,自我,和,清除,三类操作。其中,忽略,
是指系统以后不再对此类信息进行实时报警,
但报警信息仍然保存在数据库中;,自我,是指用户指定该报警信息为自我数据,需要返回到服务器和进化进程;,清除,则删除该报警信息。
控制台(续)
通信协议服 务器 进程离线检测请求离线检测初始信息包登录请求登录认证控制台数据源配置请求预警消息预警数据设为自我状态应答进化进程第一个检测进程数据源配置应答服务器和检测进程状态网络流量统计信息预警消息 ( 离线检测 )
第 N
个检测进程发送初始检测器驱动进化进化结果预警消息数据源配置请求数据源配置应答其它预警消息数据源配置请求数据源配置应答其它各组成部分间通信协议示意图四、基于人工免疫的入侵预警系统运行环境
系统各组成部分运行环境
– 进化进程,Linux操作系统,内核版本 2.2.x
以上已全部测试通过 。
– 服务器进程,Linux操作系统,内核版本
2.2.x以上已全部测试通过 。
– 检测进程,Linux操作系统,内核版本 2.2.x
以上已全部测试通过,已安装 tcpdump软件包 。
– 控制台,Windows9x/2000/XP操作系统 。
系统的安装和使用详见用户手册。
一种典型的系统安装介绍互联网 路由器 /网关检测进程 IDS
基于人工免疫的入侵预警系统的物理安装示意图进化进程和服务器进程检测进程 IDS
检测进程 IDS 控制台 检测进程 IDS
五、基于人工免疫的入侵预警系统功能
1,离线检测:用户可以提供正常数据和需分析检测的可疑数据,系统自动完成离线检测功能 。
2,实时监控:系统可以根据用户的配置实时监控网络数据流,实时报告入侵预警结果 。
3,报警分析:用户可以分析当前的入侵预警结果,也可以分析历史报警信息 。 同时,系统还提供当前网络状态的基本特征,包括流量,数据报分布等 。
4,系统配置:用户可以通过控制台配置检测范围及其它一些基本信息。
基于人工免疫的入侵预警系统功能离线检测实时监控报警分析系统配置标准数据演示实际数据离线检测对比实验

能检测

报警

忽略

清除

详细

自我

可能的入侵类型
Ip
地址端网络流量及分布

入侵总数及分布详细历史记录

报警信息和实际数据基于人工免疫的入侵预警系统协议类型端口范围离线检测
离线检测包含两个子功能
–标准数据演示
–实际数据离线检测离线检测流程图图 11,离线检测流程图用户选择子功能标准数据演示实际数据离线检测离线检测请求检测器检测单元预警信息服务器控制台进化进程检测器预警信息标准数据演示
数据来源于
http://iris.cs.uml.edu:8080/network.html
–标准自我数据文件一个
–非我数据文件四个
IP欺骗
猜测密码
扫描攻击
网络忙碌攻击标准数据演示(续)
实际数据离线检测
系统可以对用户的正常文件、待检测文件来检查待检测文件中是否包含未知入侵
目前,系统提供了在实验室服务器上用
TcpDump收集的正常数据集和包含入侵的待检测数据集实际数据离线检测(续)
实时预警
实时预警部分的功能即实时监视网络状态,发现入侵则预警。实时预警在报告未知入侵时,能够根据当前的数据报报头内容给出一个可能的攻击类型。
实时预警(续 1)
检测单元检测到入侵后,发送预警信息至服务器,服务器接收到预警消息后,会给控制台发送一个告警数据包。
控制台接收到一个告警数据包后,管理员可以查看告警的详细信息,对该报警数据包的可选动作有“忽略”、“删除”、“详细” 或“自我”。如果用户选择“自我”,控制台将立即将信息反馈回服务器,驱动进化进程重新对检测器集进行修改。
实时预警(续 2)
预警分析
查看详细的历史记录。
查看过去一段时间内(如一天、一个星期等)入侵的总数等。
以及数据删除等功能。
预警分析 (续 )
系统配置
为方便用户配置整个系统,控制台上提供了对服务器的检测参数的配置功能。主要包括:
– 协议类型配置,可选的协议有 TCP,UDP和
ICMP;
– IP地址配置,用户可以指定要检测的网络入侵的源 IP地址范围和目的 IP地址范围;
– 包括端口配置,用户可指定要监控的端口范围。
系统配置(续)
六、实验验证序号 攻击名称 运行平台 本系统(检测单元 1) 本系统(检测单元 2) SNORT
能否检测 能否检测 能否检测
1 Nmap Linux
能 能能
2 Teardrop Linux 不能
3 Puke Linux 能
4 Jolt Linux 能
5 Jolt2 Linux 能
6 Land Linux 不能
7 Smurf4 Linux 不能
8 Inetdos Linux 能
9 Ack Linux 不能
10 Ack2 Linux 能
11 Rurf Linux 能
12 Synfin Linux 能
13 Tfn Linux 不能
14 linuxPing Linux 不能
15 Pong Linux 不能 不能 能
16 Xport Windows 能 能 能
17 Udpflood Windows 能 能 能
18 NmapWin Windows 能 能 能七、本项目的创新之处
1,该项目针对现有入侵预警技术难以预警未知入侵的不足,借鉴自然免疫系统的自我防护机制,针对数据报报头,设计和建立了一个实际的基于人工免疫的入侵预警系统,取得了具有源头创新性的研究成果。该系统由进化进程、服务器、检测单元和控制台组成,其中进化进程、服务器和检测单元运行在
Linux平台,控制台运行在 Windows平台。系统主要有如下四部分功能:( 1)实时检测功能可以实时监测网络数据报并对未知入侵作出预警;( 2)离线检测功能可以对标准数据和离线数据中的未知入侵作出预警;( 3)预警分析功能可以对预警信息进行查询、分析;( 4)系统配置功能可以指定需要监测的协议类型,IP地址范围、端口范围。
七、本项目的创新之处(续 1)
2,系统完全基于自然免疫系统的自我防护机制设计与构建,首次提出并实现了包括阴性 /阳性选择、亲和度变异、非选择和免疫记忆等模块在内的基于人工免疫的入侵预警算法。该算法通过动态获取网络的正常行为(自我),最终得到针对网络的异常行为(非我)的完备检测器集,从而使系统具有很好的未知入侵预警能力。
七、本项目的创新之处(续 2)
3,采用一种独特的检测器成熟机制,不依赖于所监视的数据源,因此,对于不同的数据源(包括数据报内容、系统调用、
日志等),只需设计相应的模式抽取程序,基于人工免疫的入侵预警系统就可实现针对其它数据源的未知入侵预警。
系统具有很好的通用性和可扩展性。
4,该系统界面友好,易于使用,可以应用到目前极其重要的网络安全应用领域。
八、本系统的商业价值
入侵预警系统作为网络安全系统中重要的一部分,是具有很大市场需求的系统。
由于当前入侵预警系统难于识别未知入侵,而新的入侵层出不穷,因此,本系统是现有系统的一个很好的补充,具有很高的商业价值。
九、小结
本项目针对数据报报头,设计和建立了基于人工免疫的入侵系统,测试结果表明该系统具有较好的未知入侵预警能力。
由于该系统采用了独特的检测器成熟机制以及不依赖于所监视数据源的基于人工免疫的入侵预警算法,具有很好的可扩展性。
进一步完善谢谢!
标准数据演示(续)
这些数据是采用通过于网关上的抓包工具 (tcpdump)对经过网关的 TCP和 UDP数据包 (包括内部网和外部网之间以及内部网内的数据包 )抓取其包头得到的,是国内外研究人员常用的入侵预警测试数据,共有 5个不同的数据集合。
第一个是在没有网络入侵时获取的 TCP数据包头,即正常数据集;其余四个是有网络入侵时获取的 TCP数据包头,在系统中用在待检测数据。这四个待检测数据分别包含了以下入侵方法产生的数据,IP欺骗攻击
(IP Spoofing Attack),猜测密码 (Guessing rlogin or ftp
passwords),扫描攻击 (scanning attack)和网络忙碌攻击 (network hopping attack)。