一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法技术

技术编号:34032248 阅读:25 留言:0更新日期:2022-07-06 11:25
本发明专利技术公开了一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法,共包括七个步骤,与现有技术相比的优点在于:本方案通过提供基于PE虚拟沙盒来保障恶意程序识别过程的安全性,该沙盒为Windows系统PE格式的可执行程序提供虚拟仿真的运行环境,既保障程序正确执行,又防止其产生逃逸,威胁到真实运行环境。威胁到真实运行环境。威胁到真实运行环境。

A method of implementing JS script virtual sandbox based on PE virtual sandbox

【技术实现步骤摘要】
一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法


[0001]本专利技术涉及信息安全领域,具体是指一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法。

技术介绍

[0002]目前在信息安全领域中,存在许多以JScript脚本为载体的恶意代码。JScript是由微软公司开发的一种通用脚本编程语言。脚本编程语言的特点在于:方便使用,脚本编辑完成后,可以直接由其执行器执行其所描述的逻辑。ECMA

262(European Computer Manufacturers Association)是一项计算机编程语言标准,其将ECMAScript编程语言进行了标准化。JScript脚本语言作为ECMAScript编程语言方言(与ECMAScript不完全兼容)实现,并运用于Windows操作系统上。

技术实现思路

[0003]本专利技术要解决的技术问题是JScript脚本容易进行文本混淆,造成可读性差,难以分析其执行逻辑,继而达到隐藏其潜在危害性的目的,鉴于此,本专利技术提供一种安全可控,动态执行,暴露与识别恶意JScript程序的方法。
[0004]为解决上述技术问题,本专利技术提供的技术方案为:一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法,包括以下步骤:
[0005]第一步,启动基于PE的虚拟沙盒,构建封闭、防逃逸的运行环境,用以保障运行其内的PE程序不会破坏其真实的操作系统环境,虚拟沙盒通过模拟仿真系统API,为运行其内的应用程序提供了运行时资源支持(包括但不限于文件系统操作,内存管理,注册表服务等);
[0006]第二步,载入并初始化JScript脚本虚拟沙盒,该沙盒提供JScript脚本运行环境,该环境是一组可运行的PE格式的程序,完全运行于PE虚拟沙盒之内,与真实操作系统无直接交互,运行于该虚拟沙盒的JScript程序,通过调用第一步中PE虚拟沙盒提供的,兼容于真实Windows系统的API访问,修改系统资源;
[0007]第三步,载入并运行待检测的JScript脚本,此脚本完全运行于JScript脚本虚拟沙盒之内,与PE虚拟沙盒无直接交互;
[0008]第四步,监测并记录JScript脚本运行过程中产出的文件及API调用,直至程序退出;
[0009]第五步,根据第四步产出,判定此次检测结果,判定依据包含且不限于:1)其运行过程中调用过哪些API;2)请求和/或访问过哪些系统资源;3)产出文件有哪些特征,是否包含敏感字段,是否是已知的恶意程序;4)是否删除/篡改沙盒(与真实系统一致)内重要的文件;5)是否访问已知恶意网络站点,下载已知恶意程序;6);是否记录用户输入设备;7)其他疑似对系统造成破坏/泄露的行为;
[0010]第六步,如果第五步检测判定为恶意程序,给出恶意程序类别,检测结束;
[0011]第七步,如果第五步检测判定为可信程序,给出判定结果,检测结束。
[0012]本专利技术与现有技术相比的优点在于:本方案通过提供基于PE虚拟沙盒来保障恶意程序识别过程的安全性,该沙盒为Windows系统PE格式的可执行程序提供虚拟仿真的运行环境,既保障程序正确执行,又防止其产生逃逸,威胁到真实运行环境。
[0013]进一步的,第四步的JScript脚本运行过程如下:1)JScript程序调用的操作系统API被PE虚拟沙盒记录;2)JScript程序创建/访问/修改/删除文件功能由操作系统API提供并执行,执行结果存在于PE虚拟沙盒内,可通过PE虚拟沙盒API获取/访问;3)JScript程序执行周期内对系统资源的访问/修改,由操作系统API提供并执行,执行结果存在于PE虚拟沙盒内,可通过PE虚拟沙盒API获取/访问。
附图说明
[0014]图1是一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法的层次结构图。
[0015]图2是一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法的流程示意图。
具体实施方式
[0016]下面结合附图对本专利技术做进一步的详细说明。
[0017]本专利技术在具体实施时,如图1和图2所示的实施例中,提出一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法,其特征在于包括以下步骤:
[0018]第一步,启动基于PE的虚拟沙盒,构建封闭、防逃逸的运行环境,用以保障运行其内的PE程序不会破坏其真实的操作系统环境,虚拟沙盒通过模拟仿真系统API,为运行其内的应用程序提供了运行时资源支持(包括但不限于文件系统操作,内存管理,注册表服务等);
[0019]第二步,载入并初始化JScript脚本虚拟沙盒,该沙盒提供JScript脚本运行环境,该环境是一组可运行的PE格式的程序,完全运行于PE虚拟沙盒之内,与真实操作系统无直接交互,运行于该虚拟沙盒的JScript程序,通过调用第一步中PE虚拟沙盒提供的,兼容于真实Windows系统的API访问,修改系统资源;
[0020]第三步,载入并运行待检测的JScript脚本,此脚本完全运行于JScript脚本虚拟沙盒之内,与PE虚拟沙盒无直接交互;
[0021]第四步,监测并记录JScript脚本运行过程中产出的文件及API调用,直至程序退出;
[0022]第五步,根据第四步产出,判定此次检测结果,判定依据包含且不限于:1)其运行过程中调用过哪些API;2)请求和/或访问过哪些系统资源;3)产出文件有哪些特征,是否包含敏感字段,是否是已知的恶意程序;4)是否删除/篡改沙盒(与真实系统一致)内重要的文件;5)是否访问已知恶意网络站点,下载已知恶意程序;6);是否记录用户输入设备;7)其他疑似对系统造成破坏/泄露的行为;
[0023]第六步,如果第五步检测判定为恶意程序,给出恶意程序类别,检测结束;
[0024]第七步,如果第五步检测判定为可信程序,给出判定结果,检测结束。
[0025]本专利技术首先通过提供基于PE(Portable Executable,Windows系统支持的一种可执行文件的格式,该格式可执行文件通常以.exe作为文件名后缀)虚拟沙盒,来保障恶意程
序识别过程的安全性。该沙盒为Windows系统PE格式的可执行程序提供虚拟仿真的运行环境。既保障程序正确执行,又防止其产生逃逸,威胁到真实运行环境。此沙盒还具有:1)记录其内运行的PE程序行为;2)为其内运行的PE程序提供各种系统资源(文件访问,网络连接等);3)保存其内运行的PE程序的各种产出(文件,文字输出等)。
[0026]进一步的,如图2所示的实施例中,第四步的JScript脚本运行过程如下:1)JScript程序调用的操作系统API被PE虚拟沙盒记录;2)JScript程序创建/访问/修改/删除文件功能由操作系统API提供并执行,执行结果存在于PE虚拟沙盒内,可通过PE虚拟沙盒API获取/访问;3)JScript程序执行周期内对系统资源的访问/修改,由操作系统API提供并执行,执行结果存在于PE虚拟沙盒内,可通过PE虚拟沙盒API获取本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于PE虚拟沙盒实现JS脚本虚拟沙盒的方法,其特征在于包括以下步骤:第一步,启动基于PE的虚拟沙盒,构建封闭、防逃逸的运行环境,用以保障运行其内的PE程序不会破坏其真实的操作系统环境,虚拟沙盒通过模拟仿真系统API,为运行其内的应用程序提供了运行时资源支持(包括但不限于文件系统操作,内存管理,注册表服务等);第二步,载入并初始化JScript脚本虚拟沙盒,该沙盒提供JScript脚本运行环境,该环境是一组可运行的PE格式的程序,完全运行于PE虚拟沙盒之内,与真实操作系统无直接交互,运行于该虚拟沙盒的JScript程序,通过调用第一步中PE虚拟沙盒提供的,兼容于真实Windows系统的API访问,修改系统资源;第三步,载入并运行待检测的JScript脚本,此脚本完全运行于JScript脚本虚拟沙盒之内,与PE虚拟沙盒无直接交互;第四步,监测并记录JScript脚本运行过程中产出的文件及API调用,直至程序退出;第五步,根据第四步产出,判定此次检测结果,判定依据包含且不限于:1)其运行过程中调...

【专利技术属性】
技术研发人员:周军刘刚
申请(专利权)人:北京火绒网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1