- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
智能主动防御系统
1 引言
1.1 安全防护软件发展现状
随着互联网的飞速发展,计算机病毒技术和黑客入侵技术也迅速发展,逐渐融合了网络蠕虫、木马、拒绝服务工具、缓冲区溢出工具等各种攻击手段,造成的损失也由最初的数据丢失,发展到现在的信息泄密,数据破坏,甚至互联网的瘫痪,破坏力越来越大。
伴随着病毒技术和黑客入侵技术的发展,安全防护技术也在迅速发展,各种各样的安全防护软件如"雨后春笋"般出现。这些安全防护软件的原理可以概括为"扫描"和"过滤",它们利用特征库对文件进行扫描,对进入主机的数据包进行过滤,从而发现病毒和入侵。特征库成了这些防护软件功能的最大限制,谁拥有更完备的特征库谁就能防御更多病毒和入侵。特征库中存储的都是已知病毒和入侵的特征,因此这些安全防护软件仅能对已知的病毒和入侵进行防御,对未知的病毒和入侵束手无策。
防御未知病毒和未知入侵是当前安全防护软件迫切需要解决的问题。
1.2 方案设计与选择
智能主动防御系统(以下简称本系统)可分为网络防护和主机防护两部分,其中网络防护的主要功能是防御来自网络的入侵,主机防护的主要功能是防御恶意程序(如病毒)的破坏。
整个系统的总体架构如图1所示。各部分的功能如下:
1. 网络防护:用户态实现"伪装服务,提取特征"功能,NDIS驱动实现"ARP模拟不存活主机和数据包过滤"功能。
2. 主机防护:主机防护的核心部分是在系统内核驱动中完成检测恶意程序。
图1 系统总体构架
从图1可以看出,本系统是一个全方位的防护软件,它集防火墙与杀毒软件功能于一身。与传统的防护软件相比,其最大的特色是:能够主动防御未知入侵和检测未知病毒。
本系统通过自主学习建立自己的特征库从而实现防御未知入侵。系统摒弃了野蛮的病毒扫描模式,采用主动防御技术拦截程序的危险行为,实现了检测未知病毒。
本系统的"智能"主要体现在:
1) 自主学习:主动收集未知入侵特征,防御未知入侵。
2) 主动防御:变被动为主动,将未知病毒扼杀于摇篮中。
此外,本系统还提供了功能强大的系统辅助工具,例如:进程管理,网络连接管理,服务管理,启动项管理,HOSTS文件管理等。
2 系统原理与实现
2.1 智能防火墙原理与实现
本防火墙的智能主要体现在:它能够通过自主学习实现对未知入侵的防御。
2.1.1 传统防火墙的工作原理
传统防火墙有一个入侵特征库和一个过滤规则表。当网络数据包到来时,防火墙会将包中的数据与特征库和过滤规则进行匹配,符合要求的放行,不符合规则的就丢弃。
传统防火墙的特征库是由防火墙开发商维护并提供给用户下载的。库中的数据都是对已知入侵的特征提取。因此传统的防火墙也只能防御已知的入侵。然而,网络中无时无刻不在产生着新的威胁,杀毒软件开发商能够分析到的危险只是其中很少的一部分。因此,传统的防火墙防御入侵的能力是非常有限的。
2.1.2 智能防火墙的工作原理
智能防火墙也有一个入侵特征库,不过维护这个特征库的不是防火墙的开发人员而是防火墙本身。
对于已知的威胁我们可以事先将其特征写入到特征库中。对于未知的新的安全威胁,智能防火墙可以根据黑客入侵的特征,比如在入侵的开始阶段往往是盲目的,黑客会进行大范围的攻击扫描,由此不可避免的会给不存活IP地址发送数据包。智能防火墙认为对不存活主机的连接是具有恶意的,是入侵的前兆。防火墙的内部维护着一张局域网内的存活主机列表,当它检测到网内有向不存活主机发送的ARP请求时,会伪装成目的主机发出ARP应答,并与入侵者进行进一步的交互,从交互的数据中提取特征,存入特征数据库。
在上述的过程中,智能防火墙虽然不知道具体的入侵类型,但是由于它掌握了入侵的数据特征,因此下次对本网的相同威胁就能被检测到。其原理如图2所示。
图2 智能防火墙工作原理
2.1.3 智能防火墙的实现
智能防火墙的实现可以分为用户态程序和NDIS中间层驱动程序两部分,如图3所示。
图3 智能防火墙的实现
1. 用户态程序的实现
用户态程序使用了WinPcap开发库和多线程技术。利用WinPcap可以实现捕获原始数据包(包括在共享网络上各主机发送/接收的以及相互之间交换的数据包)以及在网络上发送原始的数据包;
本程序的监听线程中使用了WinPcap的数据包捕获功能,对到达主机每个网络接口的数据包进行分析。本程序的扫描线程则使用了WinPcap的发送原始数据包的功能,进行局域网存活主机的扫描。
作者:赵宇宸 齐鹏 毛宁祥 胡建伟 西安电子科技大学 来源:电子产品世界