CN106855925B - 堆喷射检测方法及装置 - Google Patents

堆喷射检测方法及装置 Download PDF

Info

Publication number
CN106855925B
CN106855925B CN201510902570.4A CN201510902570A CN106855925B CN 106855925 B CN106855925 B CN 106855925B CN 201510902570 A CN201510902570 A CN 201510902570A CN 106855925 B CN106855925 B CN 106855925B
Authority
CN
China
Prior art keywords
detected
set threshold
pile
consistency
heap
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.)
Active
Application number
CN201510902570.4A
Other languages
English (en)
Other versions
CN106855925A (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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201510902570.4A priority Critical patent/CN106855925B/zh
Publication of CN106855925A publication Critical patent/CN106855925A/zh
Application granted granted Critical
Publication of CN106855925B publication Critical patent/CN106855925B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开一种堆喷射检测方法及装置,涉及信息与网络安全领域,该方法包括:采集待检测对象的基础信息;根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算;如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。本发明提供的方法及装置,利用堆块对齐方式的特性,对多个堆块进行异或处理,在尽量保持原有堆熵信息的基础上,能够快速检测判断是否出现堆喷射,消耗资源少,错报漏报率低,通用性好。

Description

堆喷射检测方法及装置
技术领域
本发明涉及信息与网络安全领域,尤其涉及一种堆喷射检测方法及装置。
背景技术
堆喷射(Heap Spray)是一种较易获得任意代码执行Exploit的技术手段,其是最常见的安全威胁之一,不同的客户端发生堆喷射的脚本不尽相同,针对浏览器有VBScript、JavaScript,针对其他客户端Office、PDF阅读器可能使用VBA、Flash等。
现有技术中有一种检测堆喷射型网页木马的方法,该方法首先解析待检测网页的脚本,在解析过程中通过挂函数钩子监测所述待检测网页的脚本变量,如果监测到所述待检测网页的脚本变量的长度超过预设的长度阈值,则对所述长度超过预设长度阈值的脚本变量的内容进行反汇编检测,如果不能顺利反汇编,则继续解析所述待检测网页的脚本,如果能够顺利反汇编,则认为检测到喷射特性,确定检测到堆喷射型网页木马。但是,该方法的脚本解析模块只适用于网页木马的检测,通用性差;需要用到反汇编技术,检测代价高,且由于代码入口点无法确认的问题,难以保证反汇编结果。现有技术还提供一种基于内存对比的检测方法检测堆喷射,但是这种检测方法速度慢、效率低、消耗资源多、代价大,在实际应用和推广上存在很大的局限性。
因此,有必要提出一种快速高效的堆喷射通用检测方法对以解决现有技术中存在的上述问题。
发明内容
本发明要解决的一个技术问题是快速、高效、消耗资源少的堆喷射通用检测方法。
本发明提供一种堆喷射检测方法,包括:采集待检测对象的基础信息;根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算;如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。
进一步地,所述待检测对象的基础信息包括堆起始地址、堆长度、堆数量。
进一步地,所述根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算包括:根据待检测对象的基础信息,分配与所述待检测对象中的待检测堆同样大小的内存空间;将待检测对象的第n个待检测堆复制到所述内存空间;对待检测对象中的第n+1个待检测堆进行随机采样;判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性。
进一步地,判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性之后包括:如果第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性超过第一设定阈值,将待检测对象的第n+1个待检测堆与内存空间中的第n个待检测堆进行异或计算。
进一步地,判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性之后还包括:如果待检测对象的第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性不超过第一设定阈值;则判定第n+1个待检测堆与第n个待检测堆不一致,执行循环过程,判断所述待检测对象中剩余的相邻待检测堆的一致性。
进一步地,通过随机采样依次判断待检测对象中的所有相邻待检测堆的一致性,在相邻待检测堆一致性超过第一设定阈值时进行异或计算,遍历完所述待检测对象中的所有待检测堆之后,判断异或结果为0的比例达到第二设定阈值,如果异或结果为0的比例达到第二设定阈值,则判定发现堆喷射。
进一步地,如果相邻待检测堆的异或结果为0的比例未达到第二设定阈值,则判断所述待检测对象不是堆喷射。
进一步地,所述第一设定阈值为80%到95%,所述第二设定阈值为85%到95%。
本发明还提供一种堆喷射检测装置,包括:采集模块,用于采集待检测对象的基础信息;第一处理模块,用于根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算;第二处理模块,用于如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。
进一步地,所述待检测对象的基础信息包括堆起始地址、堆长度、堆数量。
进一步地,该装置还包括内存分配模块,用于根据待检测对象的基础信息,分配与所述待检测对象中的待检测堆同样大小的内存空间;复制模块,用于将待检测对象的第n个待检测堆复制到所述内存空间;随机采样模块,用于对待检测对象中的第n+1个待检测堆进行随机采样。
进一步地,所述第一处理模块用于判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性。
进一步地,所述第一处理模块如果第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性超过第一设定阈值,将待检测对象的第n+1个待检测堆与内存空间中的第n个待检测堆进行异或计算。
进一步地,所述第一处理模块用于如果待检测对象的第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性不超过第一设定阈值;则判定第n+1个待检测堆与第n个待检测堆不一致,执行循环过程,判断所述待检测对象中剩余的相邻待检测堆的一致性。
进一步地,所述第一处理模块用于通过随机采样依次判断待检测对象中的所有相邻待检测堆的一致性,在相邻待检测堆一致性超过第一设定阈值时进行异或计算,遍历完所述待检测对象中的所有待检测堆之后,所述第二处理模块用于判断异或结果为0的比例达到第二设定阈值,如果异或结果为0的比例达到第二设定阈值,则判定发现堆喷射。
进一步地,所述第二处理模块用于如果相邻待检测堆的异或结果为0的比例未达到第二设定阈值,则判断所述待检测对象不是堆喷射。
进一步地,所述第一设定阈值为80%到95%,所述第二设定阈值为85%到95%。
本发明提供的堆喷射检测方法及装置,在对Heap Spray的特性进行研究和总结后,提出一种快速通用的检测方法,利用堆块对齐方式的特性,对多个堆块进行异或处理,在尽量保持原有堆熵信息的基础上,能够快速检测判断是否出现Heap Spray,消耗资源少,错报漏报率低,通用性好。
附图说明
图1示出本发明一个实施例的堆喷射检测方法的流程图。
图2示出本发明一个实施例的堆喷射的示意图。
图3示出本发明一个实施例的堆喷射检测方法的流程示意图。
图4示出本发明一个实施例的堆喷射检测方法的流程示意简图。
图5示出本发明一个实施例的一种堆喷射检测装置的结构框图。
图6示出了本发明的另一个实施例的一种堆喷射检测装置的结构框图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。
图1示出本发明一个实施例的堆喷射检测方法的流程图。如图1所示,该方法主要包括:
步骤100,采集待检测对象的基础信息。
在一个实施例中,所述待检测对象的基础信息包括堆起始地址、堆长度、堆数量。
步骤102,根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算。
在一个实施例中,该步骤可以包括:根据待检测对象的基础信息,分配与所述待检测对象中的待检测堆同样大小的内存空间;将待检测对象的第n个待检测堆复制到所述内存空间;对待检测对象中的第n+1个待检测堆进行随机采样;判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性。
如果第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性超过第一设定阈值,将待检测对象的第n+1个待检测堆与内存空间中的第n个待检测堆进行异或计算。
如果待检测对象的第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性不超过第一设定阈值;则判定第n+1个待检测堆与第n个待检测堆不一致,执行循环过程,依次判断第n+2、n+3个待检测堆,第n+4、n+5个待检测堆等等一致性,判断所述待检测对象中剩余的相邻待检测堆的一致性。
步骤104,如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。
在一个实施例中,通过随机采样依次判断待检测对象中的所有相邻待检测堆的一致性,在相邻待检测堆一致性超过第一设定阈值时进行异或计算,遍历完所述待检测对象中的所有待检测堆或遍历完一定比例如50%的待检测堆之后,判断异或结果为0的比例达到第二设定阈值,如果异或结果为0的比例达到第二设定阈值,则判定发现堆喷射。
在一个实施例中,如果相邻待检测堆的异或结果为0的比例未达到第二设定阈值,则判断所述待检测对象不是堆喷射。
在一个实施例中,第一设定阈值取值范围可以为80%到95%,也可以大于95%,例如取值为96%、97%等,也可以为80%以下。
在一个实施例中,第二设定阈值为85%到95%,例如可以取值为90%。在具体地实施方式中,也可以大于95%,例如取值为96%、97%等,也可以为85%以下。
本发明上述实施例提供的堆喷射检测方法,创新性地提出了一种快速Heap Spray通用检测方法,能有效解决现有技术手段存在的通用性差、检测速度慢、资源消耗多、检测效率低等问题,大大提升了Heap Spray的检测速度、降低了资源消耗、提高了检测效率、实现了良好的通用性;并且通用性非常好,不限操作系统、不限应用程序、不限脚本类型,适用面广;实现了不依赖于内存比对的检测技术,更无需采用反汇编技术,特别适合快速检测;无需对系统硬件进行改造,实现成本较低。
图2示出本发明一个实施例的堆喷射的示意图。参照图2所示,Heap Spray是在shellcode的前面加上大量的slide code(滑板指令),组成一个注入代码段。然后向系统申请大量内存,并且反复用注入代码段来填充。这样就使得进程的地址空间被大量的注入代码所占据。然后结合其他的漏洞攻击技术控制程序流,使得程序执行到堆上,最终将导致shellcode的执行。如图2所示,slide code(滑板指令)可以是NOP指令,但是随着一些新的攻击技术的出现,逐渐开始使用更多的类NOP指令,譬如0x0C(0x0C0C代表的x86指令是ORAL 0x0C),0x0D等等,不管是NOP还是0C,他们的共同特点就是不会影响shellcode的执行。
进行攻击时,在控制EIP寄存器之前,将shellcode填充在一块可以预测的位置,大致过程为分配内存块(NOPs+shellcode)、触发漏洞,从EIP寄存器到内存块(NOPs+shellcode)中。每一个内存块都由大量的NOP例如‘0x90’和shellcode组成。控制EIP后便有很大可能跳至NOPs中,然后便可以滑行至shellcode,这样便可以进行攻击。
图3示出本发明一个实施例的堆喷射检测方法的流程示意图。如图3所示,该方法包括:
步骤301,对待检测对象进行基础信息采集,其中待检测对象的基础信息包括起始地址、堆长度、堆数量。
步骤302,根据待检测对象,分配与待检测对象中堆同样大小的内存空间H。
步骤303,复制第n个待检测堆到内存空间H,其中,n可以为从0开始的自然数或者为用户指定的数如10。
步骤304,对第n+1待检测堆进行随机采样(hash)。
例如,通过随机算法指定需要获取内存值的位置,对第n+1待检测堆指定的位置的内存值进行采样,与第n个待检测堆相同位置的内存值做比较,判断一致性,实际中也可以通过hash算法判断一致性。
步骤305,判断采样点与内存空间中的待检测堆的一致性是否超过设定第一阈值,该第一阈值可以为90%,如果第n个待检测堆与第n+1个待检测堆的相同位置的内存的相似性超过90%,则执行步骤306,若判断结果为否时,则执行步骤307。
步骤307,可以将n赋值为n+2,并执行步骤303,此时在执行步骤303时,则是复制第n+2个待检测堆到内存空间。
步骤306,对内存空间H中的第n个待检测堆与当前第n+1待检测堆进行异或运算。
步骤308,异或后的结果为0的比例是否达到第二设定阈值。
当检测完待检测对象设定比例的待检测堆或全部待检测堆之后,判断异或后结果0的比例是否超过第二设定阈值,该第二设定阈值可以为95%或者80%,如果第n个待检测堆与第n+1个待检测堆异或后的结果为0的个数超过90%,则确定发现堆喷射,执行步骤309,若判断结果为否时,则则确定未发现堆喷射,执行步骤309。
步骤309,向用户告警,通知用户发现堆喷射。
步骤310,通知用户未发现堆喷射。
本发明实施例的堆喷射检测方法,在对Heap Spray的特性进行研究和总结后,提出一种快速通用的检测方法,利用堆块对齐方式的特性,对多个堆块进行异或处理,在尽量保持原有堆熵信息的基础上,能够快速检测判断是否出现Heap Spray,消耗资源少,错报漏报率低,通用性好。
图4示出本发明一个实施例的堆喷射检测方法的流程示意简图。如图4所示,该方法的主要思想是采集待检测对象的基础信息后,通过采样对比确定相邻堆的一致性和异或结果,如果检测检测对象后异或结果为0的比例达到的设定阈值,则确定发现攻击,则进行告警如果未发现攻击,则继续进行循环计算,直到检测完毕或发现攻击为止。该方法通用性好,适用于各种系统、程序和脚本,不依赖于内存对比和反汇编技术,速度快、效率高。
图5示出本发明一个实施例的一种堆喷射检测装置的结构框图,如图5所示,该装置500包括,采集模块501,用于采集待检测对象的基础信息;第一处理模块502,用于根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算;第二处理模块503,用于如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。
在一个实施例中,所述待检测对象的基础信息包括堆起始地址、堆长度、堆数量。
参照图5,在一个实施例中,该装置500还内存分配模块504,用于根据待检测对象的基础信息,分配与所述待检测对象中的待检测堆同样大小的内存空间;复制模块505,用于将待检测对象的第n个待检测堆复制到所述内存空间;随机采样模块506,用于对待检测对象中的第n+1个待检测堆进行随机采样;所述第一处理模块502用于判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性。
在一个实施例中,所述第一处理模块502如果第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性超过第一设定阈值,将待检测对象的第n+1个待检测堆与内存空间中的第n个待检测堆进行异或计算。
在一个实施例中,所述第一处理模块502用于如果待检测对象的第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性不超过第一设定阈值;则判定第n+1个待检测堆与第n个待检测堆不一致,执行循环过程,判断所述待检测对象中剩余的相邻待检测堆的一致性。
在一个实施例中,所述第一处理模块502用于通过随机采样依次判断待检测对象中的所有相邻待检测堆的一致性,在相邻待检测堆一致性超过第一设定阈值时进行异或计算,遍历完所述待检测对象中的所有待检测堆之后,所述第二处理模块503用于判断异或结果为0的比例达到第二设定阈值,如果异或结果为0的比例达到第二设定阈值,则判定发现堆喷射。
在一个实施例中,所述第二处理模块503用于如果相邻待检测堆的异或结果为0的比例未达到第二设定阈值,则判断所述待检测对象不是堆喷射。
在一个实施例中,所述第一设定阈值为80%到95%,所述第二设定阈值为85%到95%。
图6示出了本发明的另一个实施例的一种堆喷射检测装置的结构框图。堆喷射检测装置600可以是具备计算能力的主机服务器、个人计算机PC、或者可携带的便携式计算机、移动终端或其他终端等。本发明具体实施例并不对计算节点的具体实现做限定。
堆喷射检测装置600包括处理器(processor)601、通信接口(CommunicationsInterface)602、存储器(memory)603和总线604。其中,处理器601、通信接口602、以及存储器603通过总线604完成相互间的通信。
通信接口602用于与网络设备通信,其中网络设备包括例如虚拟机管理中心、共享存储等。
处理器601用于执行程序。处理器601可以是一个中央处理器CPU,或者可以是专用集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
存储器603用于存放文件。存储器603可以包含高速RAM存储器,也可还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。存储器603也可以是存储器阵列。存储器603还可能被分块,并且块可按一定的规则组合成虚拟卷。
在一种实施方式中,上述程序可为包括计算机操作指令的程序代码。该程序具体可用于:采集待检测对象的基础信息;根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算;如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。
在一种实施方式中,所述待检测对象的基础信息包括堆起始地址、堆长度、堆数量。
在一种实施方式中,所述根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算包括:根据待检测对象的基础信息,分配与所述待检测对象中的待检测堆同样大小的内存空间;将待检测对象的第n个待检测堆复制到所述内存空间;对待检测对象中的第n+1个待检测堆进行随机采样;判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性。
在一种实施方式中,判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性之后包括:如果第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性超过第一设定阈值,将待检测对象的第n+1个待检测堆与内存空间中的第n个待检测堆进行异或计算。
在一种实施方式中,判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性之后还包括:如果待检测对象的第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性不超过第一设定阈值;则判定第n+1个待检测堆与第n个待检测堆不一致,执行循环过程,判断所述待检测对象中剩余的相邻待检测堆的一致性。
在一种实施方式中,通过随机采样依次判断待检测对象中的所有相邻待检测堆的一致性,在相邻待检测堆一致性超过第一设定阈值时进行异或计算,遍历完所述待检测对象中的所有待检测堆之后,判断异或结果为0的比例达到第二设定阈值,如果异或结果为0的比例达到第二设定阈值,则判定发现堆喷射。
在一种实施方式中,如果相邻待检测堆的异或结果为0的比例未达到第二设定阈值,则判断所述待检测对象不是堆喷射。
本领域普通技术人员可以意识到,本文所描述的实施例中的各示例性单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件形式来实现,取决于技术方案的特定应用和设计约束条件。专业技术人员可以针对特定的应用选择不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
如果以计算机软件的形式来实现功能并作为独立的产品销售或使用时,则在一定程度上可认为本发明的技术方案的全部或部分(例如对现有技术做出贡献的部分)是以计算机软件产品的形式体现的。该计算机软件产品通常存储在计算机可读取的非易失性存储介质中,包括若干指令用以使得计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

Claims (14)

1.一种堆喷射检测方法,其特征在于,包括:
采集待检测对象的基础信息;
根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算;具体包括:根据待检测对象的基础信息,分配与所述待检测对象中的待检测堆同样大小的内存空间;将待检测对象的第n个待检测堆复制到所述内存空间;对待检测对象中的第n+1个待检测堆进行随机采样;判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性;
如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。
2.根据权利要求1所述的方法,其特征在于,所述待检测对象的基础信息包括堆起始地址、堆长度、堆数量。
3.根据权利要求1所述的方法,其特征在于,判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性之后包括:
如果第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性超过第一设定阈值,将待检测对象的第n+1个待检测堆与内存空间中的第n个待检测堆进行异或计算。
4.根据权利要求1所述的方法,其特征在于,判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性之后还包括:
如果待检测对象的第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性不超过第一设定阈值;
则判定第n+1个待检测堆与第n个待检测堆不一致,执行循环过程,判断所述待检测对象中剩余的相邻待检测堆的一致性。
5.根据权利要求1-4中任一所述的方法,其特征在于,
所述根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算包括:通过随机采样依次判断待检测对象中的所有相邻待检测堆的一致性,在相邻待检测堆一致性超过第一设定阈值时进行异或计算;
所述如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射包括:遍历完所述待检测对象中的所有待检测堆之后,判断异或结果为0的比例达到第二设定阈值,如果异或结果为0的比例达到第二设定阈值,则判定发现堆喷射。
6.根据权利要求5所述的方法,其特征在于,
如果相邻待检测堆的异或结果为0的比例未达到第二设定阈值,则判断所述待检测对象不是堆喷射。
7.根据权利要求1所述的方法,其特征在于,还包括:
所述第一设定阈值为80%到95%,所述第二设定阈值为85%到95%。
8.一种堆喷射检测装置,其特征在于,包括:
采集模块,用于采集待检测对象的基础信息;
第一处理模块,用于根据待检测对象的基础信息,对所述待检测对象的相邻待检测堆进行随机采样,如果相邻待检测堆的一致性超过第一设定阈值,则对相邻待检测堆进行异或计算;
内存分配模块,用于根据待检测对象的基础信息,分配与所述待检测对象中的待检测堆同样大小的内存空间;
复制模块,用于将待检测对象的第n个待检测堆复制到所述内存空间;
随机采样模块,用于对待检测对象中的第n+1个待检测堆进行随机采样;
所述第一处理模块用于判断第n+1个待检测堆中采样点与所述内存空间中第n个待检测堆中相同位置点的一致性;
第二处理模块,用于如果相邻待检测堆的异或计算结果为0的比例达到第二设定阈值,则判断所述待检测对象为堆喷射。
9.根据权利要求8所述的装置,其特征在于,所述待检测对象的基础信息包括堆起始地址、堆长度、堆数量。
10.根据权利要求8所述的装置,其特征在于,
所述第一处理模块如果第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性超过第一设定阈值,将待检测对象的第n+1个待检测堆与内存空间中的第n个待检测堆进行异或计算。
11.根据权利要求8所述的装置,其特征在于,所述第一处理模块用于如果待检测对象的第n+1个待检测堆中的采样点与第n个待检测堆中相同位置点的一致性不超过第一设定阈值;
则判定第n+1个待检测堆与第n个待检测堆不一致,执行循环过程,判断所述待检测对象中剩余的相邻待检测堆的一致性。
12.根据权利要求8-11中任一所述的装置,其特征在于,
所述第一处理模块用于通过随机采样依次判断待检测对象中的所有相邻待检测堆的一致性,在相邻待检测堆一致性超过第一设定阈值时进行异或计算,
遍历完所述待检测对象中的所有待检测堆之后,所述第二处理模块用于判断异或结果为0的比例达到第二设定阈值,如果异或结果为0的比例达到第二设定阈值,则判定发现堆喷射。
13.根据权利要求12所述的装置,其特征在于,
所述第二处理模块用于如果相邻待检测堆的异或结果为0的比例未达到第二设定阈值,则判断所述待检测对象不是堆喷射。
14.根据权利要求8所述的装置,其特征在于,所述第一设定阈值为80%到95%,所述第二设定阈值为85%到95%。
CN201510902570.4A 2015-12-09 2015-12-09 堆喷射检测方法及装置 Active CN106855925B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510902570.4A CN106855925B (zh) 2015-12-09 2015-12-09 堆喷射检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510902570.4A CN106855925B (zh) 2015-12-09 2015-12-09 堆喷射检测方法及装置

Publications (2)

Publication Number Publication Date
CN106855925A CN106855925A (zh) 2017-06-16
CN106855925B true CN106855925B (zh) 2020-02-18

Family

ID=59132259

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510902570.4A Active CN106855925B (zh) 2015-12-09 2015-12-09 堆喷射检测方法及装置

Country Status (1)

Country Link
CN (1) CN106855925B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110059477B (zh) * 2019-03-14 2021-08-10 成都亚信网络安全产业技术研究院有限公司 一种攻击检测方法及装置
CN112989323B (zh) * 2021-02-03 2024-02-13 成都欧珀通信科技有限公司 进程检测方法、装置、终端及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609655A (zh) * 2012-02-08 2012-07-25 北京百度网讯科技有限公司 一种检测堆喷射型网页木马的方法和装置
CN103221960A (zh) * 2012-12-10 2013-07-24 华为技术有限公司 恶意代码的检测方法及装置
CN103984898A (zh) * 2014-05-29 2014-08-13 北京神州绿盟信息安全科技股份有限公司 一种喷射模式攻击的检测方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609655A (zh) * 2012-02-08 2012-07-25 北京百度网讯科技有限公司 一种检测堆喷射型网页木马的方法和装置
CN103221960A (zh) * 2012-12-10 2013-07-24 华为技术有限公司 恶意代码的检测方法及装置
CN103984898A (zh) * 2014-05-29 2014-08-13 北京神州绿盟信息安全科技股份有限公司 一种喷射模式攻击的检测方法和装置

Also Published As

Publication number Publication date
CN106855925A (zh) 2017-06-16

Similar Documents

Publication Publication Date Title
CN111382434B (zh) 用于检测恶意文件的系统和方法
JP6636096B2 (ja) マルウェア検出モデルの機械学習のシステムおよび方法
US10678921B2 (en) Detecting malware with hash-based fingerprints
EP3474177A1 (en) System and method of detecting malicious files using a trained machine learning model
US10430586B1 (en) Methods of identifying heap spray attacks using memory anomaly detection
CN109586282B (zh) 一种电网未知威胁检测系统及方法
EP3474175B1 (en) System and method of managing computing resources for detection of malicious files based on machine learning model
EP3416083B1 (en) System and method of detecting anomalous events
US9514312B1 (en) Low-memory footprint fingerprinting and indexing for efficiently measuring document similarity and containment
US8336100B1 (en) Systems and methods for using reputation data to detect packed malware
CN109948335B (zh) 用于检测计算机系统中的恶意活动的系统和方法
CN107426136B (zh) 一种网络攻击的识别方法和装置
CN103617396B (zh) 一种漏洞利用的检测方法和系统
CN108470126B (zh) 数据处理方法、装置及存储介质
CN106855925B (zh) 堆喷射检测方法及装置
CN107231383B (zh) Cc攻击的检测方法及装置
CN106845217B (zh) 一种安卓应用恶意行为的检测方法
CN114297630A (zh) 恶意数据的检测方法、装置、存储介质及处理器
CN114785567A (zh) 一种流量识别方法、装置、设备及介质
CN111382435B (zh) 检测计算机系统中的恶意活动的来源的系统和方法
US20190213323A1 (en) Systems and methods for detecting and mitigating code injection attacks
CN107844702B (zh) 基于云防护环境下网站木马后门检测方法及装置
CN112560085A (zh) 业务预测模型的隐私保护方法及装置
CN113810342A (zh) 一种入侵检测方法、装置、设备、介质
CN111291044A (zh) 敏感数据识别方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant