一种针对反虚拟化恶意程序的检测方法及系统与流程

文档序号:37059218发布日期:2024-02-20 21:09阅读:19来源:国知局
一种针对反虚拟化恶意程序的检测方法及系统与流程

本发明涉及网络空间安全,尤其涉及到一种针对反虚拟化恶意程序的检测方法及系统。


背景技术:

1、当前,主流的防病毒软件根据病毒特征码匹配来识别可疑文件,可有效对抗大部分计算机病毒;为躲避检测,非法黑客不断修改恶意程序的特征码以隐藏程序特征、突破防护软件的防御。为应对病毒迭代进化,基于程序行为自主分析判断的主动防御技术应运而生,从病毒本源出发,以程序的行为作为判断病毒的依据,取得较好的防护效果;然而,部分程序行为是否合法存在边界模糊的情况,需要用户运用专业知识进行实时判断,不仅工作量大、效率低,而且对用户的专业水平提出了较高的要求。

2、由于虚拟云技术发展,网络安全人员利用虚拟环境测试、评估恶意程序的研究不断深化。为躲避虚拟环境的分析、检测,非法黑客嵌入反虚拟化字段以检测恶意程序运行环境,自动在虚拟环境停止运行以减少脆弱点暴露;随着大规模云应用上线,虚拟化环境攻击价值急剧上升,部分高级病毒增加了检测虚拟应用、检测人工参与的功能,隐蔽性大为提高,给病毒检测、病毒防护带来了新的挑战。


技术实现思路

1、有鉴于此,本发明提供了一种对虚拟化测试环境的特征进行修改、隐藏,躲避部分高级恶意程序对虚拟化运行环境侦测手段,能够有效识别、检测、防御反虚拟化恶意程序的检测方法及检测系统。

2、根据第一方面,本发明提供了一种针对反虚拟化恶意程序的检测方法,包括如下步骤:

3、获取待测程序的文件格式及所需运行环境;

4、根据待测程序的文件格式及所需运行环境构建并部署虚拟环境;

5、在虚拟环境下第一次执行待测程序,并获取待测程序执行时的网络层、系统层和应用层的第一行为数据;

6、根据预设恶意行为规则对第一行为数据进行分析,判断待测程序是否有恶意行为;

7、当待测程序有恶意行为时,分析恶意行为并生成分析报告;

8、当待测程序没有恶意行为时,在隐藏虚拟化特征后的虚拟环境下第二次执行待测程序,并获取待测程序执行时的网络层、系统层和应用层的第二行为数据;

9、根据预设恶意行为规则对第二行为数据进行分析。

10、作为本发明的一种可选实现方式,隐藏虚拟化特征是指对虚拟环境中的注册表、进程、文件和命令行进行修改,隐藏其中的虚拟化特征。

11、作为本发明的一种可选实现方式,根据预设恶意行为规则对第二行为数据进行分析的步骤,具体包括如下步骤:

12、根据预设恶意行为规则对第二行为数据进行分析,判断待测程序是否有恶意行为;

13、当待测程序有恶意行为时,分析恶意行为并生成分析报告;

14、当待测程序没有恶意行为时,在隐藏虚拟化特征且模拟仿真人在回路后的虚拟环境下第三次执行待测程序,并获取待测程序执行时的网络层、系统层和应用层的第三行为数据;

15、根据预设恶意行为规则对第三行为数据进行分析。

16、作为本发明的一种可选实现方式,模拟仿真人在回路是指在虚拟环境部署一套内部论坛形式的网站,并进行基于伪随机数的不定周期模拟操作,模仿用户在不同时间间隔内执行浏览、读写、上传、下载等操作。

17、作为本发明的一种可选实现方式,获取待测程序的文件格式及运行环境的步骤之前,还包括如下步骤:

18、使用反汇编技术对待测程序进行检测,判断待测程序是否存在加壳或者混淆;

19、当待测程序既不存在加壳也不存在混淆时,判定待测程序为无害程序并生成分析报告;

20、根据预设虚拟化检测规则,检查待测程序中是否有与虚拟化检测规则相匹配的关键词;

21、当待测程序既不存在加壳也不存在混淆时,判定待测程序为无害程序并生成分析报告;

22、当待测程序中具有与虚拟化检测规则相匹配的关键词时,判定待测程序为恶意程序并生成分析报告;

23、当待测程序中没有与虚拟化检测规则相匹配的关键词,但是存在加壳或者混淆时,执行获取待测程序的文件格式及运行环境的步骤。

24、根据第二方面,本发明实施例提供了一种针对反虚拟化恶意程序的检测系统,包括:

25、静态分析模块,用于对待测程序的文件格式和所需运行环境等要素进行分析;

26、环境构建模块,与静态分析模块和检测控制模块相连接,用于在接收到检测控制模块的构建指示时根据静态分析模块发送的待测程序的文件格式和所需运行环境构建虚拟环境;

27、环境部署模块,与检测控制模块相连接,用于安装虚拟环境运行所需的业务软件、办公软件等;

28、特征隐藏模块,与控制模块相连接,用于在接收到检测控制模块的隐藏指令时对虚拟环境的虚拟化特征进行隐藏;

29、恶意行为跟踪模块,用于根据待测程序的网络层、系统层和应用层的行为,得到待测程序执行期间的行为数据;

30、恶意行为分析模块,用于对行为数据进行解析,并根据预设恶意行为规则判断待测程序是否存在恶意行为;

31、检测控制模块,用于在虚拟环境部署结束后将待测程序上传至虚拟环境,并控制虚拟环境运行、待测程序开始第一次执行;还用于在待测程序第一次执行后的行为数据被判断为不存在恶意行为时,给特征隐藏模块下发隐藏指令,并在特征隐藏模块完成虚拟化特征隐藏后控制待测程序开始第二次执行。

32、作为本发明的一种可选实现方式,针对反虚拟化恶意程序的检测系统还包括:

33、模拟仿真模块,与检测控制模块相连接,用于在接收到检测控制模块的模拟指令时在虚拟环境内部署仿真人在回路的虚拟化业务环境,并监控虚拟化业务环境的运行状态;

34、检测控制模块还用于在待测程序第二次执行后的行为数据被判断为不存在恶意行为时,给模拟仿真模块下发模拟指令,并在模拟仿真模块完成部署的虚拟化业务环境运行后控制待测程序开始第三次执行。

35、作为本发明的一种可选实现方式,模拟仿真模块部署的虚拟化业务环境可以为多个,模拟仿真模块还用于在运行中的一个虚拟化业务环境故障时,强制销毁故障的虚拟化业务环境,并调用另一个虚拟化业务环境进行替换。

36、作为本发明的一种可选实现方式,模拟仿真模块采用java+springboot+vue+mysql+redis的框架进行论坛搭建,并采用selenium+yaml+xpath+sleep+python的框架搭建用户操作模拟部分,以进行基于伪随机数的不定周期模拟操作,模仿用户在不同时间间隔内执行浏览、读写、上传、下载等操作。

37、作为本发明的一种可选实现方式,静态分析模块还用于采用反汇编技术检测待测程序是否存在加壳或者混淆,并在待测程序既不存在加壳也不混淆时,生成待测程序为无害程序的分析报告;静态分析模块还用于检查待测程序中是否有与虚拟化检测规则相匹配的关键词,并在待测程序具有与虚拟化检测规则相匹配的关键词时,生成待测程序为恶意程序的分析报告;

38、检测控制模块用于在待测程序没有与虚拟化检测规则相匹配的关键词,但是存在加壳或者混淆时,向环境构建模块下发构建指示。

39、本发明提供的技术方案,具有如下优点:

40、1、本发明提供的针对反虚拟化恶意程序的检测方法,通过修改(如采用填入随机数列、字符串的方式)虚拟环境的虚拟化特征(如虚拟环境的进程、文件、驱动程序、注册表等),将虚拟环境的虚拟化特征隐藏(特征隐藏发生在虚拟环境加载前,不影响虚拟化文件),并对被测程序进行二次执行和恶意行为判定,能够防止部分高级恶意程序绕过自动检测分析系统的行为分析,有效识别、检测、防御反虚拟化的恶意程序。

41、2、本发明提供的针对反虚拟化恶意程序的检测方法,基于部分高级恶意程序对虚拟化环境进行业务真实性检测,如是否承担实际业务、存在价值流量、是否人工操作等要素;本发明通过对虚拟环境进行人在回路的动作模拟,有效躲避高级恶意程序对虚拟化环境甄别,提高了对反虚拟化程序的检测成功率。

42、3、本发明提供的针对反虚拟化恶意程序的检测方法,在对被测程序进行动态检测之前,先对待测程序进行静态检测,判断其是否存在混淆、加壳或者进行虚拟化检测关键词检索,兼顾静态检测高效、动态检测全面的优势。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1