基于NLP技术的Restful请求去重方法及装置制造方法及图纸

技术编号:39405557 阅读:7 留言:0更新日期:2023-11-19 15:57
本申请公开一种基于NLP技术的Restful请求去重方法及装置,方法包括:按照域名和方法对各Restful请求进行归集;将所述Restful请求的路径分解成单词;对分解得到的各所述单词进行语义分析以识别出所述Restful请求中的资源信息;对所述Restful请求中未被识别为所述资源信息的单词进行泛化处理;对同一集合中的所有Restful请求进行比较、去重。本申请能够对字段内容进行更深入的解析,可以进行更准确的去重处理,有利于满足真实场景,且本申请无需提前知道Restful请求对应哪些应用程序以及各应用程序对应的原始URL。用程序对应的原始URL。用程序对应的原始URL。

【技术实现步骤摘要】
基于NLP技术的Restful请求去重方法及装置


[0001]本申请涉及Restful请求去重
,具体涉及一种基于NLP技术的Restful请求去重方法及装置。

技术介绍

[0002]使用扫描工具对目标应用进行检测时,往往需要先收集目标应用的请求流量,然后基于请求流量进行变异检测。为了提高扫描效率,需要对请求流量进行去重处理。但是目前判断Restful请求是否存在重复(需要解决可变参数,可以搜索如PathVariable场景)的方法存在以下问题:
[0003]1、对请求进行分段处理,通过同一段级别的不同所述字段内容的数量是否符合预设请求数量来判断是否存在重复的方法,对字段内容没有更深入的解析,纯粹基于预设数量的方式,准确性很难满足真实场景。
[0004]2、需要提前知道请求对应哪些应用程序,以及各应用程序对应的原始URL,但是如果请求流量对应多个应用程序,复杂度就会变高,另外,如何获取应用程序的原始URL也是一个难点。

技术实现思路

[0005]本申请的目的在于提供一种基于NLP技术的Restful请求去重方法、装置、电子设备及计算机可读存储介质,可以解决上述
技术介绍
中存在的至少一技术问题。
[0006]为实现上述目的,本申请提供了一种基于NLP技术的Restful请求去重方法,包括:
[0007]S1、按照域名和方法对各Restful请求进行归集;
[0008]S2、将所述Restful请求的路径分解成单词;
[0009]S3、对分解得到的各所述单词进行语义分析以识别出所述Restful请求中的资源信息;
[0010]S4、对所述Restful请求中未被识别为所述资源信息的单词进行泛化处理;
[0011]S5、对同一集合中的所有Restful请求进行比较、去重。
[0012]可选地,所述按照域名和方法对各Restful请求进行归集,包括如下步骤:
[0013]按照域名将各所述Restful请求进行归集;
[0014]按照方法将每一集合中的各所述Restful请求进行归集。
[0015]可选地,各所述单词通过“/”分隔符分隔;
[0016]所述将所述Restful请求的路径分解成单词,包括:
[0017]基于所述路径中的“/”分隔符,将所述Restful请求的路径分解成单词。
[0018]可选地,所述资源信息为名词。
[0019]可选地,所述对所述Restful请求中未被识别为所述资源信息的单词进行泛化处理,包括:
[0020]确定未被识别为所述资源信息的所述单词是否为动态ID信息,如果是,则进行泛
化处理。
[0021]可选地,如果否,则计算该单词的信息熵,如果所述信息熵的值大于或大于等于预设阈值,则对该单词进行泛化处理。
[0022]可选地,所述未被识别为所述资源信息的单词泛化处理后以通配符表示。
[0023]为实现上述目的,本申请还提供了一种基于NLP技术的Restful请求去重的装置,包括:
[0024]归集模块,用于按照域名和方法对各Restful请求进行归集;
[0025]分解模块,用于将所述Restful请求的路径分解成单词;
[0026]分析识别模块,用于对分解得到的各所述单词进行语义分析以识别出所述Restful请求中的资源信息;
[0027]泛化模块,用于对所述Restful请求中未被识别为所述资源信息的单词进行泛化处理;
[0028]去重模块,用于对泛化处理后的同一集合中的所有Restful请求进行比较、去重。
[0029]为实现上述目的,本申请还提供了一种电子设备,包括:
[0030]处理器;
[0031]存储器,其中存储有所述处理器的可执行指令;
[0032]其中,所述处理器配置为经由执行所述可执行指令来执行如前所述的基于NLP技术的Restful请求去重的方法。
[0033]为实现上述目的,本申请还提供了一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时实现如前所述的基于NLP技术的Restful请求去重的方法。
[0034]本申请还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行如上所述的基于NLP技术的Restful请求去重的方法。
[0035]本申请先按照域名和方法对各Restful请求进行归集,再将Restful请求的路径分解成单词,接着对分解得到的各所述单词进行语义分析以识别出所述Restful请求中的资源信息,并对Restful请求中未被识别为所述资源信息的单词进行泛化处理,然后对同一集合中的所有Restful请求进行比较、去重。本申请能够对字段内容进行更深入的解析,可以进行更准确的去重处理,有利于满足真实场景,且本申请无需提前知道Restful请求对应哪些应用程序以及各应用程序对应的原始URL。
附图说明
[0036]图1是本申请实施例基于NLP技术的Restful请求去重的方法的流程图。
[0037]图2是本申请实施例按照域名和方法对各Restful请求进行归集的流程图。
[0038]图3是本申请实施例基于NLP技术的Restful请求去重的装置的示意框图。
[0039]图4是本申请实施例电子设备的示例框图。
具体实施方式
[0040]为了详细说明本申请的
技术实现思路
、构造特征、所实现目的及效果,以下结合实施方
式并配合附图详予说明。
[0041]实施例一
[0042]请参阅图1,本申请公开了一种基于NLP技术的Restful请求去重方法,包括:
[0043]S1、按照域名和方法对各Restful请求进行归集。
[0044]在按照域名和方法对各Restful请求进行归集后,每个集合内的Restful请求均为域名相同且方法也相同的Restful请求。
[0045]请参阅图2,具体地,按照域名和方法对各Restful请求进行归集,包括如下步骤:
[0046]S11、按照域名将各Restful请求进行归集。
[0047]例如:请求”payment.example.com/order/1”中的”payment.example.com”或者”api.example.com/text?name=abc”中的”api.example.com”为不同的域名。
[0048]在按照域名将各Restful请求进行归集后,各集合内的Restful请求均为域名相同的Restful请求。
[0049]S12、按照方法将每一集合中的各Restful请求进行归集。
[0050]常见的HTTP请求方法包括GET、POST、PUT、DELETE本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于NLP技术的Restful请求去重方法,其特征在于,包括:S1、按照域名和方法对各Restful请求进行归集;S2、将所述Restful请求的路径分解成单词;S3、对分解得到的各所述单词进行语义分析以识别出所述Restful请求中的资源信息;S4、对所述Restful请求中未被识别为所述资源信息的单词进行泛化处理;S5、对同一集合中的所有Restful请求进行比较、去重。2.如权利要求1所述的基于NLP技术的Restful请求去重方法,其特征在于,所述按照域名和方法对各Restful请求进行归集,包括如下步骤:按照域名将各所述Restful请求进行归集;按照方法将每一集合中的各所述Restful请求进行归集。3.如权利要求1所述的基于NLP技术的Restful请求去重方法,其特征在于,各所述单词通过“/”分隔符分隔;所述将所述Restful请求的路径分解成单词,包括:基于所述路径中的“/”分隔符,将所述Restful请求的路径分解成单词。4.如权利要求1所述的基于NLP技术的Restful请求去重方法,其特征在于,所述资源信息为名词。5.如权利要求1所述的基于NLP技术的Restful请求去重方法,其特征在于,所述对所述Restful请求中未被识别为所述资源信息的单词进行泛化处理,包括:确定未被识别为所述资源信息的所述单词是否为动态...

【专利技术属性】
技术研发人员:刘海涛万振华王颉李华董燕
申请(专利权)人:深圳开源互联网安全技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1