CN112784265A - 一种虚拟沙盒针对混淆代码的优化方法 - Google Patents
一种虚拟沙盒针对混淆代码的优化方法 Download PDFInfo
- Publication number
- CN112784265A CN112784265A CN202110161967.8A CN202110161967A CN112784265A CN 112784265 A CN112784265 A CN 112784265A CN 202110161967 A CN202110161967 A CN 202110161967A CN 112784265 A CN112784265 A CN 112784265A
- Authority
- CN
- China
- Prior art keywords
- code
- virtual
- codes
- virtual sandbox
- sandbox
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
本发明公开一种虚拟沙盒针对混淆代码的优化方法,通过在阶段性时间片内在虚拟沙盒中的运行,定位到在时间片结束后病毒样本在虚拟沙盒中的运行代码位置;根据阶段性时间片运行后,通过对当前代码所在位置进行模式匹配的方式,最终决定虚拟沙盒当前所在位置代码特征或所调用API决定是否执行优化逻辑;针对需要进行优化的病毒样本,相对于之前代码所在位置进行准确特征识别等步骤,本发明在基于反病毒虚拟机引擎针对病毒样本中的混淆代码进行优化的方法,最终决定虚拟沙盒当前所在位置代码特征或所调用API决定是否执行优化逻辑,然后针对需要进行优化的病毒样本,相较于之前代码所在位置进行准确特征识别,最终达到对病毒样本的通用检出效果。
Description
技术领域
本发明涉及信息安全技术领域,特别是涉及一种虚拟沙盒针对混淆代码的优化方法。
背景技术
目前在信息安全领域中,恶意代码检测一直都是各个安全厂商所面临的首要问题。但是近年来,一些主流病毒家族为了与安全软件厂商进行免杀对抗,大范围在病毒样本中使用代码混淆技术。安全软件厂商为了与不断变化的混淆代码进行对抗,追求更高的病毒检出率,从而发展出了虚拟沙盒技术。反病毒引擎中的虚拟沙盒,可以用来将病毒样本在虚拟环境中进行虚拟执行,最终通过判断行为及中间内存特征达到更高的检出效果。但是随着病毒混淆代码技术的不断发展,其混淆代码中会加入超大的耗时循环(如:无用代码重复执行100万次之后再执行实质性的病毒代码),导致病毒样本在有限的扫描时间内无法在虚拟沙盒中运行到实质性病毒代码,最终导致反病毒引擎无法针对此类混淆样本达到原有的通用检测目的。
发明内容
鉴于此,本发明提供了一种虚拟沙盒针对混淆代码的优化方法,具体方案如下:
一种虚拟沙盒针对混淆代码的优化方法,包括
根据病毒在阶段性时间片(如:若干条汇编指令)执行后所处的代码特征,匹配混淆代码中冗余、超时操作相关代码,进行针对性代码或执行环境优化;
根据病毒在阶段性时间片内重复调用的系统API(application programminginterface)执行后所处的代码特征,匹配混淆代码中冗余、超时操作相关代码,进行针对性代码或执行环境优化;
根据该病毒样本中的混淆代码,选择在虚拟沙盒中具体的代码和环境优化处理流程;
具体的操作步骤如下:
步骤一,通过在阶段性时间片内在虚拟沙盒中的运行,定位到在时间片结束后病毒样本在虚拟沙盒中的运行代码位置;
步骤二,根据阶段性时间片运行后,通过对当前代码所在位置进行模式匹配的方式,最终决定虚拟沙盒当前所在位置代码特征或所调用API决定是否执行优化逻辑;
步骤三,针对需要进行优化的病毒样本,相对于之前代码所在位置进行准确特征识别;
步骤四,在特征识别后,根据现有情况决定具体的优化逻辑,即:进行虚拟环境修改或进行代码逻辑二进制修改;
步骤五,在进行优化之后,继续进行虚拟执行代码。
采用上述技术方案,具有如下有益效果:
本发明在基于反病毒虚拟机引擎针对病毒样本中的混淆代码进行优化的方法,在虚拟沙盒中运行,在时间结束后定位到病毒样本在虚拟沙盒中的运行代码位置,并通过对当前代码所在的位置进行模式匹配,最终决定虚拟沙盒当前所在位置代码特征或所调用API决定是否执行优化逻辑,然后针对需要进行优化的病毒样本,相较于之前代码所在位置进行准确特征识别,判断是否需要优化,最终达到对病毒样本的通用检出效果。
附图说明
图1为本发明使用的样本代码优化流程;
图2为本发明样本需要优化的代码情况;
图3为本发明所使用样本的最终检测结果。
具体实施方式
下面结合附图对本发明做进一步说明。
实施例1:一种虚拟沙盒针对混淆代码的优化方法,包括
根据病毒在阶段性时间片(如:若干条汇编指令)执行后所处的代码特征,匹配混淆代码中冗余、超时操作相关代码,进行针对性代码或执行环境优化;
根据病毒在阶段性时间片内重复调用的系统API(application programminginterface)执行后所处的代码特征,匹配混淆代码中冗余、超时操作相关代码,进行针对性代码或执行环境优化;
根据该病毒样本中的混淆代码,选择在虚拟沙盒中具体的代码和环境优化处理流程;
具体的操作步骤如下:
步骤一,通过在阶段性时间片内在虚拟沙盒中的运行,定位到在时间片结束后病毒样本在虚拟沙盒中的运行代码位置;
步骤二,根据阶段性时间片运行后,通过对当前代码所在位置进行模式匹配的方式,最终决定虚拟沙盒当前所在位置代码特征或所调用API决定是否执行优化逻辑;
步骤三,针对需要进行优化的病毒样本,相对于之前代码所在位置进行准确特征识别;
步骤四,在特征识别后,根据现有情况决定具体的优化逻辑,即:进行虚拟环境修改或进行代码逻辑二进制修改;
步骤五,在进行优化之后,继续进行虚拟执行代码。
在进行具体操作时,第一步,假设运行环境为虚拟沙盒,通过对案例样本(sha1:2084e7c60de40d6a903dd7f56e3f9f102373f538)若干万条指令的执行后,定位到在时间片结束后病毒样本在虚拟沙盒中的运行代码位置。
第二步,根据第一步过后所得到的代码位置特征,通过匹配虚拟沙盒当前所在位置代码特征,在dword ptr[ebp-314]为0的前提情况下,当前代码位置需要当dword ptr[ebp-314]大于等于0xFFFFFFFF时才能继续执行后续流程,且循环内无具有实际意义代码,则命中优化规则。
第三步,根据命中的需要优化的代码情况,在虚拟沙盒中将0x40125C处代码全部使用nop(0x90)填充。
第四步,继续在虚拟沙盒中执行优化后样本代码,即可直接执行后续代码流程,最终再更短的时间内得出检测结果。
本发明在基于反病毒虚拟机引擎针对病毒样本中的混淆代码进行优化的方法,在虚拟沙盒中运行,在时间结束后定位到病毒样本在虚拟沙盒中的运行代码位置,并通过对当前代码所在的位置进行模式匹配,最终决定虚拟沙盒当前所在位置代码特征或所调用API决定是否执行优化逻辑,然后针对需要进行优化的病毒样本,相较于之前代码所在位置进行准确特征识别,判断是否需要优化,最终达到对病毒样本的通用检出效果。
以上描述了本发明的基本原理和主要特征,本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内,发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (1)
1.一种虚拟沙盒针对混淆代码的优化方法,其特征在于,包括
根据病毒在阶段性时间片(如:若干条汇编指令)执行后所处的代码特征,匹配混淆代码中冗余、超时操作相关代码,进行针对性代码或执行环境优化;
根据病毒在阶段性时间片内重复调用的系统API(application programminginterface)执行后所处的代码特征,匹配混淆代码中冗余、超时操作相关代码,进行针对性代码或执行环境优化;
根据该病毒样本中的混淆代码,选择在虚拟沙盒中具体的代码和环境优化处理流程;
具体的操作步骤如下:
步骤一,通过在阶段性时间片内在虚拟沙盒中的运行,定位到在时间片结束后病毒样本在虚拟沙盒中的运行代码位置;
步骤二,根据阶段性时间片运行后,通过对当前代码所在位置进行模式匹配的方式,最终决定虚拟沙盒当前所在位置代码特征或所调用API决定是否执行优化逻辑;
步骤三,针对需要进行优化的病毒样本,相对于之前代码所在位置进行准确特征识别;
步骤四,在特征识别后,根据现有情况决定具体的优化逻辑,即:进行虚拟环境修改或进行代码逻辑二进制修改;
步骤五,在进行优化之后,继续进行虚拟执行代码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110161967.8A CN112784265A (zh) | 2021-02-05 | 2021-02-05 | 一种虚拟沙盒针对混淆代码的优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110161967.8A CN112784265A (zh) | 2021-02-05 | 2021-02-05 | 一种虚拟沙盒针对混淆代码的优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112784265A true CN112784265A (zh) | 2021-05-11 |
Family
ID=75761018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110161967.8A Pending CN112784265A (zh) | 2021-02-05 | 2021-02-05 | 一种虚拟沙盒针对混淆代码的优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112784265A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116738429A (zh) * | 2023-08-15 | 2023-09-12 | 之江实验室 | 基于生成对抗的目标检测引擎优化方法、装置及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104603756A (zh) * | 2012-08-16 | 2015-05-06 | 高通股份有限公司 | 经由沙盒执行的推测性的资源预提取 |
US9817974B1 (en) * | 2015-11-10 | 2017-11-14 | Trend Micro Incorporated | Anti-malware program with stalling code detection |
US9900324B1 (en) * | 2014-01-29 | 2018-02-20 | SecondWrite LLC | System to discover and analyze evasive malware |
WO2018072713A1 (zh) * | 2016-10-19 | 2018-04-26 | 北京豆荚科技有限公司 | 通信系统和电子设备 |
US10642980B1 (en) * | 2019-11-18 | 2020-05-05 | Clean.io, Inc. | Detecting cross-origin malicious code existing in internet advertisements |
US20200159913A1 (en) * | 2014-11-20 | 2020-05-21 | Huawei Technologies Co., Ltd. | Malware Detection Method and Malware Detection Apparatus |
EP3660602A1 (en) * | 2018-11-30 | 2020-06-03 | CODESYS Holding GmbH | Testing code for an industrial control program in an ancillary environment |
US10789354B1 (en) * | 2019-10-01 | 2020-09-29 | Capital One Services, Llc | Computer-based systems configured for detecting and sandboxing external resources and methods of use thereof |
US20200356661A1 (en) * | 2019-05-10 | 2020-11-12 | Clean.io, Inc. | Detecting malicious code received from malicious client side injection vectors |
-
2021
- 2021-02-05 CN CN202110161967.8A patent/CN112784265A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104603756A (zh) * | 2012-08-16 | 2015-05-06 | 高通股份有限公司 | 经由沙盒执行的推测性的资源预提取 |
US9900324B1 (en) * | 2014-01-29 | 2018-02-20 | SecondWrite LLC | System to discover and analyze evasive malware |
US20200159913A1 (en) * | 2014-11-20 | 2020-05-21 | Huawei Technologies Co., Ltd. | Malware Detection Method and Malware Detection Apparatus |
US9817974B1 (en) * | 2015-11-10 | 2017-11-14 | Trend Micro Incorporated | Anti-malware program with stalling code detection |
WO2018072713A1 (zh) * | 2016-10-19 | 2018-04-26 | 北京豆荚科技有限公司 | 通信系统和电子设备 |
EP3660602A1 (en) * | 2018-11-30 | 2020-06-03 | CODESYS Holding GmbH | Testing code for an industrial control program in an ancillary environment |
US20200356661A1 (en) * | 2019-05-10 | 2020-11-12 | Clean.io, Inc. | Detecting malicious code received from malicious client side injection vectors |
US10789354B1 (en) * | 2019-10-01 | 2020-09-29 | Capital One Services, Llc | Computer-based systems configured for detecting and sandboxing external resources and methods of use thereof |
US10642980B1 (en) * | 2019-11-18 | 2020-05-05 | Clean.io, Inc. | Detecting cross-origin malicious code existing in internet advertisements |
Non-Patent Citations (4)
Title |
---|
PUSHKAR KISHORE等: "JavaScript malware behaviour analysis and detection using sandbox assisted ensemble model", 《 2020 IEEE REGION 10 CONFERENCE (TENCON)》, pages 864 - 869 * |
网络安全观察者: "常见沙箱绕过技术", Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/89432499> * |
谢佳筠等: "Android防护技术研究进展", 《计算机工程》, no. 02, pages 169 - 176 * |
超级管理员: "沙箱功能介绍", Retrieved from the Internet <URL:http://www.hnatree.com/doc/2155/> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116738429A (zh) * | 2023-08-15 | 2023-09-12 | 之江实验室 | 基于生成对抗的目标检测引擎优化方法、装置及系统 |
CN116738429B (zh) * | 2023-08-15 | 2023-11-14 | 之江实验室 | 基于生成对抗的目标检测引擎优化方法、装置及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108304720B (zh) | 一种基于机器学习的安卓恶意程序检测方法 | |
Bao et al. | {BYTEWEIGHT}: Learning to recognize functions in binary code | |
US8151352B1 (en) | Anti-malware emulation systems and methods | |
CN112800423B (zh) | 一种二进制代码授权漏洞检测方法 | |
US8549635B2 (en) | Malware detection using external call characteristics | |
Luo et al. | ICS protocol fuzzing: Coverage guided packet crack and generation | |
CN114077741B (zh) | 软件供应链安全检测方法和装置、电子设备及存储介质 | |
CN109101815B (zh) | 一种恶意软件检测方法及相关设备 | |
CN106096405A (zh) | 一种基于Dalvik指令抽象的Android恶意代码检测方法 | |
CN1656732A (zh) | 变形计算机病毒检测 | |
JP7287480B2 (ja) | 解析機能付与装置、解析機能付与方法及び解析機能付与プログラム | |
CN109643346A (zh) | 控制流完整性 | |
US20170169215A1 (en) | Identification of mislabeled samples via phantom nodes in label propagation | |
CN112784265A (zh) | 一种虚拟沙盒针对混淆代码的优化方法 | |
US20030130813A1 (en) | Adaptive test program generation | |
Calatayud et al. | A comparative analysis of Buffer Overflow vulnerabilities in High-End IoT devices | |
CN113901463A (zh) | 面向概念漂移的可解释Android恶意软件检测方法 | |
CN107368740B (zh) | 一种针对数据文件中可执行代码的检测方法及系统 | |
CN110197068B (zh) | 基于改进灰狼算法的Android恶意应用检测方法 | |
CN114510723B (zh) | 一种智能合约权限管理漏洞检测方法及装置 | |
US11567855B1 (en) | Automated fault injection testing | |
CN115422865A (zh) | 仿真方法及装置、计算设备、计算机可读存储介质 | |
CN114647845A (zh) | 一种恶意样本延时代码的检测识别方法及装置 | |
CN113127872A (zh) | 一种判别对抗网络的恶意应用检测方法和系统 | |
KR102572607B1 (ko) | 비실행데이터 내의 셸코드 식별장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |