System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于流量数据分析,具体涉及一种基于流量数据识别系统是否存在api翻页遍历行为的方法。
技术介绍
1、列表是互联网产品中很常见的一种内容排列形式,而且列表的数据集往往成千上万,一次性返回全量数据集的场景几乎不存在,所以出现了数据分页的需求。总体上可以划分为两种分页方式:传统分页和流式分页。传统分页:通过显示的页码查询指定页的数据,多用于pc(电脑)端数据变化不频繁的列表展示;流式分页:通过滚动方式隐式加载更多的数据,适用pc和移动端大多场景。
2、互联网服务和平台通过api(应用程序接口)提供对外的服务和数据访问接口,当有爬虫程序通过api爬取网页数据时,需要获取大量数据就需要对列表api发起递归循环调用,通过多次api访问,获取全部或者大部分数据,即为api翻页遍历行为。例如某个ip对某个api执行翻页遍历,通过对api翻页读取数据,短时间内或者长时间过程中,获取完整的数据内容,该风险行为极难被跟踪发现。
3、目前针对api翻页遍历的行为,普遍通过访问来源、访问频率、访问次数等相关参数来综合判断,当每个api被访问次数过大,频率过高时,判断来源地址是否为同一个,然后识别参数是否发生变化,由此来推断是否存在数据爬取,api翻页遍历获取数据的行为。
4、一方面,上述解决方案需要通过对大量访问情况做统计,找出列表api,并通过对大量数据进行分析计算,得出api的访问频率,但是如果是特殊场景存在高频率访问,会产生大量误判。同时,当存在慢性低频数据泄露时,此方案完全识别不到。
5、另一
6、基于此,本专利技术提出一种基于流量数据识别系统是否存在api翻页遍历行为的方法,通过采集网络流量,从中提取出http协议的请求流量,进而分析判断应用系统是否存在api翻页遍历行为。
技术实现思路
1、为了改善相关技术中的问题,本申请提供一种基于流量数据识别系统是否存在api翻页遍历行为的方法,通过识别并提取出api中疑似翻页参数,从而标识出列表类型的api,通过对参数组合的分析,判断此应用api是否存在翻页遍历的行为,填补了现有技术的空缺。
2、本申请提供一种基于流量数据识别系统是否存在api翻页遍历行为的方法,采用如下的技术方案:
3、一种基于流量数据识别系统是否存在api翻页遍历行为的方法,方法步骤如下:
4、s1、获取http流量数据,包括请求头、请求路径、请求体、ip、响应状态,并解析为键值对格式,用于标识用户;
5、s2、整合参数数据,寻找出现频率最高的参数组合,特别是与列表分页相关的参数;
6、s3、重复步骤s2多次,以获取更多的参数组合,标识分页字段;
7、s4、分析api,标记携带分页参数的api,并记录参数数据值的乘积;
8、s5、生成参数组合,计算参数乘积的笛卡尔积,以模拟不同分页请求;
9、s6、设定阈值,比较参数乘积种类数量,判断ip或用户是否存在api翻页遍历行为。
10、作为方案的进一步优化,步骤一中,http请求头包含用户代理、接受的响应内容类型、授权标头;
11、请求路径包含api的端点和参数;
12、对于post请求,请求体中包含有关api调用的进一步信息;
13、源ip地址用于标识请求的来源;
14、响应状态包括响应状态码,用于了解api请求的结果。
15、作为方案的进一步优化,步骤二的具体操作流程为:
16、s21、判断http响应状态是否正常:检查http响应状态;
17、s22、数据预处理:如果请求体不为空,对请求体中的键值对进行特殊符号替换和去除操作,并将请求路径和请求体的所有字符拼接为一条完整的新字符串;
18、s23、获取数据中最常出现的“=数字”结构:从整批数据中提取出最常出现的“=数字”结构,其中等号后跟随一个数字;排除“=”+任意数字+“-”、“*d=”+任意数字等特殊组合,且一个url中最少两个作为一组对应参数;
19、s24、统计最常见的参数组合:统计整批数据中出现频率最高的参数值组合,并提取这些参数值。
20、作为方案的进一步优化,在整合参数值时,进行参数值的格式化;将参数值与其所属的api请求相关联;对于相似但格式略有不同的参数值,进行标准化处理;记录提取的参数信息,包括参数名称、参数值、出现频率等数据。
21、作为方案的进一步优化,步骤三的具体操作流程为:
22、s31、多次抽样:执行步骤s2多次,以获得多个独立的数据样本。这有助于提高识别分页字段的准确性;
23、s32、统计分析:对每次步骤s2的结果进行统计分析,以确定哪些参数在多次抽样中频繁出现,且其值变化明显;
24、s33、设定阈值:设定一个阈值,以确定哪些参数被认为是用于翻页的字段;
25、s34、标识字段:对于确定的分页字段,进行标识,记录它们的名称和取值范围。
26、作为方案的进一步优化,步骤四的具体操作流程为:
27、s41、api识别:对流量数据中的每个api进行分析和识别,检查是否包含了分页参数;
28、s42、标识为列表api:当发现api包含分页参数时,将该api标识为列表api,即用于翻页遍历的api;
29、s43、数据记录:对于标识为列表api的请求,记录请求的url、来源ip、所携带的cookie以及参数“当前页”和“页长”的数据值;
30、s44、参数乘积计算:计算参数“当前页”和“页长”两个参数的数据值的乘积;
31、s45、访问记录:将计算得到的参数乘积记录到与用户cookie相关的api访问记录中。
32、作为方案的进一步优化,步骤五的具体操作流程为:
33、s51、参数范围设定:明确当前页参数和页码参数的可能取值范围;
34、s52、笛卡尔积计算:将当前页参数的可能取值与页码参数的可能取值进行笛卡尔积计算。
35、作为方案的进一步优化,步骤六的具体操作流程为:
36、s61、设置阈值:为了判断api翻页遍历行为,设置一个阈值;
37、s62、分析数值积:遍历数据中每个ip或者对应的用户,分析其记录中的数值积,即步骤四中计算出的参数乘积;
38、s63、比较阈值:对于每个ip或用户,将其数值积种类数量与设定的阈值进行比较;
39、s64、识别翻页遍历行为:当某个ip或用户的数值积种类数量大于等于阈值时,判定该ip或用户存在api翻页遍历行为。
40、本本文档来自技高网...
【技术保护点】
1.一种基于流量数据识别系统是否存在API翻页遍历行为的方法,其特征在于,方法步骤如下:
2.根据权利要求1所述的一种基于流量数据识别系统是否存在API翻页遍历行为的方法,其特征在于,步骤一中,HTTP请求头包含用户代理、接受的响应内容类型、授权标头;
3.根据权利要求1所述的一种基于流量数据识别系统是否存在API翻页遍历行为的方法,其特征在于,步骤二的具体操作流程为:
4.根据权利要求3所述的一种基于流量数据识别系统是否存在API翻页遍历行为的方法,其特征在于,在整合参数值时,进行参数值的格式化;将参数值与其所属的API请求相关联;对于相似但格式略有不同的参数值,进行标准化处理;记录提取的参数信息,包括参数名称、参数值、出现频率等数据。
5.根据权利要求1所述的一种基于流量数据识别系统是否存在API翻页遍历行为的方法,其特征在于,步骤三的具体操作流程为:
6.根据权利要求1所述的一种基于流量数据识别系统是否存在API翻页遍历行为的方法,其特征在于,步骤四的具体操作流程为:
7.根据权利要求1所述的一种基于流
8.根据权利要求1所述的一种基于流量数据识别系统是否存在API翻页遍历行为的方法,其特征在于,步骤六的具体操作流程为:
...【技术特征摘要】
1.一种基于流量数据识别系统是否存在api翻页遍历行为的方法,其特征在于,方法步骤如下:
2.根据权利要求1所述的一种基于流量数据识别系统是否存在api翻页遍历行为的方法,其特征在于,步骤一中,http请求头包含用户代理、接受的响应内容类型、授权标头;
3.根据权利要求1所述的一种基于流量数据识别系统是否存在api翻页遍历行为的方法,其特征在于,步骤二的具体操作流程为:
4.根据权利要求3所述的一种基于流量数据识别系统是否存在api翻页遍历行为的方法,其特征在于,在整合参数值时,进行参数值的格式化;将参数值与其所属的api请求相关联;对于相似但格式略有不同的参数值...
【专利技术属性】
技术研发人员:邱振兴,孙峰,陈扬彪,
申请(专利权)人:上海喜数信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。