基于机器学习的JavaScript恶意代码检测技术的设计与实现

来源 :北京邮电大学 | 被引量 : 0次 | 上传用户:lbw001001
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网的发展,JavaScript作为一种功能完备的脚本语言,被广泛地应用于Web网站开发,但是由于这种程序语言具有动态执行、不依赖于平台等特性,在给开发工作带来便利的同时,也造成了严重的安全隐患,比如黑客们极易利用浏览器及插件的漏洞进行恶意代码的编写与执行。网络攻击技术的快速更新和迭代泛滥已经严重危害到广大用户的安全,因此面对严峻的网络空间安全现状,我们亟需对JavaScript的代码安全进行深入研究,提升对JavaScript恶意代码的检测能力,从而保障互联网应用的安全性。而JavaScript恶意代码检测方法主要分为基于代码文本及结构的静态检测方法和基于代码动态执行结果的动态检测方法。目前大部分相关工作都是在这两种方法基础之上进行拓展,但这些方法通常将JavaScript视作一种自然语言而非程序语言,在一定程度上忽略了程序语言独有的语法信息和语义信息。本文着眼于对源码的深度程序分析,提出了一种基于机器学习的JavaScript恶意代码检测方案。主要研究内容包括:1、JavaScript程序依赖图生成技术。代码的程序依赖图是能够表示程序数据依赖关系和控制依赖关系的图结构,包含了丰富的程序语法、语义信息。本文研究程序依赖图的生成原理,通过遍历程序的抽象语法树,添加数据依赖和控制依赖信息得到程序依赖图,实现了一种具有通用性的JavaScript程序依赖图生成技术,能够最大程度代表程序的语法与语义信息。2、基于程序依赖图的特征提取与选择技术。本文通过深度遍历源码的程序依赖图进行基于N-gram算法的特征提取,并通过卡方检验方法保留高相关性的特征序列。3、基于XGBoost算法的恶意代码检测技术。将提取的JavaScript代码特征,应用于XGBoost机器学习算法,进行参数优化,从而得到分类模型对良性和恶意代码进行分类判别,最终实现基于机器学习的JavaScript恶意代码检测系统。与传统的漏洞检测方案相比,本文的基于机器学习的JavaScript恶意代码检测方案能够有效的解决人工检测效率低的问题和基于缺陷模式的缺陷检测误报率高的问题,充分覆盖各类恶意攻击方式。最终实验结果表明,与已有的检测工具相比,本文实现的基于机器学习的JavaScript恶意代码检测系统具有更好的检测效果,并在企业生产环境中具有广泛的实际应用价值。
其他文献
近些年,移动设备数量快速增长,工业互联网、高清视频等业务场景不断涌现,致使网络中的数据流量激增。上述发展现状不仅需要移动通信网络具备更强的承载能力,并且对网络的稳健性以及泛在能力提出了更高的要求。面对这些挑战,仅靠增加接入设备、提高网络带宽难以从根本上解决问题。卫星通信的发展为应对以上挑战提供了新的思路,利用卫星实现全球无缝覆盖,并通过广播、多播技术进行高效的内容分发,在一定程度上可以弥补地面通信
随着光通信的发展,光纤通信的大容量优势已经使其成为最为主要的通信方式,光纤通信的安全性也越发重要。混沌光通信由于初值敏感性以及类噪声的特点成为了近年的研究热点。虽然激光混沌系统能够在类噪声的载波中隐藏信息,但是通过统计特性分析,其最为重要的时延密钥可以被破解,从而使得窃听者能够重构系统,威胁到系统的安全。而且,由于激光混沌系统对于时延密钥的依赖性太强,导致其非线性程度不够,密钥空间较少,也不利于系
随着云计算和大数据时代的到来,互联网时时刻刻释放出的海量数据在各行各业中发挥作用。当越来越多的大数据出现在云端,数据的使用边界问题、数据的个人隐私问题等问题也接踵而至。欧盟发布的《通用数据保护条例》明确了当企业或组织出于某种用途想要收集用户的隐私数据,在此之前必须经过用户明确的同意,如果企业或组织想要修改数据的用途,需要用户的再次同意。同时,企业或组织在使用数据时,不可将数据用于反推用户的隐私。出
随着网络信息技术的协同式发展,网络及社交媒体上每时每刻都涌现出大量的图像及文本数据。其中,图像作为一种重要的信息承载媒介,往往呈现出数据量大、内容多且覆盖广等诸多特点。面对网络中海量且持续的视觉信息,单靠人工标注工作量大、成本高、差异多,且不利于提升图片分类及索引的效率。图像生成描述系统允许用户输入图像,并自动返回与之内容匹配的自然语言描述。该模式有助于节约时间和人力成本,实现机器对图像视觉信息的
随着第五代移动通信(The fifth Generation,5G)的大规模商业部署和工业4.0的极速发展,物联网(Internet of Things,IoT)应用从传统的机器类型通信向关键任务通信转变,并对通信的可靠性、延迟和IoT设备电池寿命等提出了多样化的需求。作为5G的三大关键场景之一,高可靠低时延通信(Ultra Reliable and Low Latency Com-municat
随着人工智能技术与大数据技术的飞速发展,医疗行业中数据的信息化也在不断地建设。随着医疗数据的建设和完善,人工智能技术开始辅助医疗的研究和发展。无痛分娩,在医学上被称为“分娩镇痛”,在这里具体指的是硬膜外镇痛。这种方式可以使孕妇在分娩时的疼痛感得到极大缓解,让分娩更加顺利,但是也会对孕妇和婴儿产生的不良影响一直备受争议。对于这个人工分析较为困难的问题,人工智能技术及大数据技术可以在研究和辅助分析方面
媒体内容作为一种可以携带丰富信息的传输载体,在社交网络中扮演着重要的角色。随着移动互联网的飞速发展,人们不再满足于信息接收者的角色,而是更倾向于制造内容和分享内容。通信技术也使得人们记录生活的方式由传统的博客转向媒体平台,图片、视频载体越来越受到人们的欢迎,因此人们也对媒体服务提出了新的需求。一方面为了提高视频的编码效率,并适应多样化的设备和复杂的网络环境,可伸缩视频编码(Scalable Vid
企业创新对当前我国经济实现结构转型,解决部分核心关键技术领域卡脖子问题具有重要意义。但需清醒明白的是,当前我国创新水平与创新能力建设已取得较大成就,但在研发投入水平等方面同国外发达国家相比还有较大差距。因此细化研究影响微观个体及企业创新动能的因素,不断提升企业的创新动力与能力具有较大的现实意义。本论文以融资约束的角度切入对企业创新的研究,创新性地引入了行业资源丰度和行业环境动态性的行业环境指标。本
随着APT组织的兴起,针对国家或者大型公司的APT攻击也逐渐被安全研究人员关注,其中APT攻击手法隐蔽,且通常使用Oday或者较新的Nday,难以防范,因此针对漏洞利用行为的检测在当前环境下是十分有必要的。本文提出了一种基于控制流完整性的漏洞利用检测技术,该技术通过处理器硬件跟踪能力对程序执行的汇编指令序列进行提取和恢复,从而准确透明无感知的获取到程序完整的运行时汇编指令序列,其中可能包含漏洞利用
信息隐藏技术是一种将秘密信息隐藏在自然载体中而不改变载体感知特性的科学。图像、视频、语音、文本等多种数字媒体都可以作为信息隐藏的载体,而音频隐写技术是以音频为载体进行隐写的技术。现有的音频隐写方法主要是人工设计的方法,在算法设计时需要大量的对应的专业知识,门槛高,还面临很多挑战。此外,在大数据时代,媒体形式丰富多样,若信息隐藏模型只能针对单一类型的载体进行嵌入和提取,其安全性是不够的。我们希望无论