基于机器学习的Linux异常检测工具的设计与实现

来源 :北京大学 | 被引量 : 0次 | 上传用户:qinzhenxing
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
操作系统异常主要包含操作系统资源占用异常和操作系统中进程的运行异常,而这些异常往往都是因为外界用户采取的种种攻击手段、程序的自身漏洞、程序被非法篡改或注入恶意代码而造成的。在操作系统运行时对它进行异常检测是十分重要的。一方面,通过检测操作系统和进程的异常行为,及时发现并处理这些异常事件,能够增强操作系统的安全性和可靠性,从而为用户搭建一个安全、高效和可信的计算平台。另一方面,发现和记录操作系统运行时的异常状态,有助于系统管理员改正系统运行时的错误或不适当的配置,提高操作系统的效率。   现有的异常检测工具一般使用系统调用作为系统状态指标。但是单单对系统调用的异常检测并无法准确地给用户提供错误诊断,而且目前有研究表明有一些攻击通过插入带有无效参数的调用系统调用,使其在系统调用序列上表现得与正常时一样,以此来躲避异常检测工具的检测。同时,对于与系统调用不相关的异常行为,如果不引入其他指标,也没有办法检测到,但现有工具也没有提供动态增减监测指标的功能。   本文对操作系统运行时产生的数据进行分类,总结出三类进程状态描述,然后采用内核代码动态插装技术,引入了系统资源利用率、系统调用参数及返回值等指标,应用了多种机器学习技术,设计并实现了一个Linux运行时异常检测工具LADT(Unux Anomaly Detection Tool)。该工具能够动态增减监测指标,同时对该指标的运行情况进行海量的数据收集,然后利用数据分析模块中的多种机器学习技术对系统正常运行时的系统调用名、系统调用参数及返回值、内核关键的操作序列进行训练,从而学习出运行时正常状态轮廓,最后进行实时异常检测,通过与正常状态轮廓的比较,发现系统异常并记录和告警。该工具已经在Linux2.6.26内核上实现,实验结果表明,本文中所描述的基于机器学习的Linux异常检测是可行的。
其他文献
随着云计算、大数据和互联网服务的兴起,数据中心中出现了一类轻量级的可扩展的负载,传统的高性能服务器对这类负载的适配性并不是很好,主要体现在服务器计算密度低,资源利用率不
P2P技术的迅速发展给数字图书馆的建设提供了广阔的应用空间。分布式数字图书馆中的一些应用软件在分布式互操作方面具有较大的共通性,若能为它们提供一个通用的P2P应用平台和
随着Internet的快速发展,Web环境已拥有了海量信息。Web信息中包含大量有用的知识:通过Web信息挖掘,我们可以获取这些知识并将加以应用。基于Web的实体关系图的构建就是Web信息
本文提出了动态代码植入技术(Dynamic Code Implantation),它借用半虚拟化的方式,动态修改全虚拟化系统中客户操作系统(Guest OS)的内核代码。在有硬件辅助的全虚拟化虚拟机管理
虚拟植物是应用计算机模拟植物在三维空间中的生长发育状况,是虚拟现实技术在农业领域的应用。其核心内容是生长模型和可视化技术,生长模型反映植物形态结构的动态变化,可视化技
一词多义是普遍现象,而且随着时代的发展和语言的丰富,词义在使用中随时在变化着,这是语言学家也无法准确把握或预测的现象,本文利用索引系统对实体名词的多义进行了分析,希望可以
互联网的飞速发展,信息的迅速膨胀,使得互联网中的网页数量呈指数级别增长。据Google的官方博客公布的最新数据,目前世界网络中存在的网页的数量已经达到了万亿的量级。网络信息
随着XML数据量的不断增加,提出了XML文档的不同存储方法。目前存在的XML数据的存储模式主要可以分为两类:关系存储模式和native存储模式。虽然我们将XML存于数据库当中,但目前的
无线传感器网络综合了传感器技术、嵌入式计算技术、分布式信息处理技术和无线通信技术,能够协作地完成实时监测、传感和采集目标对象的信息,并对其进行处理,传送给需要信息的用
在信息技术以及应用需求的推动下,以提供空间分析服务为核心的地理信息系统(GIS,Geographic Information System)得到飞速发展,其应用领域不断向广度拓展,逐渐渗透到电子商务、电