CN104462962A - 一种检测未知恶意代码和二进制漏洞的方法 - Google Patents

一种检测未知恶意代码和二进制漏洞的方法 Download PDF

Info

Publication number
CN104462962A
CN104462962A CN201310415916.9A CN201310415916A CN104462962A CN 104462962 A CN104462962 A CN 104462962A CN 201310415916 A CN201310415916 A CN 201310415916A CN 104462962 A CN104462962 A CN 104462962A
Authority
CN
China
Prior art keywords
code
sandbox
program
malicious code
unknown malicious
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310415916.9A
Other languages
English (en)
Other versions
CN104462962B (zh
Inventor
林榆坚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING AISEC TECHNOLOGY Co Ltd
Original Assignee
BEIJING AISEC TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING AISEC TECHNOLOGY Co Ltd filed Critical BEIJING AISEC TECHNOLOGY Co Ltd
Priority to CN201310415916.9A priority Critical patent/CN104462962B/zh
Publication of CN104462962A publication Critical patent/CN104462962A/zh
Application granted granted Critical
Publication of CN104462962B publication Critical patent/CN104462962B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种检测未知恶意代码和二进制漏洞的方法,其包括以下步骤:(S100)基础搭建,其包括(S101)设置动态沙箱还原点;(S102)将代码载入动态沙箱。(S200)检测,其包括(S201)利用路径执行技术在可疑代码中寻找所有的可执行路径;(S202)动态强制执行所有代码路径;(S203)内存监控单元介入,监控代码执行动作;(S204)分析系统状态,记录未知恶意代码和漏洞路径;(S205)输出报警。(S300)系统还原,其包括重置沙箱,还原虚拟机。本发明步骤简单、合理,不仅能准确检测并判断未知病毒木马及未知恶意代码,而且检出率高、延迟低且防攻击能力强,适于推广与应用。

Description

一种检测未知恶意代码和二进制漏洞的方法
技术领域
本发明涉及信息安全领域中网络安全的检测判断技术领域,尤其涉及一种检测未知恶意代码和二进制漏洞的方法。 
背景技术
传统方法检测未知恶意代码或者二进制漏洞,主要采用基于代码序列特征码(即特征匹配)检测、启发式检测、基于异常行为检测、基于行为结果检测四种检测技术,这四种方式主要工作原理是对程序进行特征匹配、通过大量样本分析程序调用的系统函数、监视程序运行的异常行为、分析代码执行后的运行结果和系统状态等。 
这四种方式有误报率高、漏报率高、占用资源多、效率低、有效期短、防攻击能力弱等缺点。传统方法通常要对数据包进行解压、重组、分析等步骤的处理。在大流量、大规模的检测情况下,会极大的占用网络和设备资源,甚至影响正常业务的运行。而且采用特征匹配的方式无法检测最新式的未知恶意代码,只有恶意程序爆发并被采集分析,提取出特征码之后才能够进行有效检测,这样无疑会落后于未知恶意代码的攻击行动,造成了很大的安全隐患。随着互联网业务的快速发展,这些传统方式已经不适应现在的web环境。 
上述可知,有必要对现有技术进一步完善。 
发明内容
本发明是为了解决现有检测未知恶意代码或者二进制漏洞的方法误报率高、漏报率高、占用资源多、效率低、有效期短、防攻击能力弱等问题而提出一种不仅能准确检测并判断未知病毒木马及未知恶意代码,而且检出率高、延迟低且防攻击能力强的检测未知恶意代码和二进制漏洞的方法。 
本发明是通过以下技术方案实现的: 
上述的检测未知恶意代码和二进制漏洞的方法,其包括以下步骤: 
(S100)基础搭建 
依次包括(S101)设置动态沙箱还原点;(S102)将代码载入动态沙箱; 
(S200)检测 
依次包括(S201)利用路径执行技术在可疑代码中寻找所有的可执行路径;(S202)动态强制执行所有代码路径;(S203)内存监控单元介入,监控代码执行动作;(S204)分析系统状态,记录未知恶意代码和漏洞路径;(S205)输出报警; 
(S300)系统还原,即重置沙箱,还原虚拟机。 
所述检测未知恶意代码和二进制漏洞的方法,其中:所述步骤(S201)即指将恶意程序全部拆分为树形结构,检测时不受程序逻辑关系限制,独立检测每一个拆分的分支程序,在遇到call指令生成子进程时,将子进程标记检测;如果判断为混淆程序则舍弃子进程,同时加强程序为恶意代码程序的可能性;将检测结果与路径树和拆分索引比对,快速、准确定位恶意代码在程序中的位置,以便人工核实。 
所述检测未知恶意代码和二进制漏洞的方法,其中:所述步骤(S203)即指将计算机操作系统在运行的过程中内容是完全一样的一部分空间,作为虚拟机使用。 
所述检测未知恶意代码和二进制漏洞的方法,其中:所述步骤(S300)即指在计算机中构造一个独立密闭的虚拟空间,空间中有真实计算机所有的全部环境,即可完整模拟一个计算机系统,使所有代码和程序的操作都在沙箱中运行,以避免真实机器受到损害;在真实环境中的计算机操作系统仍然正常运行的情况下,将所有运行在沙箱中的代码和程序对机器所做的所有操作都重定向到一部分特定的文件夹,模拟注册表、端口等的修改;当检测完成后,虚拟的沙箱根据设置的还原点,快速还原。 
有益效果: 
本发明检测未知恶意代码和二进制漏洞的方法改进了传统方法特征码匹配、分析代码调用系统API函数列表和函数关系,监控系统进程指令,分析系统注册表、进程、端口等的状态变化等四种传统手段。通过动态强制执行所有代码路径,能有效地检测未知病毒木马的免杀手段,从而提高检出能力。同时内存监控单元可以有效判断未知恶意代码行为。分析判断过程完成,记录未知 恶意代码和二进制漏洞路径之后,对外输出报警,并快速还原沙箱。该方法不仅能准确检测并判断未知病毒木马及未知恶意代码,而且检出率高、延迟低且防攻击能力强,适于推广与应用。 
附图说明
图1为本发明检测未知恶意代码和二进制漏洞的方法的流程图。 
具体实施方式
本发明检测未知恶意代码和二进制漏洞的方法,包括以下步骤: 
1、基础搭建 
依次包括(1)设置动态沙箱还原点; 
(2)将代码载入动态沙箱; 
2、检测 
依次包括(1)利用路径执行技术在可疑代码中寻找所有的可执行路径;即将恶意程序全部拆分为树形结构,检测时不受程序逻辑关系限制,独立检测每一个拆分的分支程序,在遇到call指令生成子进程时,将子进程标记检测;如果判断为混淆程序则舍弃子进程,同时加强程序为恶意代码程序的可能性;将检测结果与路径树和拆分索引比对,快速、准确定位恶意代码在程序中的位置,以便人工核实。 
(2)动态强制执行所有代码路径; 
(3)内存监控单元介入,监控代码执行动作;即将计算机操作系统在运行的过程中内容是完全一样的一部分空间,作为虚拟机使用; 
(4)分析系统状态,记录未知恶意代码和漏洞路径; 
(5)输出报警; 
3、系统还原 
重置沙箱,还原虚拟机;即在计算机中构造一个独立密闭的虚拟空间,空间中有真实计算机所有的全部环境,即可完整模拟一个计算机系统,使所有代码和程序的操作都在沙箱中运行,以避免真实机器受到损害;在真实环境中的计算机操作系统仍然正常运行的情况下,将所有运行在沙箱中的代码和程序对机器所做的所有操作都重定向到一部分特定的文件夹,模拟注册表、端口等的修改;当检测完成后,虚拟的沙箱根据设置的还原点,快速还原。 
其中,第1步中的设置沙箱还原点是为了一个检测进程结束以后沙箱系统的重置,之所以选择在沙箱中运行检测未知恶意代码,是因为在未知恶意代码运行的过程中,会对系统造成很多不可挽回的损害和改变,使用沙箱可以有效的避免这点;同时,在一次检测进程结束后,可以按照最开始设置的还原点快速重置沙箱。 
实施例 
以检测javascript代码为例:在代码载入沙箱中后,系统就完全托管了Javascript虚拟机,从二进制代码中寻找所有的可执行路径,不放过任何的漏洞入口; 
本发明步骤简单、合理,不仅能准确检测并判断未知病毒木马及未知恶意代码,而且检出率高、延迟低且防攻击能力强,适于推广与应用。 

Claims (4)

1.一种检测未知恶意代码和二进制漏洞的方法,其特征在于,包括以下步骤:
(S100)基础搭建
即依次包括(S101)设置动态沙箱还原点;(S102)将代码载入动态沙箱;
(S200)检测
即依次包括(S201)利用路径执行技术在可疑代码中寻找所有的可执行路径;(S202)动态强制执行所有代码路径;(S203)内存监控单元介入,监控代码执行动作;(S204)分析系统状态,记录未知恶意代码和漏洞路径;(S205)输出报警;
(S300)系统还原,即重置沙箱,还原虚拟机。
2.如权利要求1所述的检测未知恶意代码和二进制漏洞的方法,其特征在于:所述步骤(S201)即指将恶意程序全部拆分为树形结构,检测时不受程序逻辑关系限制,独立检测每一个拆分的分支程序,在遇到call指令生成子进程时,将子进程标记检测;如果判断为混淆程序则舍弃子进程,同时加强程序为恶意代码程序的可能性;将检测结果与路径树和拆分索引比对,快速、准确定位恶意代码在程序中的位置,以便人工核实。
3.如权利要求1所述的检测未知恶意代码和二进制漏洞的方法,其特征在于:所述步骤(S203)即指将计算机操作系统在运行的过程中内容是完全一样的一部分空间,作为虚拟机使用。
4.如权利要求1所述的检测未知恶意代码和二进制漏洞的方法,其特征在于:所述步骤(S300)即指在计算机中构造一个独立密闭的虚拟空间,空间中有真实计算机所有的全部环境,即可完整模拟一个计算机系统,使所有代码和程序的操作都在沙箱中运行,以避免真实机器受到损害;在真实环境中的计算机操作系统仍然正常运行的情况下,将所有运行在沙箱中的代码和程序对机器所做的所有操作都重定向到一部分特定的文件夹,模拟注册表、端口等的修改;当检测完成后,虚拟的沙箱根据设置的还原点,快速还原。
CN201310415916.9A 2013-09-13 2013-09-13 一种检测未知恶意代码和二进制漏洞的方法 Active CN104462962B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310415916.9A CN104462962B (zh) 2013-09-13 2013-09-13 一种检测未知恶意代码和二进制漏洞的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310415916.9A CN104462962B (zh) 2013-09-13 2013-09-13 一种检测未知恶意代码和二进制漏洞的方法

Publications (2)

Publication Number Publication Date
CN104462962A true CN104462962A (zh) 2015-03-25
CN104462962B CN104462962B (zh) 2018-07-03

Family

ID=52908987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310415916.9A Active CN104462962B (zh) 2013-09-13 2013-09-13 一种检测未知恶意代码和二进制漏洞的方法

Country Status (1)

Country Link
CN (1) CN104462962B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105590058A (zh) * 2015-12-18 2016-05-18 北京奇虎科技有限公司 虚拟机逃逸的检测方法及装置
CN107172035A (zh) * 2017-05-11 2017-09-15 北京安赛创想科技有限公司 网络攻击信息的检测方法及装置
US9785778B2 (en) 2013-12-03 2017-10-10 Microsoft Technology Licensing, Llc Directed execution of dynamic programs in isolated environments
CN107408053A (zh) * 2015-04-10 2017-11-28 谷歌公司 到本原客户端的二进制翻译
WO2018129916A1 (zh) * 2017-01-16 2018-07-19 华为技术有限公司 沙箱检测的方法、沙箱系统和沙箱设备
CN108334773A (zh) * 2017-09-11 2018-07-27 北京安天网络安全技术有限公司 一种执行文件检测行为的不同分支的方法和装置
CN108875361A (zh) * 2017-12-28 2018-11-23 北京安天网络安全技术有限公司 一种监控程序的方法、装置、电子设备及存储介质
CN110502892A (zh) * 2019-07-09 2019-11-26 成都亚信网络安全产业技术研究院有限公司 一种异常测试进程的确定方法、装置及系统
CN113672917A (zh) * 2021-08-04 2021-11-19 安天科技集团股份有限公司 恶意代码检测方法、装置、存储介质及电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1925494A (zh) * 2006-09-28 2007-03-07 北京理工大学 一种基于行为特征的网页木马检测方法
US20070240215A1 (en) * 2006-03-28 2007-10-11 Blue Coat Systems, Inc. Method and system for tracking access to application data and preventing data exploitation by malicious programs
CN101154258A (zh) * 2007-08-14 2008-04-02 电子科技大学 恶意程序动态行为自动化分析系统与方法
US7886272B1 (en) * 2006-03-16 2011-02-08 Avaya Inc. Prioritize code for testing to improve code coverage of complex software
CN102012988A (zh) * 2010-12-02 2011-04-13 张平 自动二进制恶意代码行为分析方法
CN102254111A (zh) * 2010-05-17 2011-11-23 北京知道创宇信息技术有限公司 恶意网站检测方法及装置
CN102339371A (zh) * 2011-09-14 2012-02-01 奇智软件(北京)有限公司 一种检测恶意程序的方法、装置及虚拟机
CN102693396A (zh) * 2012-06-11 2012-09-26 中南大学 一种基于虚拟执行模式的Flash漏洞检测方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7886272B1 (en) * 2006-03-16 2011-02-08 Avaya Inc. Prioritize code for testing to improve code coverage of complex software
US20070240215A1 (en) * 2006-03-28 2007-10-11 Blue Coat Systems, Inc. Method and system for tracking access to application data and preventing data exploitation by malicious programs
CN1925494A (zh) * 2006-09-28 2007-03-07 北京理工大学 一种基于行为特征的网页木马检测方法
CN101154258A (zh) * 2007-08-14 2008-04-02 电子科技大学 恶意程序动态行为自动化分析系统与方法
CN102254111A (zh) * 2010-05-17 2011-11-23 北京知道创宇信息技术有限公司 恶意网站检测方法及装置
CN102012988A (zh) * 2010-12-02 2011-04-13 张平 自动二进制恶意代码行为分析方法
CN102339371A (zh) * 2011-09-14 2012-02-01 奇智软件(北京)有限公司 一种检测恶意程序的方法、装置及虚拟机
CN102693396A (zh) * 2012-06-11 2012-09-26 中南大学 一种基于虚拟执行模式的Flash漏洞检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张永超: ""基于虚拟执行技术的恶意程序检测系统研究与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9785778B2 (en) 2013-12-03 2017-10-10 Microsoft Technology Licensing, Llc Directed execution of dynamic programs in isolated environments
CN107408053A (zh) * 2015-04-10 2017-11-28 谷歌公司 到本原客户端的二进制翻译
CN107408053B (zh) * 2015-04-10 2021-04-16 谷歌有限责任公司 用于到本原客户端的二进制翻译的方法、系统和介质
CN105590058A (zh) * 2015-12-18 2016-05-18 北京奇虎科技有限公司 虚拟机逃逸的检测方法及装置
WO2018129916A1 (zh) * 2017-01-16 2018-07-19 华为技术有限公司 沙箱检测的方法、沙箱系统和沙箱设备
CN107172035A (zh) * 2017-05-11 2017-09-15 北京安赛创想科技有限公司 网络攻击信息的检测方法及装置
CN108334773A (zh) * 2017-09-11 2018-07-27 北京安天网络安全技术有限公司 一种执行文件检测行为的不同分支的方法和装置
CN108875361A (zh) * 2017-12-28 2018-11-23 北京安天网络安全技术有限公司 一种监控程序的方法、装置、电子设备及存储介质
CN110502892A (zh) * 2019-07-09 2019-11-26 成都亚信网络安全产业技术研究院有限公司 一种异常测试进程的确定方法、装置及系统
CN113672917A (zh) * 2021-08-04 2021-11-19 安天科技集团股份有限公司 恶意代码检测方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN104462962B (zh) 2018-07-03

Similar Documents

Publication Publication Date Title
CN104462962A (zh) 一种检测未知恶意代码和二进制漏洞的方法
KR102306568B1 (ko) 컴퓨터 시스템의 제어 흐름 무결성의 프로세서 트레이스 기반 집행
Liu et al. Behavior-based malware analysis and detection
Carmony et al. Extract Me If You Can: Abusing PDF Parsers in Malware Detectors.
US9405899B2 (en) Software protection mechanism
US10055585B2 (en) Hardware and software execution profiling
US20170054754A1 (en) Malware and exploit campaign detection system and method
EP3232359B1 (en) Identification device, identification method, and identification program
CN102043915B (zh) 一种非可执行文件中包含恶意代码的检测方法及其装置
CN107408176A (zh) 恶意对象的执行剖析检测
CN106611122A (zh) 基于虚拟执行的未知恶意程序离线检测系统
KR101972825B1 (ko) 하이브리드 분석 기술을 이용한 임베디드 기기 취약점 자동 분석 방법, 장치 및 그 방법을 실행하는 컴퓨터 프로그램
Zhu et al. FIoT: Detecting the memory corruption in lightweight IoT device firmware
Dai et al. Behavior-based malware detection on mobile phone
CN105678164A (zh) 检测恶意软件的方法及装置
CN102624721B (zh) 一种特征码验证平台装置及特征码验证方法
CN113572726A (zh) 一种多模态网络控制-数据平面一致性校验方法及装置
Gržinić et al. Methods for automatic malware analysis and classification: a survey
He et al. Toward hybrid static-dynamic detection of vulnerabilities in IoT firmware
CN115001789A (zh) 一种失陷设备检测方法、装置、设备及介质
CN107122664B (zh) 安全防护方法及装置
Ding et al. Accurate and efficient exploit capture and classification
CN105025067A (zh) 一种信息安全技术研究平台
Jia et al. Defending return‐oriented programming based on virtualization techniques
CN104331364A (zh) 一种移动平台应用软件的检测方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method of detecting binary vulnerabilities and unknown code

Effective date of registration: 20201204

Granted publication date: 20180703

Pledgee: Beijing ustron Tongsheng financing Company limited by guarantee

Pledgor: BEIJING AISEC CREATED TECHNOLOGY Co.,Ltd.

Registration number: Y2020990001420

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20230313

Granted publication date: 20180703

Pledgee: Beijing ustron Tongsheng financing Company limited by guarantee

Pledgor: BEIJING AISEC CREATED TECHNOLOGY CO.,LTD.

Registration number: Y2020990001420

PC01 Cancellation of the registration of the contract for pledge of patent right