CN111797401B - 一种攻击检测参数获取方法、装置、设备及可读存储介质 - Google Patents
一种攻击检测参数获取方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN111797401B CN111797401B CN202010650924.1A CN202010650924A CN111797401B CN 111797401 B CN111797401 B CN 111797401B CN 202010650924 A CN202010650924 A CN 202010650924A CN 111797401 B CN111797401 B CN 111797401B
- Authority
- CN
- China
- Prior art keywords
- code
- attack
- attack detection
- coding
- data
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
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)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种攻击检测参数获取方法、装置、设备及计算机可读存储介质,该方法包括:获取攻击数据,攻击数据包括利用代码和触发代码;对利用代码进行目标特征提取处理,得到目标特征;对触发代码进行编码特征提取处理,得到编码特征;利用目标特征和编码特征生成攻击检测参数;该方法通过对目标特征和编码特征进行提取,可以直接对利用代码的特征以及触发代码的特征进行检测,因此无论漏洞攻击代码进行了怎样的变形,只要攻击数据中包括了利用代码以实现其攻击目的,或者包括了触发代码以触发利用代码,就可以检测出来,因此提高了检测能力和安全防护效果。
Description
技术领域
本发明涉及网络安全技术领域,特别涉及一种攻击检测参数获取方法、攻击检测参数获取装置、攻击检测参数获取设备及计算机可读存储介质。
背景技术
为了获取目标设备的权限,大多数网络攻击中的恶意攻击者会通过安全漏洞对被攻击者的主机和服务器进行攻击。通过对大量的实战攻击、漏洞研究、防火墙绕过与安全加固经验的总结发现,当前安全漏洞的完整攻击代码(或者称为攻击数据)可以由不同的攻击数据生成工具生成得到,其内容一般包括漏洞攻击代码(exploit)和漏洞利用代码(payload)。漏洞攻击代码为根据具体漏洞精心构造的代码,通过漏洞攻击代码,就能够在漏洞的攻击点触发漏洞利用代码;漏洞利用代码为攻击者想要执行的代码,经过长时间的积累,漏洞利用代码基本有了固定的模式以实现其攻击目的。
相关技术一般对漏洞攻击代码进行检测,即对攻击数据中的漏洞攻击代码进行检测,防止其在攻击点触发漏洞利用代码。然而,攻击者很容易对漏洞攻击代码进行变形,例如利用不同的攻击数据生成工具或不同的编码方法对漏洞攻击代码进行变形,就可以轻易地绕开检测系统,实现攻击者的攻击目的。且若攻击者先发现某一漏洞并针对该漏洞开发出完整攻击代码时,则无法对该完整攻击代码进行任何检测,因此相关技术检测能力较差,防护效果较差。
因此,如何解决相关技术存在的检测能力较差和防护效果较差的问题,是本领域技术人员需要解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种攻击检测参数获取方法、攻击检测参数获取装置、攻击检测参数获取设备及计算机可读存储介质,解决了相关技术存在的检测能力较差和防护效果较差的问题。
为解决上述技术问题,本发明提供了一种攻击检测参数获取方法,包括:
获取攻击数据,所述攻击数据包括利用代码和触发代码;
根据预设利用数据对所述利用代码进行目标特征提取处理,得到目标特征;
根据预设编码数据对所述触发代码进行编码特征提取处理,得到编码特征;
利用所述目标特征和所述编码特征生成攻击检测参数。
可选地,所述利用所述目标特征和所述编码特征生成攻击检测参数,包括:
获取多个场景对应的多个代码表现形式;
分别根据各个所述代码表现形式,对各个所述目标特征和所述编码特征进行泛化处理,得到泛化特征;
利用所述泛化特征生成攻击检测参数。
可选地,所述根据预设编码数据对所述触发代码进行编码特征提取处理,得到编码特征,包括:
判断所述触发代码是否为源代码;
若所述触发代码为所述源代码,则将所述触发代码确定为第一代码;
若所述触发代码不为所述源代码,则对所述触发代码进行逆向处理,得到所述第一代码;
根据所述预设编码数据对所述第一代码进行编码特征提取处理,得到所述编码特征。
可选地,所述根据预设利用数据对所述利用代码进行目标特征提取处理,得到目标特征,包括:
对所述利用代码进行格式转换处理,得到汇编代码;
根据所述预设利用数据对所述汇编代码进行目标汇编代码筛选;
将所述汇编代码中通过所述目标汇编代码筛选的目标汇编代码确定为所述目标特征。
可选地,在所述利用所述目标特征和所述编码特征生成攻击检测参数之后,还包括:
利用测试流量对所述攻击检测参数进行入库测试,得到测试结果;
当所述测试结果符合测试要求时,将所述攻击检测参数加入参数库。
可选地,所述利用测试流量对所述攻击检测参数进行入库测试,得到测试结果,包括:
利用白流量对所述攻击检测参数进行误检测试,得到误检测试结果;
利用黑流量对所述攻击检测参数进行漏检测试,得到漏检测试结果;
利用性能流量对所述攻击检测参数进行性能测试,得到性能测试结果;
利用所述误检测试结果、所述漏检测试结果和所述性能测试结果生成所述测试结果。
可选地,还包括:
当所述测试结果不符合测试要求时,对所述攻击检测参数进行优化,并在优化后重新进行所述入库测试。
本发明还提供了一种攻击检测参数获取装置,包括:
获取模块,用于获取攻击数据,所述攻击数据包括利用代码和触发代码;
第一提取模块,用于根据预设利用数据对所述利用代码进行目标特征提取处理,得到目标特征;
第二提取模块,用于根据预设编码数据对所述触发代码进行编码特征提取处理,得到编码特征;
参数生成模块,用于利用所述目标特征和所述编码特征生成攻击检测参数。
本发明还提供了一种攻击检测参数获取设备,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现上述的攻击检测参数获取方法。
本发明还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述的攻击检测参数获取方法。
本发明提供的攻击检测参数获取方法,获取攻击数据,攻击数据包括利用代码和触发代码;根据预设利用数据对利用代码进行目标特征提取处理,得到目标特征;根据预设编码数据对触发代码进行编码特征提取处理,得到编码特征;利用目标特征和编码特征生成攻击检测参数。
可见,该方法提取攻击数据中的目标特征和编码特征,目标特征即为攻击数据中利用代码的可靠特征,编码特征为利用攻击数据中触发代码的可靠特征。这两种特征均为攻击数据中的可靠特征。通过对目标特征和编码特征进行提取,可以直接对利用代码的特征以及触发代码的特征进行检测,因此无论漏洞攻击代码进行了怎样的变形,只要攻击数据中包括了利用代码以实现其攻击目的,或者包括了触发代码以触发利用代码,就可以检测出来,因此提高了检测能力和安全防护效果,解决了相关技术存在的检测能力较差和防护效果较差的问题。
此外,本发明还提供了一种攻击检测参数获取装置、攻击检测参数获取设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种攻击检测参数获取方法流程图;
图2为本发明实施例提供的一种多个场景下的泛化特征示意图;
图3为本发明实施例提供的另一种多个场景下的泛化特征示意图;
图4为本发明实施例提供的另一种多个场景下的泛化特征示意图;
图5为本发明实施例提供的一种攻击检测参数获取装置的结构示意图;
图6为本发明实施例提供的一种攻击检测参数获取设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一种实施方式中,请参考图1,图1为本发明实施例提供的一种攻击检测参数获取方法流程图。该方法包括:
S101:获取攻击数据。
本实施例中的全部或部分步骤可以由网络安全设备执行,例如路由器、网关、防火墙等。需要说明的是,攻击数据包括利用代码和触发代码。其中,利用代码即为漏洞利用代码(payload,也被称为攻击载荷或有效载荷),触发代码即为数据经过编码处理后得到的代码,其用于进行编码特征提取。
攻击数据可以由攻击数据生成工具生成,攻击数据生成工具的具体形式本实施例不做限定,例如为利用Java语言编写的生成工具,或者为利用其它编程语言编写的生成工具。
S102:根据预设利用数据对所述利用代码进行目标特征提取处理,得到目标特征。
在获取攻击数据后,对其中的利用代码进行目标特征提取处理,得到目标特征。需要说明的是,目标特征也可以被称为利用特征,即从利用代码中提取的可靠特征,其一般可以包括堆栈保护的特征、攻击者信息的特征、以及漏洞利用代码本身的特征等。例如当攻击代码生成工具中具有shikata_ga_nai模块这一利用代码生成模块时,生成的利用代码中会包括使用FPUS指令的堆栈保护机制对应的特征。在此处,可靠特征为所有利用攻击数据生成工具生成的利用代码均具有的特征。
预设利用数据用于进行目标特征处理,其具体内容不做限定,可以与目标特征提取处理的具体方法相关。例如预设利用数据可以包括所有已知的利用特征,可以通过直接匹配、变形匹配、同族匹配(即匹配利用类似方法或原理相同但具体实施方式不同的方法得到的特征)等方式对利用代码中的利用特征进行提取;在另一种实施方式中,预设利用数据可以包括利用代码为了实现攻击而具有的利用特征逻辑,通过检测利用代码中各个代码段是否符合利用特征逻辑的方式进行目标特征的提取;在另一种实施方式中,预设利用数据可以包括攻击数据生成工具生成攻击数据的生成原理,通过检测利用代码是否由具有特殊生成原理的攻击数据生成工具生成的方式来进行目标特征提取。特征提取的具体方法本实施例不做限定,例如可以设置分析提取规则,利用该分析提取规则进行目标特征的提取。
S103:根据预设编码数据对所述触发代码进行编码特征提取处理,得到编码特征。
由于攻击数据中的利用代码以及攻击数据本身均可以经过编码处理,因此攻击数据内还包括用于编码处理后得到的触发代码,通过对攻击数据进行编码特征提取可以得到对应的编码特征。编码特征一般为编码后的一些较为固定的特征。例如由MSF(msfvenom,一种漏洞利用框架)的call4_dword_xor encoded编码模块编码得到的数据都会以\xe8\xff\xff\xff\xff\xc0\x5e\x76\x0e作为开头。在此处,可靠特征为所有经过编码模块处理过的数据均具有的特征。与目标特征的提取方法类似,本实施例并不限定编码特征的提取方法,例如可以设置分析提取规则,利用该分析提取规则进行编码特征的提取。
与预设利用数据类似的,预设编码数据用于进行编码特征的提取,其具体内容本实施例不做限定。例如可以包括已掌握的各种编码特征,通过直接匹配、变形匹配、同族匹配等方式对编码特征进行编码特征的提取;在另一种实施方式中,预设编码数据可以包括编码为了隐藏特征而采用的编码逻辑,通过检测触发代码中各个代码段是否符合编码逻辑的方式进行编码特征的提取。
需要说明的是,本实施例并不限定编码特征提取处理和目标特征提取处理的执行顺序,例如可以先提取目标特征,再提取编码特征,或者可以先提取编码特征,再提取目标特征;或者可以同时提取编码特征和目标特征。
S104:利用所述目标特征和所述编码特征生成攻击检测参数。
在得到目标特征和编码特征后,利用目标特征和编码特征生成对应的攻击检测参数,攻击检测参数用于参与攻击数据的检测,通过将攻击检测参数与数据进行匹配,判断数据是否为攻击数据。在得到攻击检测参数后,还可以利用攻击检测参数生成攻击检测规则,具体的,可以设置攻击检测参数的匹配长度、匹配字符以及设定匹配方式的形式生成攻击检测规则,以便对数据进行检测。攻击检测参数的具体生成方法本实施例不做限定,例如可以直接将泛化特征确定为攻击检测参数,或者可以对泛化特征进行长度控制处理、通配符设置处理等预处理之后,得到攻击检测参数。
应用本发明实施例提供的攻击检测参数获取方法,提取攻击数据中的目标特征和编码特征,目标特征即为攻击数据中利用代码的可靠特征,编码特征为利用攻击数据中触发代码的可靠特征。这两种特征均为攻击数据中的可靠特征。通过对目标特征和编码特征进行提取,可以直接对利用代码的特征以及触发代码的特征进行检测,因此无论漏洞攻击代码进行了怎样的变形,只要攻击数据中包括了利用代码以实现其攻击目的,或者包括了触发代码以触发利用代码,就可以检测出来,因此提高了检测能力和安全防护效果,解决了相关技术存在的检测能力较差和防护效果较差的问题。
基于上述实施例,本实施例将说明一种具体的实施方式,其中上述实施例中的部分步骤进行具体说明,其中:
为了提取准确的目标特征,进而保证攻击检测参数的准确性,在一种可能的实施方式中,可以在特征提取之前,对攻击数据进行处理。具体的,S102步骤可以包括:
S1021:对所述利用代码进行格式转换处理,得到汇编代码。
由于利用代码一般为机器码形式,不利于对其代码含义进行分析。因此为了对利用代码的原理进行准确地剖析和分析,以便得到准确的目标特征,可以将其进行格式转换处理,得到汇编代码,即将利用代码转换为对应的汇编代码。
S1022:根据预设利用数据对汇编代码进行目标汇编代码筛选。
为了需要提取到有价值(即能真正起到攻击效果)的特征,可以对汇编代码进行目标汇编代码筛选。目标汇编代码为指定的汇编代码,可以用于实现攻击目的。例如在汇编层,字符串“\xfc“和“\xD9\xE8”有着实际的代码意义,分别代表着CLD指令和FPUS系列的指令,而这些指令常被用于实现攻击目的。
在一种实施方式中,预设利用数据包括目标汇编代码数据库,在筛选时,可以调用目标汇编代码数据库,其中的数据即为目标汇编代码,将汇编代码与目标汇编代码数据库中的数据进行匹配,匹配成功即通过筛选,不成功即未通过筛选。在另一种实施方式中,可以由人工进行目标汇编代码筛选,即由人工审阅汇编代码,确定汇编代码的代码含义,并将具有目标代码含义的目标汇编代码确定为目标特征。目标代码含义的具体内容可以为任意可能实现攻击效果的含义,因此目标汇编代码可以为任意可能实现攻击效果的汇编代码,其具体内容可以根据实际情况进行设置。最后根据人工的指令确定汇编代码是否通过筛选。
S1023:将所述汇编代码中通过所述目标汇编代码筛选的目标汇编代码确定为所述目标特征。
最后,将汇编代码中通过筛选的目标汇编代码确定为目标特征。
与S102步骤类似的,S103步骤可以包括:
S1031:判断触发代码是否为源代码。
为了提取准确的编码特征,需要获取尽可能原始的代码,因此在获取到触发代码后判断其是否为源代码,以便根据判断结果执行相应的处理。
S1032:若触发代码为源代码,则将触发代码确定为第一代码。
当触发代码为源代码时,说明触发代码为最原始的代码,因此可以直接将其确定为第一代码,第一代码为被进行特征提取的代码。
S1033:若触发代码不为源代码,则对触发代码进行逆向处理,得到第一代码。
若触发代码不为源代码时,说明触发代码被经过处理。为了获取尽可能原始的代码,可以对触发代码进行逆向处理,得到第一代码。逆向处理的具体方法不做限定,例如可以利用逆向处理工具进行逆向处理,例如IDA工具、WinDbg工具等,任何可以实现反向编译功能的逆向处理工具均可。经过逆向处理后得到的第一代码可以为伪代码形式,或者可以为机器码形式。
S1034:根据预设编码数据对第一代码进行编码特征提取处理,得到编码特征。
在确定第一代码后对其进行编码特征提取处理,即可得到编码特征。通过对第一代码进行特征提取,可以得到比直接对触发代码进行特征提取准确性更好的编码特征。
编码特征的具体内容不做限定,在一种实施方式中,预设利用数据包括已知的利用特征,通过匹配的方式对利用代码中的利用特征进行提取。例如,call4_dword_xorencoded是一个比较简单的编码模块,即攻击数据生成工具中的一个编码模块,所有利用该模块生成的代码,均会同时具备\xe8\xff\xff\xff\xff\xc0\x5e\x76\x0e和\x83\xee\xfc\xe2\xf4这两个编码特征,均为十六进制的表示形式。则预设利用数据即可包括这两个特征,通过匹配的方式对第一代码进行编码特征提取处理。
在一种可能的实施方式中,为了提高攻击检测参数的覆盖面,进而提高检测能力和安全防护效果,在生成攻击检测参数时,可以进行泛化处理。具体的,S104步骤可以包括:
S1041:获取多个场景对应的多个代码表现形式。
由于攻击场景有多种情况,例如可执行程序攻击场景、浏览器客户端攻击场景等,不同的攻击场景下,相同的利用代码或触发代码的表现形式也具有很大区别。为了提高检测效果,需要得到目标特征和编码特征在各个攻击场景下对应的特征。因此对目标特征和编码特征进行场景泛化处理,得到泛化特征。
具体的,由于攻击场景有多个,因此需要对每一个目标特征和编码特征进行各个攻击场景下的泛化,得到多个泛化特征。泛化特征的代码表现形式与攻击场景相关,例如当攻击场景为可执行程序攻击场景时,对应的泛化特征即为十六进制字符串形式,或者当攻击场景为浏览器客户端攻击场景时,泛化特征的代码表现形式即为URL(Uniform ResourceLocator,统一资源定位符)字符串形式。因此在进行场景泛化前,需要确定各个场景分别对应的代码表现形式。
S1042:分别根据各个所述代码表现形式,对各个所述目标特征和所述编码特征进行泛化处理,得到泛化特征。
在确定代码表现形式后,根据各个代码表现形式对各个目标特征和编码特征进行泛化处理,可以得到泛化特征。例如,基于上述call4_dword_xor encoded模块的说明,利用泛化工具对其对应的\xe8\xff\xff\xff\xff\xc0\x5e\x76\x0e和\x83\xee\xfc\xe2\xf4进行泛化处理,即可得到如图2至图4所示的泛化特征。图2为本发明实施例提供的一种多个场景下的泛化特征示意图,其具体为在bash,c,perl,pl,ruby,sh攻击场景下的泛化特征,代码表现形式为\xfc。图3为本发明实施例提供的另一种多个场景下的泛化特征示意图,其具体为在csharp,num,powershell,ps1,py,python攻击场景下的泛化特征,代码表现形式为0xfc。图4为本发明实施例提供的另一种多个场景下的泛化特征示意图,其具体为dw,dword场景下的泛化特征。
S1043:利用泛化特征生成攻击检测参数。
在一种实施方式中,可以直接将泛化特征确定为攻击检测参数。在另一种实施方式中,可以对泛化特征进行一项或多项处理(例如将所有泛化特征设置为相同长度的处理等)后将其确定为攻击检测参数。
基于上述实施例,在得到攻击检测参数之后,还可以对其进行侧测试,以便确定其检测能力。具体的,还可以包括:
步骤1:利用测试流量对攻击检测参数进行入库测试,得到测试结果。
为了确定攻击检测参数的检测能力,确定其可以实现攻击数据的检测效果,再将其放入参数库之前,可以对其进行入库测试,得到对应的测试结果,并根据测试结果的具体内容执行后续步骤。入库测试的具体内容本实施例不做限定,在一种实施方式中,为了起到较好的测试效果,测试流量可以包括白流量、黑流量和性能流量,入库测试可以包括误检、漏检和性能测试三项,具体的:
步骤11:利用白流量对攻击检测参数进行误检测试,得到误检测试结果。
白流量为普通业务场景下的流量,即正常的流量。利用白流量对攻击检测参数进行误检测试,即判断攻击检测参数是否将正常的流量误认为攻击流量,得到误检测试结果。
步骤12:利用黑流量对攻击检测参数进行漏检测试,得到漏检测试结果。
黑流量为包括有攻击数据的流量,利用黑流量对攻击检测参数进行漏检测试,及判断攻击检测参数是否能够将攻击数据检测出来,得到漏检测试结果。
步骤13:利用性能流量对攻击检测参数进行性能测试,得到性能测试结果。
性能流量为专门为测试攻击检测参数的检测性能的流量,由于攻击检测不能占用过多的计算资源,还要能够达到足够的检测速度以快速检测流量,因此需要利用性能流量进行性能测试,得到性能测试结果。
步骤14:利用误检测试结果、漏检测试结果和性能测试结果生成测试结果。
步骤2:当测试结果符合测试要求时,将攻击检测参数加入参数库。
测试要求可以根据需要进行设定,例如可以为不漏检、不误检、检测速度达到速度阈值等一项或多项的组合。当测试结果符合测试要求时,可以将攻击检测参数加入参数库,以便利用参数库进行攻击检测。
步骤3:当测试结果不符合测试要求时,对攻击检测参数进行优化,并在优化后重新进行入库测试。
当测试结果不符合测试要求时,可以对攻击检测参数进行优化,具体的,可以通过修改攻击检测参数的长度、攻击检测参数的字符、修改匹配方式(规则树、正则特征)等方法对攻击检测参数进行优化,并在优化后重新进行入库测试。
下面对本发明实施例提供的攻击检测参数获取装置进行介绍,下文描述的攻击检测参数获取装置与上文描述的攻击检测参数获取方法可相互对应参照。
请参考图5,图5为本发明实施例提供的一种攻击检测参数获取装置的结构示意图,包括:
获取模块510,用于获取攻击数据,攻击数据包括利用代码和触发代码;
第一提取模块520,用于根据预设利用数据对利用代码进行目标特征提取处理,得到目标特征;
第二提取模块530,用于根据预设编码数据对触发代码进行编码特征提取处理,得到编码特征;
参数生成模块540,用于利用目标特征和编码特征生成攻击检测参数。
可选地,参数生成模块540,包括:
表现形式获取单元,用于获取多个场景对应的多个代码表现形式;
处理单元,用于分别利用各个场景泛化工具,对各个目标特征和编码特征进行泛化处理,得到泛化特征;
生成单元,用于利用泛化特征生成攻击检测参数。
可选地,第二提取模块530,包括:
类型判断单元,用于判断触发代码是否为源代码;
源代码确定单元,用于若触发代码为源代码,则将触发代码确定为第一代码;
逆向处理单元,用于若触发代码不为源代码,则对触发代码进行逆向处理,得到第一代码;
编码特征提取单元,用于根据预设编码数据对第一代码进行编码特征提取处理,得到编码特征。
可选地,第一提取模块520,包括:
格式转换单元,用于对利用代码进行格式转换处理,得到汇编代码;
筛选单元,用于根据预设利用数据对汇编代码进行目标汇编代码筛选;
确定单元,用于将汇编代码中通过目标汇编代码筛选的目标汇编代码确定为目标特征。
可选地,还包括:
测试模块,用于利用测试流量对攻击检测参数进行入库测试,得到测试结果;
入库模块,用于当测试结果符合测试要求时,将攻击检测参数加入参数库。
可选地,测试模块,包括:
误检测试单元,用于利用白流量对攻击检测参数进行误检测试,得到误检测试结果;
漏检测试单元,用于利用黑流量对攻击检测参数进行漏检测试,得到漏检测试结果;
性能测试单元,用于利用性能流量对攻击检测参数进行性能测试,得到性能测试结果;
结果生成单元,用于利用误检测试结果、漏检测试结果和性能测试结果生成测试结果。
可选地,还包括:
优化模块,用于当测试结果不符合测试要求时,对攻击检测参数进行优化,并在优化后重新进行入库测试。
应用本发明实施例提供的攻击检测参数获取装置,提取攻击数据中的目标特征和编码特征,目标特征即为攻击数据中利用代码的可靠特征,编码特征为利用攻击数据中触发代码的可靠特征。这两种特征均为攻击数据中的可靠特征。通过对目标特征和编码特征进行提取,可以直接对利用代码的特征以及触发代码的特征进行检测,因此无论漏洞攻击代码进行了怎样的变形,只要攻击数据中包括了利用代码以实现其攻击目的,或者包括了触发代码以触发利用代码,就可以检测出来,因此提高了检测能力和安全防护效果,解决了相关技术存在的检测能力较差和防护效果较差的问题。
下面对本发明实施例提供的攻击检测参数获取设备进行介绍,下文描述的攻击检测参数获取设备与上文描述的攻击检测参数获取方法可相互对应参照。
请参考图6,图6为本发明实施例提供的一种攻击检测参数获取设备的结构示意图。其中攻击检测参数获取设备600可以包括处理器601和存储器602,还可以进一步包括多媒体组件603、信息输入/信息输出(I/O)接口604以及通信组件605中的一种或多种。
其中,处理器601用于控制攻击检测参数获取设备600的整体操作,以完成上述的攻击检测参数获取方法中的全部或部分步骤;存储器602用于存储各种类型的数据以支持在攻击检测参数获取设备600的操作,这些数据例如可以包括用于在该攻击检测参数获取设备600上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,SRAM)、电可擦除可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、可编程只读存储器(ProgrammableRead-Only Memory,PROM)、只读存储器(Read-Only Memory,ROM)、磁存储器、快闪存储器、磁盘或光盘中的一种或多种。
多媒体组件603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器602或通过通信组件605发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口604为处理器601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件605用于攻击检测参数获取设备600与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件707可以包括:Wi-Fi部件,蓝牙部件,NFC部件。
攻击检测参数获取设备600可以被一个或多个应用专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、数字信号处理器(Digital SignalProcessor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例给出的攻击检测参数获取方法。
下面对本发明实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的攻击检测参数获取方法可相互对应参照。
本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的攻击检测参数获取方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应该认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系属于仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语包括、包含或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
以上对本发明所提供的攻击检测参数获取方法、攻击检测参数获取装置、攻击检测参数获取设备和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种攻击检测参数获取方法,其特征在于,包括:
获取攻击数据,所述攻击数据包括利用代码和触发代码;其中,所述利用代码为用户待执行的代码;所述触发代码为数据经过编码处理后得到的代码;
根据预设利用数据对所述利用代码进行目标特征提取处理,得到目标特征;其中,所述预设利用数据用于进行目标特征处理;
根据预设编码数据对所述触发代码进行编码特征提取处理,得到编码特征;
利用所述目标特征和所述编码特征生成攻击检测参数;
所述根据预设编码数据对所述触发代码进行编码特征提取处理,得到编码特征,包括:
判断所述触发代码是否为源代码;
若所述触发代码为所述源代码,则将所述触发代码确定为第一代码;
若所述触发代码不为所述源代码,则对所述触发代码进行逆向处理,得到所述第一代码;
根据所述预设编码数据对所述第一代码进行编码特征提取处理,得到所述编码特征;
所述根据预设利用数据对所述利用代码进行目标特征提取处理,得到目标特征,包括:
对所述利用代码进行格式转换处理,得到汇编代码;
根据所述预设利用数据对所述汇编代码进行目标汇编代码筛选;
将所述汇编代码中通过所述目标汇编代码筛选的目标汇编代码确定为所述目标特征。
2.根据权利要求1所述的攻击检测参数获取方法,其特征在于,所述利用所述目标特征和所述编码特征生成攻击检测参数,包括:
获取多个场景对应的多个代码表现形式;
分别根据各个所述代码表现形式,对各个所述目标特征和所述编码特征进行泛化处理,得到泛化特征;
利用所述泛化特征生成攻击检测参数。
3.根据权利要求1所述的攻击检测参数获取方法,其特征在于,在所述利用所述目标特征和所述编码特征生成攻击检测参数之后,还包括:
利用测试流量对所述攻击检测参数进行入库测试,得到测试结果;
当所述测试结果符合测试要求时,将所述攻击检测参数加入参数库。
4.根据权利要求3所述的攻击检测参数获取方法,其特征在于,所述利用测试流量对所述攻击检测参数进行入库测试,得到测试结果,包括:
利用白流量对所述攻击检测参数进行误检测试,得到误检测试结果;
利用黑流量对所述攻击检测参数进行漏检测试,得到漏检测试结果;
利用性能流量对所述攻击检测参数进行性能测试,得到性能测试结果;
利用所述误检测试结果、所述漏检测试结果和所述性能测试结果生成所述测试结果。
5.根据权利要求3所述的攻击检测参数获取方法,其特征在于,还包括:
当所述测试结果不符合测试要求时,对所述攻击检测参数进行优化,并在优化后重新进行所述入库测试。
6.一种攻击检测参数获取装置,其特征在于,包括:
获取模块,用于获取攻击数据,所述攻击数据包括利用代码和触发代码;
第一提取模块,用于根据预设利用数据对所述利用代码进行目标特征提取处理,得到目标特征;
第二提取模块,用于根据预设编码数据对所述触发代码进行编码特征提取处理,得到编码特征;
参数生成模块,用于利用所述目标特征和所述编码特征生成攻击检测参数;
所述第二提取模块包括:
类型判断单元,用于判断所述触发代码是否为源代码;若是,则触发源代码确定单元;若否,则触发逆向处理单元;
所述源代码确定单元,用于将所述触发代码确定为第一代码;
所述逆向处理单元,用于对所述触发代码进行逆向处理,得到所述第一代码;
编码特征提取单元,用于根据所述预设编码数据对所述第一代码进行编码特征提取处理,得到所述编码特征;
所述第一提取模块包括:
格式转换单元,用于对所述利用代码进行格式转换处理,得到汇编代码;
筛选单元,用于根据所述预设利用数据对所述汇编代码进行目标汇编代码筛选;
确定单元,用于将所述汇编代码中通过所述目标汇编代码筛选的目标汇编代码确定为所述目标特征。
7.一种攻击检测参数获取设备,其特征在于,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现如权利要求1至5任一项所述的攻击检测参数获取方法。
8.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的攻击检测参数获取方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010650924.1A CN111797401B (zh) | 2020-07-08 | 2020-07-08 | 一种攻击检测参数获取方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010650924.1A CN111797401B (zh) | 2020-07-08 | 2020-07-08 | 一种攻击检测参数获取方法、装置、设备及可读存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111797401A CN111797401A (zh) | 2020-10-20 |
| CN111797401B true CN111797401B (zh) | 2023-12-29 |
Family
ID=72810590
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010650924.1A Active CN111797401B (zh) | 2020-07-08 | 2020-07-08 | 一种攻击检测参数获取方法、装置、设备及可读存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111797401B (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114553550B (zh) * | 2022-02-24 | 2024-02-02 | 京东科技信息技术有限公司 | 请求检测方法、装置、存储介质及电子设备 |
| CN117544411B (zh) * | 2023-12-20 | 2024-07-26 | 湖北天融信网络安全技术有限公司 | 用于主动确定攻击情报的方法、装置、电子设备及存储介质 |
Citations (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2026255A2 (en) * | 2007-08-14 | 2009-02-18 | Sony Corporation | Apparatus and method for processing information, recording medium and computer program |
| CA2816970A1 (en) * | 2010-11-03 | 2012-05-10 | Virginia Tech Intellectual Properties, Inc. | Using power fingerprinting (pfp) to monitor the integrity and enhance security of computer based systems |
| WO2015109912A1 (zh) * | 2014-01-26 | 2015-07-30 | 华为技术有限公司 | 缓冲区溢出攻击检测装置、方法和安全防护系统 |
| JP2017097700A (ja) * | 2015-11-26 | 2017-06-01 | 日本電信電話株式会社 | 通信特徴抽出装置、パケット分類装置、通信特徴抽出方法、パケット分類方法、及びプログラム |
| CN108710797A (zh) * | 2018-06-15 | 2018-10-26 | 四川大学 | 一种基于熵信息分布的恶意文档检测方法 |
| CN108718310A (zh) * | 2018-05-18 | 2018-10-30 | 安徽继远软件有限公司 | 基于深度学习的多层次攻击特征提取及恶意行为识别方法 |
| WO2019160641A1 (en) * | 2018-02-19 | 2019-08-22 | Nec Laboratories America, Inc. | Unsupervised spoofing detection from traffic data in mobile networks |
| EP3547189A1 (en) * | 2018-03-29 | 2019-10-02 | Tower-Sec Ltd. | Method for runtime mitigation of software and firmware code weaknesses |
| CN110445776A (zh) * | 2019-07-30 | 2019-11-12 | 国网河北省电力有限公司电力科学研究院 | 一种基于机器学习的未知攻击特征提取模型构建方法 |
| CN110572362A (zh) * | 2019-08-05 | 2019-12-13 | 北京邮电大学 | 针对多类不均衡异常流量的网络攻击检测方法及装置 |
| CN110879889A (zh) * | 2019-11-27 | 2020-03-13 | 武汉虹旭信息技术有限责任公司 | Windows平台的恶意软件的检测方法及系统 |
| CN111367566A (zh) * | 2019-06-27 | 2020-07-03 | 北京关键科技股份有限公司 | 混源代码特征提取与匹配方法 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20120254333A1 (en) * | 2010-01-07 | 2012-10-04 | Rajarathnam Chandramouli | Automated detection of deception in short and multilingual electronic messages |
| TWI461952B (zh) * | 2012-12-26 | 2014-11-21 | Univ Nat Taiwan Science Tech | 惡意程式偵測方法與系統 |
-
2020
- 2020-07-08 CN CN202010650924.1A patent/CN111797401B/zh active Active
Patent Citations (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2026255A2 (en) * | 2007-08-14 | 2009-02-18 | Sony Corporation | Apparatus and method for processing information, recording medium and computer program |
| CA2816970A1 (en) * | 2010-11-03 | 2012-05-10 | Virginia Tech Intellectual Properties, Inc. | Using power fingerprinting (pfp) to monitor the integrity and enhance security of computer based systems |
| WO2015109912A1 (zh) * | 2014-01-26 | 2015-07-30 | 华为技术有限公司 | 缓冲区溢出攻击检测装置、方法和安全防护系统 |
| JP2017097700A (ja) * | 2015-11-26 | 2017-06-01 | 日本電信電話株式会社 | 通信特徴抽出装置、パケット分類装置、通信特徴抽出方法、パケット分類方法、及びプログラム |
| WO2019160641A1 (en) * | 2018-02-19 | 2019-08-22 | Nec Laboratories America, Inc. | Unsupervised spoofing detection from traffic data in mobile networks |
| EP3547189A1 (en) * | 2018-03-29 | 2019-10-02 | Tower-Sec Ltd. | Method for runtime mitigation of software and firmware code weaknesses |
| CN108718310A (zh) * | 2018-05-18 | 2018-10-30 | 安徽继远软件有限公司 | 基于深度学习的多层次攻击特征提取及恶意行为识别方法 |
| CN108710797A (zh) * | 2018-06-15 | 2018-10-26 | 四川大学 | 一种基于熵信息分布的恶意文档检测方法 |
| CN111367566A (zh) * | 2019-06-27 | 2020-07-03 | 北京关键科技股份有限公司 | 混源代码特征提取与匹配方法 |
| CN110445776A (zh) * | 2019-07-30 | 2019-11-12 | 国网河北省电力有限公司电力科学研究院 | 一种基于机器学习的未知攻击特征提取模型构建方法 |
| CN110572362A (zh) * | 2019-08-05 | 2019-12-13 | 北京邮电大学 | 针对多类不均衡异常流量的网络攻击检测方法及装置 |
| CN110879889A (zh) * | 2019-11-27 | 2020-03-13 | 武汉虹旭信息技术有限责任公司 | Windows平台的恶意软件的检测方法及系统 |
Non-Patent Citations (5)
| Title |
|---|
| 基于逆向工程的Android应用漏洞检测技术研究;许庆富;谈文蓉;王彩霞;;西南民族大学学报(自然科学版)(第05期);全文 * |
| 工业控制系统脆弱性分析及漏洞挖掘技术研究综述;赖英旭;刘静;刘增辉;张靖雯;;北京工业大学学报(第06期);全文 * |
| 移动网络中恶意代码优化检测仿真研究;芦天亮;冯朝辉;蔡满春;刘颖卿;;计算机仿真(第08期);全文 * |
| 芦天亮 ; 冯朝辉 ; 蔡满春 ; 刘颖卿 ; .移动网络中恶意代码优化检测仿真研究.计算机仿真.2017,(第08期),全文. * |
| 软件与网络安全研究综述;刘剑;苏璞睿;杨珉;和亮;张源;朱雪阳;林惠民;;软件学报(第01期);全文 * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111797401A (zh) | 2020-10-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN106961419B (zh) | WebShell检测方法、装置及系统 | |
| CN100504903C (zh) | 一种恶意代码自动识别方法 | |
| US10152591B2 (en) | Protecting against malware variants using reconstructed code of malware | |
| CN108763928A (zh) | 一种开源软件漏洞分析方法、装置和存储介质 | |
| CN109462575B (zh) | 一种webshell检测方法及装置 | |
| WO2017086837A1 (ru) | Способ обнаружения вредоносных программ и элементов | |
| CN106415507A (zh) | 日志分析装置、攻击检测装置、攻击检测方法以及程序 | |
| CN111614599A (zh) | 基于人工智能的webshell检测方法和装置 | |
| CN111600919A (zh) | 基于人工智能的web检测方法和装置 | |
| CN113472791A (zh) | 一种攻击检测方法、装置、电子设备及可读存储介质 | |
| CN111797401B (zh) | 一种攻击检测参数获取方法、装置、设备及可读存储介质 | |
| CN107463844B (zh) | Web木马检测方法及系统 | |
| Korine et al. | DAEMON: dataset/platform-agnostic explainable malware classification using multi-stage feature mining | |
| CN111914257A (zh) | 文档检测的方法、装置、设备、及计算机存储介质 | |
| CN113378161A (zh) | 一种安全检测方法、装置、设备及存储介质 | |
| CN116738441A (zh) | 一种基于组件签名的二进制软件成分分析方法 | |
| Yuan et al. | Android applications categorization using bayesian classification | |
| CN113364784B (zh) | 检测参数生成方法、装置、电子设备及存储介质 | |
| CN108229168B (zh) | 一种嵌套类文件的启发式检测方法、系统及存储介质 | |
| KR20210059991A (ko) | IoT 악성행위 분석 방법 및 이를 수행하기 위한 컴퓨팅 장치 | |
| CN112615713B (zh) | 隐蔽信道的检测方法、装置、可读存储介质及电子设备 | |
| CN107229865B (zh) | 一种解析Webshell入侵原因的方法及装置 | |
| CN116432176A (zh) | 基于跨语言语义分析的Web恶意程序检测方法和系统 | |
| CN115086044A (zh) | 一种攻击特征的处理方法及装置、电子设备、存储介质 | |
| CN114024651A (zh) | 一种编码类型识别方法、装置、设备及可读存储介质 |
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 | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |