CN115146258A - 请求处理方法、装置、存储介质及电子设备 - Google Patents
请求处理方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN115146258A CN115146258A CN202210891762.XA CN202210891762A CN115146258A CN 115146258 A CN115146258 A CN 115146258A CN 202210891762 A CN202210891762 A CN 202210891762A CN 115146258 A CN115146258 A CN 115146258A
- Authority
- CN
- China
- Prior art keywords
- feature
- target
- request
- preset
- characteristic
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 238000001514 detection method Methods 0.000 claims abstract description 136
- 230000003068 static effect Effects 0.000 claims abstract description 89
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 79
- 238000012545 processing Methods 0.000 claims abstract description 59
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000000605 extraction Methods 0.000 claims abstract description 29
- 238000001764 infiltration Methods 0.000 claims abstract description 12
- 230000008595 infiltration Effects 0.000 claims abstract description 12
- 239000002245 particle Substances 0.000 claims description 79
- 230000004044 response Effects 0.000 claims description 53
- 230000006870 function Effects 0.000 claims description 42
- 238000012549 training Methods 0.000 claims description 42
- 238000013528 artificial neural network Methods 0.000 claims description 37
- 210000002569 neuron Anatomy 0.000 claims description 37
- 230000004913 activation Effects 0.000 claims description 36
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000010606 normalization Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 2
- 239000000523 sample Substances 0.000 description 82
- 238000005325 percolation Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000005457 optimization Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 230000035515 penetration Effects 0.000 description 8
- 239000000243 solution Substances 0.000 description 7
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000002347 injection Methods 0.000 description 5
- 239000007924 injection Substances 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000008260 defense mechanism Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开是关于一种请求处理方法、装置、存储介质及电子设备,涉及计算机技术领域,该方法包括:先对接收的请求数据,通过预设渗透提取方式采集请求数据包含的目标信息特征、目标静态特征和目标动态特征,利用预设特征选择算法,分别计算每一子特征对应的目标权重,基于每一子特征对应的目标权重,从目标信息特征、目标静态特征和目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量,通过预训练的特征检测模型对待检测特征向量进行计算检测,根据检测结果确定请求数据是否终止响应。这样,根据请求包含的各个特征来分析处理该请求可以提高对请求检测处理的准确性,减少漏报误报的可能。
Description
技术领域
本公开实施例涉及计算机技术领域,具体而言,涉及一种请求处理方法、装置、存储介质及电子设备。
背景技术
随着互联网技术的快速发展,网络(Web)应用已被广泛使用,小到个人网站、博客,大到各种各样的电商平台、数据中心,都有Web应用的身影,与此同时,随着信息频繁在Web应用上的存储和交换,信息安全的问题也日益凸显出来。在Web应用开发阶段,并不是每个程序员都具有应用安全开发的思维。在众多的Web应用漏洞中,请求注入漏洞成为了攻击经常会利用的地方,再加上注入攻击变形方式复杂多样,能够轻易地逃脱各种检测防御机制,隐蔽性强,对于传统的检测方法例如关键字或敏感字符过滤、规则匹配很难有效防御。
需要说明的是,在上述背景技术部分发明的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
为克服相关技术中存在的问题,本公开提供一种请求处理方法、装置、存储介质及电子设备,以至少解决相关技术中请求注入漏洞难以防御且防御有效率较低的问题。
根据本公开的一个方面,提供一种请求处理方法,该方法包括:
对接收的请求数据,通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征;
利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重;
基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量;
通过预训练的特征检测模型对所述待检测特征向量进行计算检测,根据检测结果确定所述请求数据是否终止响应;所述预训练的特征检测模型是结合预设粒子群算法训练得到的。
可选的,所述通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征,包括:
利用所述预设渗透提取方式从所述请求数据中采集请求信息特征、请求静态特征、请求动态特征;
分别对所述请求信息特征、所述请求静态特征、所述请求动态特征进行归一化处理,获得所述目标信息特征、所述目标静态特征和所述目标动态特征。
可选的,所述利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重,包括:
遍历所述目标信息特征、所述目标静态特征和所述目标动态特征中的子特征作为待处理特征;
通过预设特征差异公式计算所述待处理特征在所属类别中的第一特征差异值,以及,所述待处理特征在其他类别中的第二特征差异值;
基于所述第一特征差异值和所述第二特征差异值,利用预设特征权重公式迭代计算,获得所述待处理特征对应的目标权重。
可选的,所述基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量,包括:
基于所述每一子特征对应的目标权重,对所述每一子特征排序;
根据排序结果选取符合所述预设阈值比例的子特征,组成所述待检测特征向量。
可选的,所述方法还包括:
获取样本请求对应的样本特征向量以及所述样本请求对应的真实响应结果;
将所述样本特征向量和所述真实响应结果作为一个训练样本对;
利用训练样本对对目标特征检测模型进行迭代训练,以获取输出的样本响应结果符合所述真实响应结果的所述预训练的特征检测模模型;所述目标特征检测模型中的神经网络层数、每层神经元个数、激活函数类型是根据所述预设粒子群算法确定的。
可选的,所述方法还包括:
根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型;
将所述训练样本对输入至所述初始特征检测模型,得到对所述样本特征向量处理的输出结果;
利用所述预设粒子群算法对所述输出结果进行分析处理,来调整所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型,并重新执行所述根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型的操作,直至调整次数符合阈值,获得根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型设置的目标特征检测模型。
根据本公开的一个方面,提供一种请求处理装置,该装置包括:
采集模块,用于对接收的请求数据,通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征;
计算模块,用于利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重;
选取模块,用于基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量;
检测模块,用于通过预训练的特征检测模型对所述待检测特征向量进行计算检测,根据检测结果确定所述请求数据是否终止响应;所述预训练的特征检测模型是结合预设粒子群算法训练得到的。
可选的,所述采集模块,还用于:
利用所述预设渗透提取方式从所述请求数据中采集请求信息特征、请求静态特征、请求动态特征;
分别对所述请求信息特征、所述请求静态特征、所述请求动态特征进行归一化处理,获得所述目标信息特征、所述目标静态特征和所述目标动态特征。
可选的,所述计算模块,还用于:
遍历所述目标信息特征、所述目标静态特征和所述目标动态特征中的子特征作为待处理特征;
通过预设特征差异公式计算所述待处理特征在所属类别中的第一特征差异值,以及,所述待处理特征在其他类别中的第二特征差异值;
基于所述第一特征差异值和所述第二特征差异值,利用预设特征权重公式迭代计算,获得所述待处理特征对应的目标权重。
可选的,所述选取模块,还用于:
基于所述每一子特征对应的目标权重,对所述每一子特征排序;
根据排序结果选取符合所述预设阈值比例的子特征,组成所述待检测特征向量。
可选的,所述装置还包括:
获取模块,用于获取样本请求对应的样本特征向量以及所述样本请求对应的真实响应结果;
确定模块,用于将所述样本特征向量和所述真实响应结果作为一个训练样本对;
训练模块,用于利用训练样本对对目标特征检测模型进行迭代训练,以获取输出的样本响应结果符合所述真实响应结果的所述预训练的特征检测模模型;所述目标特征检测模型中的神经网络层数、每层神经元个数、激活函数类型是根据所述预设粒子群算法确定的。
可选的,所述装置还包括:
设置模块,用于根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型;
输出模块,用于将所述训练样本对输入至所述初始特征检测模型,得到对所述样本特征向量处理的输出结果;
调整模块,用于利用所述预设粒子群算法对所述输出结果进行分析处理,来调整所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型,并重新执行所述根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型的操作,直至调整次数符合阈值,获得根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型设置的目标特征检测模型。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的请求处理方法。
根据本公开的一个方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的请求处理方法。
综上所述,本发明实施例提供的请求处理方法,可以先对接收的请求数据,通过预设渗透提取方式采集请求数据包含的目标信息特征、目标静态特征和目标动态特征,利用预设特征选择算法,分别计算目标信息特征、目标静态特征和目标动态特征中每一子特征对应的目标权重,基于每一子特征对应的目标权重,从目标信息特征、目标静态特征和目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量,通过预训练的特征检测模型对待检测特征向量进行计算检测,根据检测结果确定请求数据是否终止响应,该预训练的特征检测模型是结合预设粒子群算法训练得到的。这样,一方面,通过获取请求的信息特征、静态特征、动态特征,使得得到的特征涉及请求执行的整个过程,更为全面,同时,根据请求包含的各个特征来分析处理该请求可以提高对请求检测处理的准确性,减少漏报误报的可能,另一方面,通过粒子群算法优化特征检测模型的网络结构,可以提高模型的精度和网络结构的科学性,并且,也可以提高利用特征检测模型检测请求特征的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开实施例提供的一种请求处理方法的步骤流程图;
图2示意性示出本公开实施例提供的一种确定请求特征的步骤流程图;
图3示意性示出本公开实施例提供的一种确定特征权重的步骤流程图;
图4示意性示出本公开实施例提供的一种确定特征向量的步骤流程图;
图5示意性示出本公开实施例提供的组成待检测特征向量的示意图;
图6示意性示出本公开实施例提供的训练特征检测模型的步骤流程图;
图7示意性示出本公开实施例提供的确定目标特征检测模型的示意图;
图8示意性示出本公开实施例提供的一种请求检测流程的示意图;
图9示意性示出本公开实施例提供的又一种请求检测流程的示意图;
图10示意性示出本公开实施例提供的一种请求处理装置的框图;
图11示意性示出本公开实施例提供的一种用于实现上述请求处理方法的电子设备。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1是本公开实施例提供的一种请求处理方法的步骤流程图,如图1所示,该方法可以包括:
步骤S101、对接收的请求数据,通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征。
本公开实施例中,接收的请求数据可以是***接收到客户端发送的请求,***需要根据该请求安全与否来决定对该请求的响应结果。预设渗透提取方式可以是预先设置的用于提取请求的相关信息,例如,该预设渗透提取方式可以是渗透测试工具(StructuredQuery Language map,SQLMAP),也可以是人工渗透方式,等等。具体的,可以是结合插桩技术,通过搭建含有结构化查询语言(Structured Query Language,SQL)注入靶洞的靶场,再使用SQLMAP或人工渗透等预设渗透提取方式来采集含有SQL注入的请求从接收到响应整个过程中的相关数据。
本公开实施例中,目标信息特征、目标静态特征和目标动态特征可以分别包括多个子特征,具体的,目标信息特征可以包括有请求方式、请求的参数个数、统一资源定位***(Uniform Resource Locator,URL)长度、参数中是否含有特殊字符及个数等信息子特征;目标静态特征可以是包括利用SQL语句生成后对请求的词法分析结果、对请求语法分析后得到的抽象语法树特征信息等静态子特征,其中,抽象语法树特征信息可以包括抽象语法树根节点的类型、树的结点数、树的深度、根结点的子树个数、所有子结点的个数等;目标动态特征可以包括利用SQL语句对请求执行后的信息等动态子特征,其中,执行后的信息可以包括执行时是否发生错误、响应时间、影响的数据条数、SQL接收的参数长度等特征。
步骤S102、利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重。
本公开实施例中,预设特征选择算法可以是预先设置的用于计算各个特征权重的算法,例如,该预设特征选择算法可以是ReliefF算法,也可以是其他特征权重算法(Feature weighting algorithms)。具体的,由于目标信息特征、目标静态特征和目标动态特征中分别包含有多个子特征,则利用预设特征选择算法分别计算目标信息特征、目标静态特征和目标动态特征中每一子特征对应的目标权重,可以是对每一子特征,先确定该子特征所属类别,该类别可以是信息特征、静态特征、动态特征,也可以是在此基础上更细粒的划分,比如,可以将信息特征再划分为特征1、特征2、特征3,再基于该子特征的所属类别来确定该子特征与同一类别中其他子特征之间的差异值,以及该子特征与不同类别中子特征之间的差异值,最后,根据上述类内差异值与类间差异值为该子特征分配合适的权重,作为该子特征对应的目标权重。其中,若该子特征在不同类别间的差异值较大,而在同一类别内的差异值较小,则可以为该子特征分配较重的权重,若该子特征在不同类别间的差异值较小,而在同一类别内的差异值较大,则可以为该子特征分配较弱的权重。
步骤S103、基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量。
本公开实施例中,可以是对目标信息特征、目标静态特征和目标动态特征中包含的各个子特征,基于对应的权重大小来选取符合预设阈值比例的子特征,将选取到的子特征组成待检测特征向量,其中,预设阈值比例可以是根据实际操作预先设置的。需要说明的是,在按照预设阈值比例选取子特征时,可以是从每一类别中分别按照预设阈值比例选取子特征的,以保证最后组成的待检测特征向量中包含每个类别中的子特征,避免筛除某一类别的子特征,导致请求处理有误的问题。
步骤S104、通过预训练的特征检测模型对所述待检测特征向量进行计算检测,根据检测结果确定所述请求数据是否终止响应;所述预训练的特征检测模型是结合预设粒子群算法训练得到的。
本公开实施例中,特征检测模型可以是利用样本特征向量对特征检测模型预先训练得到的,通过不断的迭代训练,使得特征检测模型可以学习到根据输入的特征向量正确检测该特征向量对应的请求是否终止响应的能力。其中,特征检测模型的模型架构可以是结合预设粒子群算法训练确定的,该特征检测模型的模型架构可以包括特征检测模型中的神经网络层数、每层神经元个数、激活函数类型等等,这样,通过粒子群算法来确定特征检测模型的模型架构可以提高模型的精度和网络结构的科学性。
本公开实施例中,通过预训练的特征检测模型对待检测特征向量进行计算检测,根据检测结果确定请求数据是否终止响应,可以是利用预训练的特征检测模型计算待检测特征向量对应的输出结果,并确定该输出结果是否符合请求数据终止响应的条件,若符合,则可以确定该待检测特征向量对应的请求数据应执行终止响应的操作,若不符合,则可以确定该待检测特征向量对应的请求数据应执行正常响应的操作。其中,特征检测模型可以是深度神经网络(Deep Neural Networks,DNN),具体的本公开不做限制。
综上所述,本发明实施例提供的请求处理方法,可以先对接收的请求数据,通过预设渗透提取方式采集请求数据包含的目标信息特征、目标静态特征和目标动态特征,利用预设特征选择算法,分别计算目标信息特征、目标静态特征和目标动态特征中每一子特征对应的目标权重,基于每一子特征对应的目标权重,从目标信息特征、目标静态特征和目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量,通过预训练的特征检测模型对待检测特征向量进行计算检测,根据检测结果确定请求数据是否终止响应,该预训练的特征检测模型是结合预设粒子群算法训练得到的。这样,一方面,通过获取请求的信息特征、静态特征、动态特征,使得得到的特征涉及请求执行的整个过程,更为全面,同时,根据请求包含的各个特征来分析处理该请求可以提高对请求检测处理的准确性,减少漏报误报的可能,另一方面,通过粒子群算法优化特征检测模型的网络结构,可以提高模型的精度和网络结构的科学性,并且,也可以提高利用特征检测模型检测请求特征的准确性。
可选的,本公开实施例中上述通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征的操作,如图2所示,可以具体包括:
步骤S1011、利用所述预设渗透提取方式从所述请求数据中采集请求信息特征、请求静态特征、请求动态特征。
本公开实施例中,可以是通过将预设渗透提取方式设置在指定节点处,当请求执行至指定节点时,利用预设渗透提取方式采集该请求对应的特征,比如,可以将预设渗透提取方式设置在接收请求时、请求运行前、请求运行三个节点处,当接收请求时,利用预设渗透提取方式采集该请求包含的请求信息特征,当在请求运行前时,利用预设渗透提取方式采集该请求包含的请求静态特征,当在请求运行中时,利用预设渗透提取方式采集该请求包含的请求动态特征。
在实际应用场景中,可以是利用插桩技术预先在处理请求的相关位置上埋入探针(Hook点),用于记录应用对接收的请求运行时的相关信息,比如,可以在接收请求时、请求运行前、请求运行中三个位置埋入Hook点,当一个请求进入事先埋好的Hook点时,该Hook点会获取该请求的相关信息,因此,可以分别提取到请求刚进入后端服务时的信息特征、利用SQL语句生成后的请求静态特征、利用SQL语句执行后的请求动态特征。
步骤S1012、分别对所述请求信息特征、所述请求静态特征、所述请求动态特征进行归一化处理,获得所述目标信息特征、所述目标静态特征和所述目标动态特征。
本公开实施例中,该归一化处理可以是将各个特征分别映射到0~1范围之内处理,具体的归一化处理方式可以根据实际情况设置的。具体的,可以对请求信息特征进行归一化处理,将处理结果作为目标信息特征,对请求静态特征进行归一化处理,将处理结果作为目标静态特征,对请求动态特征进行归一化处理,将处理结果作为目标动态特征。这样,通过对各特征进行归一化处理,可以将不同维度上的特征均以同一度量表征,减少各特征所占的存储资源,也提高了对归一化特征的处理速度。
可选的,本公开实施例中上述利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重的操作,如图3所示,可以具体包括:
步骤S1021、遍历所述目标信息特征、所述目标静态特征和所述目标动态特征中的子特征作为待处理特征。
本公开实施例中,由于目标信息特征、目标静态特征和目标动态特征中分别包含有多个子特征,则可以遍历这多个子特征,将每一子特征作为待处理特征。
步骤S1022、通过预设特征差异公式计算所述待处理特征在所属类别中的第一特征差异值,以及,所述待处理特征在其他类别中的第二特征差异值。
本公开实施例中,预设特征差异公式可以是用于计算特征之间差异值的公式。具体的,可以先确定待处理特征所属类别,将与待处理特征属于同一类别的特征作为第一特征,将与待处理特征属于不同类别的特征作为第二特征,再将待处理特征和第一特征输入至预设特征差异公式,可以计算得到待处理特征在所属类别中的第一特征差异值,将待处理特征和第二特征输入至预设特征差异公式,可以计算得到待处理特征在其他类别中的第二特征差异值。该预设特征差异公式可以表示如下:
其中,dif(A,E1,E2)可以表示计算类别E1的特征A值和类别E2的特征A值之间的差值,value(A,E1)可以表示类别E1的特征A值,value(A,E2)可以表示类别E2的特征A值,max(A)-min(A)可以表示两个特征A值的最大值与最小值之差。
步骤S1023、基于所述第一特征差异值和所述第二特征差异值,利用预设特征权重公式迭代计算,获得所述待处理特征对应的目标权重。
本公开实施例中,可以是将第一特征差异值和第二特征差异值输入至预设特征权重公式,通过迭代计算直至通过计算的权重可以选取到符合预设阈值比例的特征,则将该权重作为待处理特征对应的目标权重。该预设特征权重公式可以具体表示如下:
其中,w[A]*可以表示为待处理特征A更新后的权重,w[A]可以表示为待处理特征A更新前的权重,dif(A,Xi,Hj)可以表示为第一特征差异值,即,待处理特征Xi的特征A值和同一类别下其他特征Hj的特征A值之间的差值,Xi可以是第i次迭代的待处理特征,Hj可以是与Xi同一类别中的第一特征集合,k可以是与特征Xi最近邻的个数,η可以是预设迭代次数,该迭代次数的具体值可以根据实际情况设置,C可以表示任意一个类别,C≠class(XI)可以表示C和XI是两个不同的类别,p(C)可以是该类别C出现的概率,1-p(class(XI))可以不包含XI所属类别的概率,Mj(C)可以是与Xi不同类别C中的第二特征集合,dif(A,Xi,Mj(C))可以表示为第二特征差异值,即,待处理特征Xi的特征A值和不同类别C下特征Mj(C)的特征A值之间的差值。
可选的,本公开实施例中上述基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量的操作,如图4所示,可以具体包括:
步骤S1031、基于所述每一子特征对应的目标权重,对所述每一子特征排序。
本公开实施例中,可以是按照每一子特征对应的目标权重大小,依次对每一子特征排序。
步骤S1032、根据排序结果选取符合所述预设阈值比例的子特征,组成所述待检测特征向量。
本公开实施例中,可以是选取子特征对应的权重符合权重阈值,且该符合权重阈值的子特征所占比例也符合预设比例,将选取得到的子特征组成该请求数据的待检测特征向量。这样,使得得到的待检测特征向量可以在减少特征的冗余性的同时,满足最后使用的特征尽可能的涵盖特征检测所需的关键信息,从而可以提高特征检测的准确性。具体的,可以根据预设特征选取阈值比例t来确定需要选取符合预设阈值比例的特征个数,该预设阈值比例公式可以表示如下:
其中,n可以表示特征A属性的总数,t可以表示预设特征选取阈值比例,该预设特征选取阈值比例t可以是根据经验设置的,n*可以表示满足预设特征选取阈值比例t的情况下需要选取的特征个数。因此,可以通过上述预设阈值比例公式来计算需要选取特征的个数,再比较符合权重阈值的特征个数与该需要选取特征的个数是否匹配,若不匹配,则利用预设特征权重公式更新各个特征的权重,直至符合权重阈值的特征个数与该需要选取特征的个数匹配,若匹配,则按照该需要选取特征的个数来选取特征,并将选取到的子特征组成待检测特征向量。
示例的,基于请求数据包含的目标信息特征、目标静态特征和目标动态特征,通过预设特征选择算法计算并选取,得到该请求数据的待检测特征向量,输入的特征数据集可以为Xi,{X1,X2,X3,…,Xn},i=1,2,…,n,Hj可以表示与Xi同一类别的第一特征集合,Mj(C)可以表示与Xi不同类别C中的第二特征集合,通过迭代计算处理,可以输出n维特征的目标权重矩阵,具体的伪代码处理过程可以表示如下:
示例的,在一种实际应用场景中,图5示意性示出本公开实施例提供的组成待检测特征向量的示意图,如图5所示,S11、对接收到的客户端请求,进入预先设置探针处获取该请求对应的特征;S12、探针可以设置在接收请求时,则通过该探针可以采集到请求对应的目标信息特征;S13、探针可以设置在请求运行前,则通过该探针可以采集到请求对应的静态特征;S14、探针可以设置在请求运行中,则通过该探针可以采集到请求对应的动态特征;S15、对获取到的静态特征进行语法分析,得到该请求对应的目标静态特征;S16、对获取到的动态特征进行SQL执行时状态分析,得到该请求对应的目标动态特征;S17、利用预设特征选择算法,计算目标信息特征、目标静态特征和目标动态特征中每一子特征对应的目标权重;S18、基于每一子特征对应的目标权重,从目标信息特征、目标静态特征和目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量。
可选的,如图6所示,本公开实施例中上述请求处理方法还可以包括:
步骤S201、获取样本请求对应的样本特征向量以及所述样本请求对应的真实响应结果。
本公开实施例中,样本请求可以是***之前接收到的请求,也可以是人工编写的请求。样本请求对应的样本特征向量可以是通过获取样本请求包含的样本特征有样本信息特征、样本静态特征、样本动态特征,再利用预设特征选择算法计算各个样本特征对应的样本权重,按照预设阈值比例选取样本特征组成的样本特征向量。样本请求对应的真实响应结果可以人为检测标注的,也可以是通过检测确定的。
步骤S202、将所述样本特征向量和所述真实响应结果作为一个训练样本对。
示例的,样本特征向量可以是Y=[y1,y2,y3,…,yn],该样本请求对应的真实响应结果可以是终止响应,则可以将Y=[y1,y2,y3,…,yn]与“终止响应”作为一个训练样本对,样本特征向量可以是Z=[z1,z2,z3,…,zn],该样本请求对应的真实响应结果可以是正常响应,则可以将Z=[z1,z2,z3,…,zm]与“正常响应”作为一个训练样本对。
步骤S203、利用训练样本对对目标特征检测模型进行迭代训练,以获取输出的样本响应结果符合所述真实响应结果的所述预训练的特征检测模模型;所述目标特征检测模型中的神经网络层数、每层神经元个数、激活函数类型是根据所述预设粒子群算法确定的。
本公开实施例中,可以是将训练样本对中的样本特征向量输入至目标特征检测模型中进行计算处理,输出针对该样本特征向量的样本响应结果,判断样本响应结果与真实响应结果是否匹配,若不匹配,则调整目标特征检测模型中的训练参数,并重新将样本特征向量输入至目标特征检测模型中进行迭代训练,直至输出的样本响应结果符合真实响应结果,将样本响应结果符合真实响应结果的目标特征检测模型作为预训练的特征检测模模型。其中,该目标特征检测模型的网络结构中神经网络层数、每层神经元个数、激活函数类型可以是根据预设粒子群算法确定的。
可选的,本公开实施例中上述请求处理方法还可以依次循环执行下述步骤一至步骤三,直至调整次数符合阈值,获得根据最终预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型设置的目标特征检测模型。
步骤一、根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型。
本公开实施例中,预设粒子群算法可以是粒子群优化算法(Particle SwarmOptimization,PSO),初始情况下,预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型可以是默认值,按照该默认值设置特征检测模型,将得到的特征检测模型作为初始特征检测模型。
步骤二、将所述训练样本对输入至所述初始特征检测模型,得到对所述样本特征向量处理的输出结果。
本公开实施例中,可以是将训练样本对中的样本特征向量输入至初始特征检测模型,经过初始特征检测模型的计算处理后,得到针对该样本特征向量的输出结果。
步骤三、利用所述预设粒子群算法对所述输出结果进行分析处理,来调整所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型,并重新执行所述根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型的操作,直至调整次数符合阈值,获得根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型设置的目标特征检测模型。
本公开实施例中,可以是通过预设粒子群算法中的预设速度公式和预设位置公式,对多个输出结果进行分析处理,并对随机解进行迭代优化,最后,按照最优解所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型得到目标检测模型。上述预设速度公式可以表示如下:
vij(t+1)=w*vij(t)+c1r1*[pbestij(t)-xij(t)]+c2r2*[gbestj(t)-xij(t)]
其中,vij(t+1)可以表示为粒子i在第t+1次迭代中第j维的速度,用于表示粒子对自身速度的保留程度,w可以表示为惯性权重,该惯性权重w可以利用预设惯性权重公式计算得到,vij(t)可以是表示为粒子i在第t次迭代中第j维的速度,c1、c2可以表示为预设学习因子,具体可以根据经验设置的,r1、r2可以是随机产生的(0,1)之间的数,用于仿效生物界中的轻微扰动,具体数值可以根据实验设置,xij(t)可以表示为粒子i在第t次迭代中第j维的位置,pbestij(t)可以表示粒子i在第t次迭代中第j维局部的最优值,gbestj(t)可以表示第t次迭代中第j维全局的最优值。
上述预设位置公式可以表示如下:
xij(t+1)=xij(t)+vij(t)
其中,xij(t+1)可以表示粒子i在第t+1次迭代中第j维的位置,其他同上。
预设惯性权重公式可以表示如下:
其中,w(t)可以表示第t次迭代中的惯性权重,wmin可以表示最小惯性权重,建议取值为0.4,wmax可以表示最大惯性权重,建议取值为0.9,t可以表示当前迭代次数,tmax可以表示迭代的最大次数。当w较大时,全局搜寻能力较强,当w较小时,局部搜寻能力较强。
示例的,根据样本请求对应的样本特征向量以及对应的真实响应结果,通过预设粒子群算法来确定目标特征检测模型中的神经网络层数、每层神经元个数、激活函数类型。具体的,输入样本特征向量与真实响应结果组成的训练样本对,通过预设粒子群算法的优化处理,可以输出最优的神经网络结构参数,即,最优的神经网络层数、每层神经元个数、激活函数类型。预设粒子群算法的伪代码处理过程可以表示如下:
1:设置需要优化的变量,同时限定各参数的更新范围,需要优化的变量为神经网络层数、每层神经元个数、激活函数类型;
2:设置PSO算法参数:学习因子、最大进化次数、惯性权值等;
3:初始化粒子群,确定粒子群规模,确保每颗粒子的位置向量和速度向量的维度一致;
4:计算各粒子的适应度,使用预测精度的倒数作为PSO的适应值,该适应值可以用于粒子空间位置优劣的度量,适应值越小,表明粒子位置越好;
5:将各粒子当前的适应值与个体极值进行比较,如果较优,则更新当前的个体极值;
6:将各粒子当前的个体极值与全局最优值进行比较,如果较优,则更新当前的全局极值;
7:根据预设速度公式和预设位置公式分别更新粒子的速度和位置,得到新的随机解;
8:当优化次数大于设置的优化次数时,算法终止,得到最优解。否则,返回第4步继续搜寻最优解;
9:将优化得到的神经元层数、每层神经元个数及激活函数类型作为神经网络的结构参数,然后根据损失函数利用逆向传播方法训练神经网络。
示例的,图7示意性示出本公开实施例提供的确定目标特征检测模型的示意图,如图7所示,S21、在预设粒子群算法中,初始化粒子个数及粒子群参数;S22、根据粒子个数及粒子群参数,来计算目标函数值,该目标函数可以是预设速度公式和预设位置公式;S23、更新局部最优值和全局最优值;S24、基于更新后的局部最优值和全局最优值,判断是否达到收敛依据;S25、若未达到收敛依据,则更新每个粒子的位置矢量和速度矢量,并重新执行计算目标函数值;S26、若达到收敛依据,则输出特征检测模型中最优的网络层数、神经元个数、激活函数类型;S27、根据最优的网络层数、神经元个数、激活函数类型来构建目标特征检测模型。
示例的,图8示意性示出本公开实施例提供的一种请求检测流程的示意图,如图8所示,S31、接收客户端的请求;S32、通过在接收请求节点设置的探针,获取请求信息特征;S33、通过在请求运行前节点设置的探针,获取请求静态特征;S34、通过在请求运行中节点设置的探针,获取请求动态特征;S35、利用预设特征选择算法,从请求信息特征、请求静态特征、请求动态特征中选取符合预设阈值比例的特征,组成待检测特征向量;S36、利用粒子群算法优化的预训练特征检测模型,确定该请求是否包含攻击行为;S37、若包含,则拒绝响应该请求;S38、若不包含,则正常响应该请求。
示例的,图9示意性示出本公开实施例提供的又一种请求检测流程的示意图,如图9所示,在实际应用场景中,S41、***接收客户端请求;S42、该请求进入SQL业务接口,通过预埋的HOOK点获取到请求信息特征;S43、该请求进入SQL语句生成处,通过预埋的HOOK点获取到请求静态特征;S44、该请求进入SQL语句执行,通过预埋的HOOK点获取到请求动态特征;S45、利用预设特征选择算法,计算对请求信息特征、请求静态特征、请求动态特征中每一子特征对应的目标权重;S46、基于各特征对应的目标权重,从请求信息特征、请求静态特征、请求动态特征中选取符合预设阈值比例的特征,组成待检测特征向量;S47、通过粒子群优化的特征检测模型,确定该待检测特征向量中是否包含攻击行为,若包含,则终止响应该请求,若不包含,则正常响应该请求。
图10示意性示出本公开实施例提供的一种请求处理装置,如图10所示,该装置50可以包括:
采集模块501,用于对接收的请求数据,通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征;
计算模块502,用于利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重;
选取模块503,用于基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量;
检测模块504,用于通过预训练的特征检测模型对所述待检测特征向量进行计算检测,根据检测结果确定所述请求数据是否终止响应;所述预训练的特征检测模型是结合预设粒子群算法训练得到的。
综上所述,本发明实施例提供的请求处理装置,可以先对接收的请求数据,通过预设渗透提取方式采集请求数据包含的目标信息特征、目标静态特征和目标动态特征,利用预设特征选择算法,分别计算目标信息特征、目标静态特征和目标动态特征中每一子特征对应的目标权重,基于每一子特征对应的目标权重,从目标信息特征、目标静态特征和目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量,通过预训练的特征检测模型对待检测特征向量进行计算检测,根据检测结果确定请求数据是否终止响应,该预训练的特征检测模型是结合预设粒子群算法训练得到的。这样,一方面,通过获取请求的信息特征、静态特征、动态特征,使得得到的特征涉及请求执行的整个过程,更为全面,同时,根据请求包含的各个特征来分析处理该请求可以提高对请求检测处理的准确性,减少漏报误报的可能,另一方面,通过粒子群算法优化特征检测模型的网络结构,可以提高模型的精度和网络结构的科学性,并且,也可以提高利用特征检测模型检测请求特征的准确性。
可选的,所述采集模块501,还用于:
利用所述预设渗透提取方式从所述请求数据中采集请求信息特征、请求静态特征、请求动态特征;
分别对所述请求信息特征、所述请求静态特征、所述请求动态特征进行归一化处理,获得所述目标信息特征、所述目标静态特征和所述目标动态特征。
可选的,所述计算模块502,还用于:
遍历所述目标信息特征、所述目标静态特征和所述目标动态特征中的子特征作为待处理特征;
通过预设特征差异公式计算所述待处理特征在所属类别中的第一特征差异值,以及,所述待处理特征在其他类别中的第二特征差异值;
基于所述第一特征差异值和所述第二特征差异值,利用预设特征权重公式迭代计算,获得所述待处理特征对应的目标权重。
可选的,所述选取模块503,还用于:
基于所述每一子特征对应的目标权重,对所述每一子特征排序;
根据排序结果选取符合所述预设阈值比例的子特征,组成所述待检测特征向量。
可选的,所述装置50还包括:
获取模块,用于获取样本请求对应的样本特征向量以及所述样本请求对应的真实响应结果;
确定模块,用于将所述样本特征向量和所述真实响应结果作为一个训练样本对;
训练模块,用于利用训练样本对对目标特征检测模型进行迭代训练,以获取输出的样本响应结果符合所述真实响应结果的所述预训练的特征检测模模型;所述目标特征检测模型中的神经网络层数、每层神经元个数、激活函数类型是根据所述预设粒子群算法确定的。
可选的,所述装置50还包括:
设置模块,用于根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型;
输出模块,用于将所述训练样本对输入至所述初始特征检测模型,得到对所述样本特征向量处理的输出结果;
调整模块,用于利用所述预设粒子群算法对所述输出结果进行分析处理,来调整所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型,并重新执行所述根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型的操作,直至调整次数符合阈值,获得根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型设置的目标特征检测模型。
上述请求处理装置中各模块的具体细节已经在对应的请求处理方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为***、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
下面参照图11来描述根据本公开的这种实施方式的电子设备600。图11显示的电子设备600仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图11所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同***组件(包括存储单元620和处理单元610)的总线630以及显示单元640。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤S101、对接收的请求数据,通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征;步骤S102、利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重;步骤S103、基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征、所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量;步骤S104、通过预训练的特征检测模型对所述待检测特征向量进行计算检测,根据检测结果确定所述请求数据是否终止响应;所述预训练的特征检测模型是结合预设粒子群算法训练得到的。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器660通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
根据本公开的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里发明的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未发明的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (10)
1.一种请求处理方法,其特征在于,所述方法包括:
对接收的请求数据,通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征;
利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重;
基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量;
通过预训练的特征检测模型对所述待检测特征向量进行计算检测,根据检测结果确定所述请求数据是否终止响应;所述预训练的特征检测模型是结合预设粒子群算法训练得到的。
2.根据权利要求1所述的方法,其特征在于,所述通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征,包括:
利用所述预设渗透提取方式从所述请求数据中采集请求信息特征、请求静态特征、请求动态特征;
分别对所述请求信息特征、所述请求静态特征、所述请求动态特征进行归一化处理,获得所述目标信息特征、所述目标静态特征和所述目标动态特征。
3.根据权利要求1所述的方法,其特征在于,所述利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重,包括:
遍历所述目标信息特征、所述目标静态特征和所述目标动态特征中的子特征作为待处理特征;
通过预设特征差异公式计算所述待处理特征在所属类别中的第一特征差异值,以及,所述待处理特征在其他类别中的第二特征差异值;
基于所述第一特征差异值和所述第二特征差异值,利用预设特征权重公式迭代计算,获得所述待处理特征对应的目标权重。
4.根据权利要求1所述的方法,其特征在于,所述基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量,包括:
基于所述每一子特征对应的目标权重,对所述每一子特征排序;
根据排序结果选取符合所述预设阈值比例的子特征,组成所述待检测特征向量。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取样本请求对应的样本特征向量以及所述样本请求对应的真实响应结果;
将所述样本特征向量和所述真实响应结果作为一个训练样本对;
利用训练样本对对目标特征检测模型进行迭代训练,以获取输出的样本响应结果符合所述真实响应结果的所述预训练的特征检测模模型;所述目标特征检测模型中的神经网络层数、每层神经元个数、激活函数类型是根据所述预设粒子群算法确定的。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型;
将所述训练样本对输入至所述初始特征检测模型,得到对所述样本特征向量处理的输出结果;
利用所述预设粒子群算法对所述输出结果进行分析处理,来调整所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型,并重新执行所述根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型来设置特征检测模型,获得初始特征检测模型的操作,直至调整次数符合阈值,获得根据所述预设粒子群算法所指示的神经网络层数、每层神经元个数、激活函数类型设置的目标特征检测模型。
7.一种请求处理装置,其特征在于,所述装置包括:
采集模块,用于对接收的请求数据,通过预设渗透提取方式采集所述请求数据包含的目标信息特征、目标静态特征和目标动态特征;
计算模块,用于利用预设特征选择算法,分别计算所述目标信息特征、所述目标静态特征和所述目标动态特征中每一子特征对应的目标权重;
选取模块,用于基于所述每一子特征对应的目标权重,从所述目标信息特征、所述目标静态特征和所述目标动态特征中选取符合预设阈值比例的子特征组成待检测特征向量;
检测模块,用于通过预训练的特征检测模型对所述待检测特征向量进行计算检测,根据检测结果确定所述请求数据是否终止响应;所述预训练的特征检测模型是结合预设粒子群算法训练得到的。
8.根据权利要求7所述的装置,其特征在于,所述计算模块,还用于:
遍历所述目标信息特征、所述目标静态特征和所述目标动态特征中的子特征作为待处理特征;
通过预设特征差异公式计算所述待处理特征在所属类别中的第一特征差异值,以及,所述待处理特征在其他类别中的第二特征差异值;
基于所述第一特征差异值和所述第二特征差异值,利用预设特征权重公式迭代计算,获得所述待处理特征对应的目标权重。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6任一项所述的请求处理方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-6任一项所述的请求处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210891762.XA CN115146258B (zh) | 2022-07-27 | 2022-07-27 | 请求处理方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210891762.XA CN115146258B (zh) | 2022-07-27 | 2022-07-27 | 请求处理方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115146258A true CN115146258A (zh) | 2022-10-04 |
CN115146258B CN115146258B (zh) | 2023-10-31 |
Family
ID=83415032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210891762.XA Active CN115146258B (zh) | 2022-07-27 | 2022-07-27 | 请求处理方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115146258B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107392025A (zh) * | 2017-08-28 | 2017-11-24 | 刘龙 | 基于深度学习的恶意安卓应用程序检测方法 |
US20190219994A1 (en) * | 2018-01-18 | 2019-07-18 | General Electric Company | Feature extractions to model large-scale complex control systems |
CN112084497A (zh) * | 2020-09-11 | 2020-12-15 | 国网山西省电力公司营销服务中心 | 嵌入式Linux***恶意程序检测方法及装置 |
CN112464232A (zh) * | 2020-11-21 | 2021-03-09 | 西北工业大学 | 一种基于混合特征组合分类的Android***恶意软件检测方法 |
CN114398834A (zh) * | 2022-01-18 | 2022-04-26 | 中国科学院半导体研究所 | 粒子群优化算法模型的训练方法、粒子群优化方法及装置 |
-
2022
- 2022-07-27 CN CN202210891762.XA patent/CN115146258B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107392025A (zh) * | 2017-08-28 | 2017-11-24 | 刘龙 | 基于深度学习的恶意安卓应用程序检测方法 |
US20190219994A1 (en) * | 2018-01-18 | 2019-07-18 | General Electric Company | Feature extractions to model large-scale complex control systems |
CN112084497A (zh) * | 2020-09-11 | 2020-12-15 | 国网山西省电力公司营销服务中心 | 嵌入式Linux***恶意程序检测方法及装置 |
CN112464232A (zh) * | 2020-11-21 | 2021-03-09 | 西北工业大学 | 一种基于混合特征组合分类的Android***恶意软件检测方法 |
CN114398834A (zh) * | 2022-01-18 | 2022-04-26 | 中国科学院半导体研究所 | 粒子群优化算法模型的训练方法、粒子群优化方法及装置 |
Non-Patent Citations (1)
Title |
---|
张蕾 等: "机器学习在网络空间安全研究中的应用", 计算机学报, vol. 41, no. 9, pages 1943 - 1975 * |
Also Published As
Publication number | Publication date |
---|---|
CN115146258B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11190562B2 (en) | Generic event stream processing for machine learning | |
US11651247B2 (en) | Method for verifying lack of bias of deep learning AI systems | |
CN110705255B (zh) | 检测语句之间的关联关系的方法和装置 | |
CN110162939B (zh) | 人机识别方法、设备和介质 | |
US11593700B1 (en) | Network-accessible service for exploration of machine learning models and results | |
CN114548300B (zh) | 解释业务处理模型的业务处理结果的方法和装置 | |
CN116684491A (zh) | 一种基于深度学习的动态缓存方法、装置、设备和介质 | |
US10291483B2 (en) | Entity embedding-based anomaly detection for heterogeneous categorical events | |
CN113591998A (zh) | 分类模型的训练和使用方法、装置、设备以及存储介质 | |
CN116663018A (zh) | 一种基于代码可执行路径的漏洞检测方法及装置 | |
CN115146258B (zh) | 请求处理方法、装置、存储介质及电子设备 | |
TW202324202A (zh) | 從基於注意力之模型提取解釋 | |
CN116992937A (zh) | 神经网络模型的修复方法和相关设备 | |
CN115168851A (zh) | 生成恶意文件检测规则、检测恶意文件的方法及装置 | |
CN111461344B (zh) | 高阶特征的自动生成方法、***、设备和介质 | |
CN112818658B (zh) | 文本对分类模型的训练方法、分类方法、设备及存储介质 | |
CN117540791B (zh) | 一种对抗训练的方法及装置 | |
CN114139165B (zh) | 基于机器学习中的多目标识别的智能合约漏洞检测方法 | |
KR102613844B1 (ko) | 인공지능 모델 설계 자동화 장치 및 방법 | |
CN113314206B (zh) | 图像显示方法、装置和终端设备 | |
US20230068513A1 (en) | Testing models in data pipeline | |
CN117527444B (zh) | 用于训练检测登录数据风险值的模型的方法、设备和介质 | |
CN112989342B (zh) | 恶意软件检测网络优化方法、装置、电子设备及存储介质 | |
US20230281314A1 (en) | Malware risk score determination | |
EP4123511A1 (en) | Trainable differential privacy for machine learning |
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 | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20221004 Assignee: Tianyiyun Technology Co.,Ltd. Assignor: CHINA TELECOM Corp.,Ltd. Contract record no.: X2024110000020 Denomination of invention: Request processing method, device, storage medium, and electronic device Granted publication date: 20231031 License type: Common License Record date: 20240315 |