[发明专利]一种基于机器学习的Linux‑Kernel关联CVE智能预测方法在审
申请号: | 201710261619.1 | 申请日: | 2017-04-20 |
公开(公告)号: | CN107194260A | 公开(公告)日: | 2017-09-22 |
发明(设计)人: | 龙清;吴敬征;李牧 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F17/30 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙)11200 | 代理人: | 司立彬 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 机器 学习 linux kernel 关联 cve 智能 预测 方法 | ||
技术领域
本发明属于信息技术、计算机软件技术领域,具体涉及一种基于机器学习的Linux-Kernel关联CVE职能预测方法。
背景技术
Linux是一种开源电脑操作系统内核。它是一个用C语言写成,符合POSIX标准的类Unix操作系统。Linux最早是由芬兰黑客Linus Torvalds为尝试在英特尔x86架构上提供免费的类Unix操作系统而开发的。该计划开始于1991年,在计划的早期有一些Minix黑客提供了协助,而今天全球无数程序员正在为该计划无偿提供帮助。
由于Linux的开源性,针对Linux进行漏洞分析预测的方法层出不穷,主要包括静态源码分析,动态运行时分析。但到目前为止,还没有基于机器学习的对Linux讨论邮件数据进行分析从而对Linux相关漏洞进行自动化预测的方法。因此本发明为从Linux讨论邮件数据中进行自动化漏洞预测提供了一种方法,能够更早的发现漏洞,并且给出漏洞预测结果的详细说明,供安全人员参考。
发明内容
本发明的目的在于填补目前对Linux讨论邮件数据进行分析从而实现对Linux相关漏洞进行自动化预测的技术空白,提出一种通过机器学习的方法从Linux讨论邮件数据中建立模型,从而对新的邮件数据进行自动化漏洞预测的方法,该方法可以及早发现Linux内核中可能存在的漏洞信息,并给出判定为可能导致漏洞的详细说明供安全人员参考。
为实现上述目的,本发明采用如下技术方案:
一种基于机器学习的Linux-Kernel关联CVE(Common Vulnerabilities&Exposures,公共漏洞和暴露)智能预测方法,其步骤包括:
1)从Linux讨论邮件数据发布网站(http://lkml.iu.edu/hypermail/linux/kernel/)上爬取1995.06.01~2015.12.31的全部数据,根据邮件讨论主题存入mysql数据库;
2)对数据进行人工标注,按照讨论主题内容与CVE描述内容的吻合度,CVE中提供的参考链接中的文本描述内容,使用LSI算法进行文本相似度计算的计算结果等信息将讨论主题人工标注为CVE相关和CVE不相关,标注过程中对每一条数据进行三次标注,若三次标注结果不一致,则重新标注该条数据以确保标注信息的准确性;
3)随机抽取1/2的CVE相关讨论主题邮件数据和随机抽取部分CVE不相关讨论主题邮件数据,采用机器学习的SVM算法进行训练,得到CVE漏洞预测分类模型,在SVM模型中采用字符串核函数(string kernel function)进行训练;
4)使用剩余1/2的CVE相关讨论主题和随机抽取部分CVE不相关讨论主题对第二步训练获得的SVM模型进行测试和调优,具体调优过程为根据测试数据集上的准确率和召回率对模型参数不断进行改变,以获得最好结果的最终模型为准;
5)提供自动化的CVE漏洞预测模型,对新的邮件数据进行自动化预测,提供预测结果和结果说明,供安全人员参考。
进一步地,步骤1)爬取数据时需使用phpquery将每封邮件的标题、详细内容、发送者、发送时间存入mysql数据库。
进一步地,步骤2)对数据进行人工标注时需综合考虑CVE的描述信息,CVE的参考链接中的文本描述信息,以及使用LSI算法对邮件数据和CVE描述信息进行文本相似度计算的结果信息。
进一步地,步骤3)随机抽取的CVE不相关主题数量为CVE相关主题数量的2倍。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710261619.1/2.html,转载请声明来源钻瓜专利网。