CN102023842A - 去除花指令的方法及装置 - Google Patents

去除花指令的方法及装置 Download PDF

Info

Publication number
CN102023842A
CN102023842A CN2010105911563A CN201010591156A CN102023842A CN 102023842 A CN102023842 A CN 102023842A CN 2010105911563 A CN2010105911563 A CN 2010105911563A CN 201010591156 A CN201010591156 A CN 201010591156A CN 102023842 A CN102023842 A CN 102023842A
Authority
CN
China
Prior art keywords
instruction
register
dis
assembling
internal memory
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
CN2010105911563A
Other languages
English (en)
Other versions
CN102023842B (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 ahtech network Safe Technology Ltd
Original Assignee
Beijing Antiy Electronic Equipment 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 Antiy Electronic Equipment Co Ltd filed Critical Beijing Antiy Electronic Equipment Co Ltd
Priority to CN 201010591156 priority Critical patent/CN102023842B/zh
Publication of CN102023842A publication Critical patent/CN102023842A/zh
Application granted granted Critical
Publication of CN102023842B publication Critical patent/CN102023842B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Advance Control (AREA)

Abstract

本发明提供了一种去除花指令的方法和装置,通过对缓冲区中的指令进行反汇编,并保存反汇编得到的指令,保存所有的写内存指令及写内存指令寄存器,根据写内存指令寄存器,逆向查找反汇编得到的指令,查找到所有与写内存指令寄存器相关的指令,将反汇编得到的所有指令与寄存器相关指令进行比较,删除不同的指令,即为花指令。通过本发明提供的方法,解决了虚拟执行代码速度慢,容易分析失控的问题。

Description

去除花指令的方法及装置
技术领域
本发明涉及信息安全领域,特别涉及去除花指令的方法及装置。
背景技术
当前的网络环境中,存在着大量的恶意代码,并且,恶意代码的作者为了干扰信息安全人员对恶意代码进行分析,增加代码的逆向难度,常会使用加入花指令或随机***垃圾代码等方法,这既造成了信息安全人员对恶意代码分析困难,也造成了难以提取特征码的问题,导致一个文件就需要一段特征来匹配,有多少文件,就需要多少特征,这无疑增加了信息安全人员的工作量。现在的技术只能通过虚拟执行的方法,强制执行代码,直至解密出固定可供提取特征的数据来解决这种问题,并且,虚拟执行的速度很慢,而且有分析失控而导致误运行恶意代码的可能。
发明内容
本发明提供了一种去除花指令的方法及装置,解决了虚拟执行速度慢,易分析失控的问题。
一种去除花指令的方法,包括:
步骤a:对内存缓冲区中的指令进行反汇编,并保存反汇编得到的指令;
步骤b:判断反汇编得到的指令是否是写内存指令,如果是,则查找并保存写内存指令寄存器,转步骤d,否则,转步骤c;
步骤c:判断反汇编得到的指令是否是循环跳转指令,如果是,则查找并保存控制循环体寄存器,转步骤d,否则,直接转步骤d;
步骤d:判断是否达到停止进行反汇编的条件,如果是,则转步骤e,否则,转步骤a;
步骤e:对于保存的任意一个寄存器,在反汇编得到的所有指令中逆向查找与所述寄存器相关的指令,当满足停止查找的条件时,停止查找与所述寄存器相关的指令;
步骤f:当查找完所有寄存器的相关指令后,删除反汇编得到的所有指令中与寄存器的相关指令不同的指令。
所述的方法中,判断反汇编得到的指令是否是写内存指令包括:
判断反汇编得到的指令中的目的操作数是否为内存地址,如果是,则确定为写内存指令,否则,为非写内存指令;
或者,判断反汇编得到的指令是否为隐式操作数指令,如果是,则确定为写内存指令,否则,为非写内存指令。
所述的方法中,如果反汇编得到的指令为循环跳转指令,则查找并保存控制循环体寄存器包括:
如果循环跳转指令为LOOP指令、LOOPNE指令或LOOPZ指令,则保存ECX寄存器;
如果循环跳转指令为jcc指令,则逆向查找第一个CMP指令、SUB指令、TEST指令、OR指令或AND指令,保存CMP指令寄存器、SUB指令寄存器、TEST指令寄存器、OR指令寄存器或AND指令寄存器;
如果循环跳转指令为jmp指令,则查找能够调出循环体的组合指令,保存所述组合指令寄存器。
所述的方法中,保存写内存指令寄存器包括:将写内存指令寄存器保存到寄存器链表中;
保存控制循环体寄存器包括:将控制循环体寄存器保存到寄存器链表中;
对于保存的任意一个寄存器具体为:对于寄存器链表中的任意一个寄存器。
所述的方法中,判断是否达到停止进行反汇编的条件具体为:
判断反汇编得到的指令是否是循环体结束指令;
或者,判断反汇编指令的数量是否达到预设的数量。
所述的方法中,满足停止查找的条件具体为查找到将数据从内存读取到CPU的指令。
一种去除花指令的装置,包括:
反汇编单元,用于对缓冲区中的指令进行反汇编,并保存反汇编得到的指令;
第一判断单元,用于判断反汇编得到的指令是否是写内存指令;
存储单元,用于当第一判断单元判断反汇编得到的指令是写内存指令时,查找并保存写内存指令寄存器;
第二判断单元,用于在第一判断单元判断反汇编得到的指令为非写内存指令后,判断反汇编得到的指令是否是循环跳转指令,如果是,则存储单元查找并保存控制循环体寄存器;
第三判断单元,用于当第一判断单元判断反汇编得到的指令是写内存指令后,或者当第二判断单元判断反汇编得到的指令是否是循环跳转指令后,判断是否达到停止进行反汇编的条件,如果没有达到停止进行反汇编的条件,则有反汇编单元对缓冲区的下一指令进行反汇编;
查找单元,用于在第三判断单元判断达到停止进行反汇编的条件后,对于存储单元保存的任意一个寄存器,在反汇编单元进行反汇编得到的所有指令中,逆向查找与所述寄存器相关的指令,当满足停止查找条件时,停止查找与所述寄存器相关的指令;
比较单元,用于当查找单元查找完所有寄存器的相关指令后,删除反汇编得到的所有指令中与寄存器的相关指令不同的指令。
所述的装置中,第一判断单元具体用于判断反汇编得到的指令中的目的操作数是否为内存地址,如果是,则确定为写内存指令,否则,为非写内存指令;
或者,第一判断单元具体用于判断反汇编得到的指令是否为隐式操作数指令,如果是,则确定为写内存指令,否则,为非写内存指令。
所述的装置中,如果第二判断单元判断出循环跳转指令为LOOP指令、LOOPNE指令或LOOPZ指令,则存储单元保存ECX寄存器;
如果第二判断单元判断出循环跳转指令为jcc指令,则逆向查找第一个CMP指令、SUB指令、TEST指令、OR指令或AND指令,则存储单元保存CMP指令寄存器、SUB指令寄存器、TEST指令寄存器、OR指令寄存器或AND指令寄存器;
如果第二判断单元判断出循环跳转指令为jmp指令,则存储单元查找能够调出循环体的组合指令,并保存所述指令寄存器。
所述的装置中,存储单元具体用于将写内存指令寄存器保存到寄存器链表中;
存储单元保存控制循环体寄存器包括:将控制循环体寄存器保存到寄存器链表中;
对于保存的任意一个寄存器具体为:对于寄存器链表中的任意一个寄存器。
所述的装置中,第三判断单元具体用于判断反汇编得到的指令是否是循环体结束指令;
或者,第三判断单元具体用于判断反汇编指令的数量是否达到预设的数量。
所述的装置中,满足停止查找的条件具体为查找到将数据从内存读取到CPU的指令。
本发明提供了一种去除花指令的方法和装置,通过对缓冲区中的指令进行反汇编,并保存所有反汇编得到的指令,保存所有的写内存指令及写内存指令寄存器,根据写内存指令寄存器,逆向查找反汇编得到的所有指令,查找到所有与写内存指令寄存器相关的指令,将反汇编得到的所有指令与寄存器相关指令进行比较,删除不同的指令,删除的指令即为花指令,删除花指令不影响程序的正常运行,并解决了虚拟执行速度慢,易分析失控的问题。
附图说明      
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种去除花指令的方法流程图;
图2为本发明提供的一种去除花指令的装置结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。
本发明提供了一种去除花指令的方法及装置,解决了虚拟执行速度慢,易分析失控的问题。
本发明提供了一种去除花指令的方法,包括:
步骤a:对内存缓冲区中的指令进行反汇编,并保存反汇编得到的指令;
步骤b:判断反汇编得到的指令是否是写内存指令,如果是,则查找并保存写内存指令寄存器,转步骤d,否则,转步骤c;
步骤c:判断反汇编得到的指令是否是循环跳转指令,如果是,则查找并保存控制循环体寄存器,转步骤d,否则,直接转步骤d;
步骤d:判断是否达到停止进行反汇编的条件,如果是,则转步骤e,否则,转步骤a;
步骤e:对于保存的任意一个寄存器,在反汇编得到的所有指令中逆向查找与所述寄存器相关的指令,当满足停止查找的条件时,停止查找与所述寄存器相关的指令;
步骤f:当查找完所有寄存器的相关指令后,删除反汇编得到的所有指令中与寄存器的相关指令不同的指令。
所述的方法中,判断反汇编得到的指令是否是写内存指令包括:
判断反汇编得到的指令中的目的操作数是否为内存地址,如果是,则确定为写内存指令,否则,为非写内存指令;
或者,判断反汇编得到的指令是否为隐式操作数指令,如果是,则确定为写内存指令,否则,为非写内存指令。
所述的方法中,如果反汇编得到的指令为循环跳转指令,则查找并保存控制循环体寄存器包括:
如果循环跳转指令为LOOP指令、LOOPNE指令或LOOPZ指令,则保存ECX寄存器;
如果循环跳转指令为jcc指令,则逆向查找第一个CMP指令、SUB指令、TEST指令、OR指令或AND指令,保存CMP指令寄存器、SUB指令寄存器、TEST指令寄存器、OR指令寄存器或AND指令寄存器;
如果循环跳转指令为jmp指令,则查找能够调出循环体的组合指令,保存所述组合指令寄存器。
所述的方法中,保存写内存指令寄存器包括:将写内存指令寄存器保存到寄存器链表中;
保存控制循环体寄存器包括:将控制循环体寄存器保存到寄存器链表中;
对于保存的任意一个寄存器具体为:对于寄存器链表中的任意一个寄存器。
所述的方法中,判断是否达到停止进行反汇编的条件具体为:
判断反汇编得到的指令是否是循环体结束指令;
或者,判断反汇编指令的数量是否达到预设的数量。
所述的方法中,满足停止查找的条件具体为查找到将数据从内存读取到CPU的指令。
结合上述方法的应用,对本发明涉及的技术方案做进一步举例说明,本发明提供了一种去除花指令的方法,如图1所示,包括:
S101:对内存缓冲区中的指令进行反汇编,并保存反汇编得到的指令;
S102:判断反汇编得到的指令是否是写内存指令,如果是,则执行S103,否则,执行S104;
S103:查找并保存所有写内存指令寄存器到寄存器链表中,执行S106;
查找并保存所有写内存指令寄存器到寄存器链表包括:
当写内存指令为STOS指令时,直接记录寄存器EAX、EDI;
当写内存指令为pop指令时,如果所述的pop指令操作寄存器,则记录所操作的寄存器,并逆向查找到第一个push指令,并记录相寄存器;
其他情况则直接记录寄存器。
S104:判断是否是循环跳转指令,如果是,则执行S105,否则直接执行S106;
S105:查找并保存控制循环体寄存器到寄存器链表,执行S106;
S106:判断是否到达停止进行反汇编的条件;
S107:根据寄存器链表中记录的任意一个寄存器,逐一在反汇编得到的指令链中逆向查找并存储与所述寄存器相关指令,当查找到将数据从内存读取到CPU的指令时,停止对当前寄存器的查找;
S108:删除反汇编得到的所有指令中与寄存器相关指令不同的指令。
判断反汇编得到的指令是否是写内存指令包括:
判断反汇编得到的指令中的目的操作数是否为内存地址,如果是,则确定为写内存指令,否则,为非写内存指令;
或者,判断反汇编得到的指令是否为隐式操作数指令,如果是,则确定为写内存指令,否则,为非写内存指令。
如果反汇编得到的指令为循环跳转指令,则查找并保存控制循环体寄存器包括:
如果循环跳转指令为LOOP指令、LOOPNE指令或LOOPZ指令,则保存ECX寄存器;
如果循环跳转指令为jcc指令,则逆向查找第一个CMP指令、SUB指令、TEST指令、OR指令或AND指令,保存CMP指令寄存器、SUB指令寄存器、TEST指令寄存器、OR指令寄存器或AND指令寄存器;
如果循环跳转指令为jmp指令,则查找能够调出循环体的组合指令,保存所述组合指令寄存器。
判断是否达到停止进行反汇编的条件具体为:
判断反汇编得到的指令是否是循环体结束指令;
或者,判断反汇编指令的数量是否达到预设的数量。
本发明还提供了一种去除花指令的装置,包括:
反汇编单元201,用于对缓冲区中的指令进行反汇编,并保存反汇编得到的指令;
第一判断单元202,用于判断反汇编得到的指令是否是写内存指令;
存储单元203,用于当第一判断单元202判断反汇编得到的指令是写内存指令时,查找并保存写内存指令寄存器;
第二判断单元204,用于在第一判断单元202判断反汇编得到的指令为非写内存指令后,判断反汇编得到的指令是否是循环跳转指令,如果是,则存储单元203查找并保存控制循环体寄存器;
第三判断单元205,用于当第一判断单元202判断反汇编得到的指令是写内存指令后,或者当第二判断单元204判断反汇编得到的指令是否是循环跳转指令后,判断是否达到停止进行反汇编的条件,如果没有达到停止进行反汇编的条件,则由反汇编单元对缓冲区中的下一个指令进行反汇编;
查找单元206,用于在第三判断单元205判断达到停止进行反汇编的条件后,对于存储单元保存的任意一个寄存器,在反汇编单元201进行反汇编得到的所有指令中,逆向查找与所述寄存器相关的指令,当满足停止查找条件时,停止查找与所述寄存器相关的指令;
比较单元207,用于当查找单元206查找完所有寄存器的相关指令后,删除反汇编得到的所有指令中与寄存器的相关指令不同的指令。
所述的装置中,第一判断单元202具体用于判断反汇编得到的指令中的目的操作数是否为内存地址,如果是,则确定为写内存指令,否则,为非写内存指令;
或者,第一判断单元202判断反汇编得到的指令是否为隐式操作数指令,如果是,则确定为写内存指令,否则,为非写内存指令。
所述的装置中,如果第二判断单元204判断出循环跳转指令为LOOP指令、LOOPNE指令或LOOPZ指令,则存储单元保存ECX寄存器;
如果第二判断单元204判断出循环跳转指令为jcc指令,则逆向查找第一个CMP指令、SUB指令、TEST指令、OR指令或AND指令,则存储单元保存CMP指令寄存器、SUB指令寄存器、TEST指令寄存器、OR指令寄存器或AND指令寄存器;
如果第二判断单元204判断出循环跳转指令为jmp指令,则存储单元203查找能够调出循环体的组合指令,并保存所述指令寄存器。
所述的装置中,存储单元203具体用于将写内存指令寄存器保存到寄存器链表中;
存储单元203具体用于将控制循环体寄存器保存到寄存器链表中;
对于保存的任意一个寄存器具体为:对于寄存器链表中的任意一个寄存器。
所述的装置中,第三判断单元205具体用于判断反汇编得到的指令是否是循环体结束指令;
或者,第三判断单元205具体用于判断反汇编指令的数量是否达到预设的数量。
所述的装置中,满足停止查找的条件具体为查找到将数据从内存读取到CPU的指令。
本发明提供了一种去除花指令的方法和装置,通过对缓冲区中的指令进行反汇编,并保存所有反汇编得到的指令,保存所有的写内存指令及写内存指令寄存器,根据写内存指令寄存器,逆向查找反汇编得到的所有指令,查找到所有与写内存指令寄存器相关的指令,将反汇编得到的所有指令与寄存器相关指令进行比较,删除不同的指令,删除的指令即为花指令,删除花指令不影响程序的正常运行。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。

Claims (12)

1.一种去除花指令的方法,其特征在于,包括:
步骤a:对内存缓冲区中的指令进行反汇编,并保存反汇编得到的指令;
步骤b:判断反汇编得到的指令是否是写内存指令,如果是,则查找并保存写内存指令寄存器,转步骤d,否则,转步骤c;
步骤c:判断反汇编得到的指令是否是循环跳转指令,如果是,则查找并保存控制循环体寄存器,转步骤d,否则,直接转步骤d;
步骤d:判断是否达到停止进行反汇编的条件,如果是,则转步骤e,否则,转步骤a;
步骤e:对于保存的任意一个寄存器,在反汇编得到的所有指令中逆向查找与所述寄存器相关的指令,当满足停止查找的条件时,停止查找与所述寄存器相关的指令;
步骤f:当查找完所有寄存器的相关指令后,删除反汇编得到的所有指令中与寄存器的相关指令不同的指令。
2.如权利要求1所述的方法,其特征在于,判断反汇编得到的指令是否是写内存指令包括:
判断反汇编得到的指令中的目的操作数是否为内存地址,如果是,则确定为写内存指令,否则,为非写内存指令;
或者,判断反汇编得到的指令是否为隐式操作数指令,如果是,则确定为写内存指令,否则,为非写内存指令。
3.如权利要求1所述的方法,其特征在于,如果反汇编得到的指令为循环跳转指令,则查找并保存控制循环体寄存器包括:
如果循环跳转指令为LOOP指令、LOOPNE指令或LOOPZ指令,则保存ECX寄存器;
如果循环跳转指令为jcc指令,则逆向查找第一个CMP指令、SUB指令、TEST指令、OR指令或AND指令,保存CMP指令寄存器、SUB指令寄存器、TEST指令寄存器、OR指令寄存器或AND指令寄存器;
如果循环跳转指令为jmp指令,则查找能够调出循环体的组合指令,保存所述组合指令寄存器。
4.如权利要求1所述的方法,其特征在于,保存写内存指令寄存器包括:将写内存指令寄存器保存到寄存器链表中;
保存控制循环体寄存器包括:将控制循环体寄存器保存到寄存器链表中;
对于保存的任意一个寄存器具体为:对于寄存器链表中中的任意一个寄存器。
5.如权利要求1所述的方法,其特征在于,判断是否达到停止进行反汇编的条件具体为:
判断反汇编得到的指令是否是循环体结束指令;
或者,判断反汇编指令的数量是否达到预设的数量。
6.如权利要求1所述的方法,其特征在于,满足停止查找的条件具体为查找到将数据从内存读取到CPU的指令。
7.一种去除花指令的装置,其特征在于,包括:
反汇编单元,用于对缓冲区中的指令进行反汇编,并保存反汇编得到的指令;
第一判断单元,用于判断反汇编得到的指令是否是写内存指令;
存储单元,用于当第一判断单元判断反汇编得到的指令是写内存指令时,查找并保存写内存指令寄存器;
第二判断单元,用于在第一判断单元判断反汇编得到的指令为非写内存指令后,判断反汇编得到的指令是否是循环跳转指令,如果是,则存储单元查找并保存控制循环体寄存器;
第三判断单元,用于当第一判断单元判断反汇编得到的指令是写内存指令后,或者当第二判断单元判断反汇编得到的指令是否是循环跳转指令后,判断是否达到停止进行反汇编的条件,如果没有达到停止进行反汇编的条件,则由反汇编单元对缓冲区中的下一个指令进行反汇编;
查找单元,用于在第三判断单元判断达到停止进行反汇编的条件后,对于存储单元保存的任意一个寄存器,在反汇编单元进行反汇编得到的所有指令中,逆向查找与所述寄存器相关的指令,当满足停止查找条件时,停止查找与所述寄存器相关的指令;
比较单元,用于当查找单元查找完所有寄存器的相关指令后,删除反汇编得到的所有指令中与寄存器相关指令不同的指令。
8.如权利要求7所述的装置,其特征在于,第一判断单元具体用于判断反汇编得到的指令中的目的操作数是否为内存地址,如果是,则确定为写内存指令,否则,为非写内存指令;
或者,第一判断单元具体用于判断反汇编得到的指令是否为隐式操作数指令,如果是,则确定为写内存指令,否则,为非写内存指令。
9.如权利要求7所述的装置,其特征在于,如果第二判断单元判断出循环跳转指令为LOOP指令、LOOPNE指令或LOOPZ指令,则存储单元保存ECX寄存器;
如果第二判断单元判断出循环跳转指令为jcc指令,则逆向查找第一个CMP指令、SUB指令、TEST指令、OR指令或AND指令,则存储单元保存CMP指令寄存器、SUB指令寄存器、TEST指令寄存器、OR指令寄存器或AND指令寄存器;
如果第二判断单元判断出循环跳转指令为jmp指令,则存储单元查找能够调出循环体的组合指令,并保存所述指令寄存器。
10.如权利要求7所述的装置,其特征在于,存储单元具体用于将写内存指令寄存器保存到寄存器链表中;
存储单元具体用于将控制循环体寄存器保存到寄存器链表中;
对于保存的任意一个寄存器具体为:对于寄存器链表中的任意一个寄存器。
11.如权利要求7所述的装置,其特征在于,第三判断单元具体用于判断反汇编得到的指令是否是循环体结束指令;
或者,第三判断单元具体用于判断反汇编指令的数量是否达到预设的数量。
12.如权利要求7所述的装置,其特征在于,满足停止查找的条件具体为查找到将数据从内存读取到CPU的指令。
CN 201010591156 2010-12-16 2010-12-16 去除花指令的方法及装置 Active CN102023842B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010591156 CN102023842B (zh) 2010-12-16 2010-12-16 去除花指令的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010591156 CN102023842B (zh) 2010-12-16 2010-12-16 去除花指令的方法及装置

Publications (2)

Publication Number Publication Date
CN102023842A true CN102023842A (zh) 2011-04-20
CN102023842B CN102023842B (zh) 2013-09-11

Family

ID=43865166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010591156 Active CN102023842B (zh) 2010-12-16 2010-12-16 去除花指令的方法及装置

Country Status (1)

Country Link
CN (1) CN102023842B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682498A (zh) * 2016-08-16 2017-05-17 腾讯科技(深圳)有限公司 样本的执行方法和装置
CN110837372A (zh) * 2019-11-04 2020-02-25 贵阳动视云科技有限公司 汇编代码清除混淆的方法、装置、介质及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040030963A1 (en) * 2002-08-12 2004-02-12 Sun Microsystems, Inc., A Delaware Corporation Method and apparatus for debugging computer program
CN101154259A (zh) * 2007-08-27 2008-04-02 电子科技大学 通用自动化脱壳引擎与方法
CN101162491A (zh) * 2007-08-14 2008-04-16 电子科技大学 基于代码切片的虚拟执行***与方法
CN101714118A (zh) * 2009-11-20 2010-05-26 北京邮电大学 一种二进制代码缓冲区溢出漏洞的检测器及其检测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040030963A1 (en) * 2002-08-12 2004-02-12 Sun Microsystems, Inc., A Delaware Corporation Method and apparatus for debugging computer program
CN101162491A (zh) * 2007-08-14 2008-04-16 电子科技大学 基于代码切片的虚拟执行***与方法
CN101154259A (zh) * 2007-08-27 2008-04-02 电子科技大学 通用自动化脱壳引擎与方法
CN101714118A (zh) * 2009-11-20 2010-05-26 北京邮电大学 一种二进制代码缓冲区溢出漏洞的检测器及其检测方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
孙国梓等: "子程序花指令加密算法研究", 《计算机工程与应用》, vol. 45, no. 3, 31 January 2009 (2009-01-31), pages 130 - 132 *
左黎明等: "恶意代码族群特征提取与分析技术", 《华中科技大学学报(自然科学版)》, vol. 38, no. 4, 30 April 2010 (2010-04-30), pages 46 - 49 *
徐长征等: "代码迷惑及其有效性研究", 《计算机应用研究》, vol. 26, no. 9, 30 September 2009 (2009-09-30), pages 3502 - 3505 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682498A (zh) * 2016-08-16 2017-05-17 腾讯科技(深圳)有限公司 样本的执行方法和装置
CN106682498B (zh) * 2016-08-16 2019-12-06 腾讯科技(深圳)有限公司 样本的执行方法和装置
CN110837372A (zh) * 2019-11-04 2020-02-25 贵阳动视云科技有限公司 汇编代码清除混淆的方法、装置、介质及设备

Also Published As

Publication number Publication date
CN102023842B (zh) 2013-09-11

Similar Documents

Publication Publication Date Title
KR101480821B1 (ko) 리턴-지향형 프로그래밍을 억제하기 위한 동적 실행 방지
US20170308329A1 (en) Methods and Systems for Processing PRP/SGL Entries
CN102388368B (zh) 一种内存监控方法及装置
TW201941049A (zh) 用於轉換詮釋資料處理的指令的系統和方法
KR100866627B1 (ko) 컨트롤 플로우를 이용한 페이지 프리로드 방법 및 그시스템
KR101681440B1 (ko) 블록 코드 퍼뮤테이션을 이용한 멀웨어 공격 방지
CN104007993A (zh) 一种Linux***内存敏感数据的清除方法及装置
US10248424B2 (en) Control flow integrity
CN104123495B (zh) 一种用于清除阻止计算机运行的恶意软件的方法
CN106610816B (zh) 一种risc-cpu中指令集之间冲突的规避方法及***
CN103593226A (zh) 一种提高虚拟机磁盘io性能的方法
CN103294951A (zh) 一种基于文档型漏洞的恶意代码样本提取方法及***
CN102023842B (zh) 去除花指令的方法及装置
CN107577925A (zh) 基于双重ARM指令虚拟的Android应用程序保护方法
JP6352386B2 (ja) 定数キャッシュを使用してより効率的にリテラル生成データを従属命令に転送するための方法および装置
KR20210059212A (ko) 바이너리 난수 주입을 통한 메모리 공유 기반 부채널 공격 방어 방법
CN103186746A (zh) 一种可执行文件的保护方法及***
CN105892995B (zh) 查找负数的方法、装置及处理器
CN102103490B (zh) 一种利用流水处理提高内存效率的方法
CN104866285A (zh) 可编程序控制器
CN104423927A (zh) 指令处理方法及装置、处理器
CN102799434A (zh) 一种利用软件保护装置实现自动代码移植的方法
TWI337718B (zh)
CN110377337A (zh) 一种应用中信息提取方法、智能终端及存储介质
Bonfante et al. Malware message classification by dynamic analysis

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 100190 Zhongguancun Haidian District street, No. 14, layer, 1 1415-16

Applicant after: Beijing Antiy Electronic Installation Co., Ltd.

Address before: 100085, 2B-521, bright city, No. 1, Nongda South Road, Beijing, Haidian District

Applicant before: Beijing Antiy Electronic Installation Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 100190 Beijing city Haidian District minzhuang Road No. 3, Tsinghua Science Park Building 1 Yuquan Huigu a

Patentee after: Beijing ahtech network Safe Technology Ltd

Address before: 100190 Zhongguancun Haidian District street, No. 14, layer, 1 1415-16

Patentee before: Beijing Antiy Electronic Installation Co., Ltd.

CP03 Change of name, title or address
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and device for removing junk codes

Effective date of registration: 20170821

Granted publication date: 20130911

Pledgee: CITIC Bank Harbin branch

Pledgor: Beijing ahtech network Safe Technology Ltd

Registration number: 2017990000776

PC01 Cancellation 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: 20180817

Granted publication date: 20130911

Pledgee: CITIC Bank Harbin branch

Pledgor: Beijing ahtech network Safe Technology Ltd

Registration number: 2017990000776

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

Denomination of invention: Method and device for removing junk codes

Effective date of registration: 20180817

Granted publication date: 20130911

Pledgee: CITIC Bank Harbin branch

Pledgor: Beijing ahtech network Safe Technology Ltd

Registration number: 2018990000700

PC01 Cancellation 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: 20191021

Granted publication date: 20130911

Pledgee: CITIC Bank Harbin branch

Pledgor: Beijing ahtech network Safe Technology Ltd

Registration number: 2018990000700