一种接口保护方法、装置及应用制造方法及图纸

技术编号:36221437 阅读:46 留言:0更新日期:2023-01-04 12:19
本方案提出了一种接口保护方法、装置及应用,包括以下步骤:将接口在Kong网关中进行注册并开发对应的日志API,调用所述日志API记录其请求信息;训练一个预测模型,使用预测模型请求信息进行预测,得到预测结果表;监控Kong网关中接口的请求信息得到监测信息,将同一时间范围的监测信息与预测结果表中的信息进行比对判断,若比对判断结果认为接口存在安全风险,则将该时间范围内的监测信息发送到Rabbitmq的异常队列中,再对所述异常队列中的信息进行分析检测,排除安全风险。本方案通过模型对接口的安全问题进行识别,相比于人工极大提高了效率,并发明专利技术一种资源分配策略,以保证接口的安全系数。证接口的安全系数。证接口的安全系数。

【技术实现步骤摘要】
一种接口保护方法、装置及应用


[0001]本申请涉及接口安全领域,特别涉及一种接口保护方法、装置及应用。

技术介绍

[0002]在应用程序开发过程中,API是一个会被经常提及的东西,它的全称是Application Programming Interface(应用程序接口),一般指的是Web API,即:采用HTTP通信协议的API或者是Web应用程序对外提供的API,API从狭义上可以理解为是一种服务能力,调用方可以利用API很便捷的得到一组相关数据,而在大型的软件系统中,API还可以作为不同应用程序之间的一种契约,通过它可以将应用程序进行组装,从而实现业务逻辑更为复杂的功能。
[0003]API中携带大量重要数据和认证信息,一旦攻击者成功突破API,可直达核心系统,因此,为防止攻击者从中窃取高价值的数据,还能破坏应用程序的正常运作,API的设计中应当着重安全性,并建立对应的安全防范机制。
[0004]现阶段接口可以通过网关实现鉴权、监控、限流等控制,调用者调用接口时需要按照约定的鉴权形式认证,同时接口管理者可以通过系统配置限流策略,由于接口被攻击的情况随时都会发生,全部交由管理者人工处理被攻击的接口过于滞后,缺乏一种接口安全问题自动处置的方法。
[0005]并且,接口安全问题的识别需要更多维度的特征,包含爬虫检测、ip限定、流量监控分析等,所以,需要一种可以结合多个维度,且更加合理、更加客观的方法来定性识别接口安全问题,智能处置的方法。

技术实现思路

[0006]本申请方案提供一种接口保护方法,可以通过各种插件获取接口的调用量以及其他请求信息,并通过模型进行调用量的实时预测,从而更高效地对接口资源进行调用,并提高接口安全性。
[0007]第一方面,本申请提出一种接口保护方法,包括:
[0008]在Kong网关中注册接口并开发对应的日志API,当对Kong网关中注册的接口进行请求时,调用所述日志API记录所述请求的请求信息,基于时序统计所述请求信息得到接口调用信息,将所述接口调用信息记录到时序统计表;
[0009]构建一个预训练模型,依时序顺序定时调取所述时序统计表中的数据对所述预训练模型进行训练得到预测模型,将当前时刻输入到预测模型进行预测得到每一接口下一时段的预测调用信息,将所述预测调用信息基于时序保存到预测结果表;
[0010]持续监听所述时序统计表中的接口调用信息,将同一时间范围的接口调用信息与预测结果表中的预测调用信息进行比对,若比对判断结果认为接口存在安全风险,则将该时间范围内的接口调用信息作为预筛请求信息发送到Rabbitmq的疑似异常队列中,并对所述预筛请求信息进行二次异常判断,若判断为异常请求的话则将所述预筛请求信息基于时
序保存至接口异常调用记录表中并临时阻止对该接口的访问;若未判断为异常请求则根据所述预测结果表查询获取低频接口,释放所述低频接口的资源供存在安全风险的该接口调用。
[0011]第二方面,本申请提出了一种接口保护装置,包括:
[0012]注册模块:在Kong网关中注册接口并开发对应的日志API,当对Kong网关中注册的接口进行请求时,调用所述日志API记录所述请求的请求信息,基于时序统计所述请求信息得到接口调用信息,将所述接口调用信息记录到时序统计表;
[0013]构建模块:构建一个预训练模型,依时序顺序定时调取所述时序统计表中的数据对所述预训练模型进行训练得到预测模型,将当前时刻输入到预测模型进行预测得到每一接口下一时段的预测调用信息,将所述预测调用信息基于时序保存到预测结果表;
[0014]监控模块:持续监听所述时序统计表中的接口调用信息,将同一时间范围的接口调用信息与预测结果表中的预测调用信息进行比对,若比对判断结果认为接口存在安全风险,则将该时间范围内的接口调用信息作为预筛请求信息发送到Rabbitmq的疑似异常队列中,并对所述预筛请求信息进行二次异常判断,若判断为异常请求的话则将所述预筛请求信息基于时序保存至接口异常调用记录表中并临时阻止对该接口的访问;若未判断为异常请求则根据所述预测结果表查询获取低频接口,释放所述低频接口的资源供存在安全风险的该接口调用。
[0015]第三方面,本申请提供了一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行一种接口保护方法。
[0016]第四方面,本申请提供了一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序包括用于控制过程以执行过程的程序代码,所述过程包括一种接口保护方法。
[0017]相较现有技术,本技术方案具有以下特点和有益效果:
[0018]本方案提供了一种接口保护方法,使用预训练模型对接口存在流量激增的接口的初筛判断,并对初筛判断存在流量激增的接口进行二次异常判断,且在二次判断时融合了多维度的比对参数,相比于人工判断,本方案的识别维度更高,且结合了预训练模型的好处在于处理速度变快且判断方式多样,通过二次判断的方式提高了接口异常性能识别的准确度;且本方案通过设置多种任务队列,使用插件对任务队列中的信息进行检测判断,具有实时性,可以暂时切断外界与存在异常请求接口的访问,当对异常请求进行处理后,再恢复该接口的访问;若出现虽然不是异常请求但出现流量激增的情况,本方案还可以对不常用的接口进行限流设置以释放资源,供出现流量激增的接口使用,在多种维度保障了接口的安全性。
[0019]本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
[0020]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0021]图1是根据本申请实施例的一种接口保护方法的流程图;
[0022]图2是根据本申请实施例的部分API参数的参数图;
[0023]图3是根据本申请实施例的部分User

Agent和蜘蛛IP的示意图;
[0024]图4是根据本申请实施例的一种接口保护装置的结构框图;
[0025]图5是根据本申请实施例的电子装置的硬件结构示意图。
具体实施方式
[0026]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
[0027]需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种接口保护方法,其特征在于,包括:在Kong网关中注册接口并开发对应的日志API,当对Kong网关中注册的接口进行请求时,调用所述日志API记录所述请求的请求信息,基于时序统计所述请求信息得到接口调用信息,将所述接口调用信息记录到时序统计表;构建一个预训练模型,依时序顺序定时调取所述时序统计表中的数据对所述预训练模型进行训练得到预测模型,将当前时刻输入到预测模型进行预测得到每一接口下一时段的预测调用信息,将所述预测调用信息基于时序保存到预测结果表;持续监听所述时序统计表中的接口调用信息,将同一时间范围的接口调用信息与预测结果表中的预测调用信息进行比对,若比对判断结果认为接口存在安全风险,则将该时间范围内的接口调用信息作为预筛请求信息发送到Rabbitmq的疑似异常队列中,并对所述预筛请求信息进行二次异常判断,若判断为异常请求的话则将所述预筛请求信息基于时序保存至接口异常调用记录表中并临时阻止对该接口的访问;若未判断为异常请求则根据所述预测结果表查询获取低频接口,释放所述低频接口的资源供存在安全风险的该接口调用。2.根据权利要求1所述的一种接口保护方法,其特征在于,包括,在“在Kong网关中注册接口”步骤中,当接口在Kong网关中注册成功时,调用IP Restriction插件并初始化配置IP白名单,并对接口配置限流策略,将接口对应的应用信息和IP白名单缓存到Redis中。3.根据权利要求1所述的一种接口保护方法,其特征在于,包括,在“基于时序统计所述请求信息得到接口调用信息,将所述接口调用信息记录到时序统计表”步骤中,将所述请求信息进行序列化处理后发送到rabbitmq的interface_quene队列中,再对interface_quene队列中的请求信息进行消费处理后得到接口业务数据并存入接口调用记录表中,间隔时间段对所述接口调用记录表中每一接口的调用次数、失败次数进行统计得到接口调用信息并记录到时序统计表。4.根据权利要求3所述的一种接口保护方法,其特征在于,包括,以第一时间段为间隔对所述接口业务数据进行时序化统计,得到第一时间段内所有接口的接口调用信息,并将所述接口调用信息录入到所述时序统计表中,所述接口调用信息包括但不限于接口调用成功次数以及接口调用失败次数。5.根据权利要求1所述的一种接口保护方法,其特征在于,包括,创建黑名单信息表,配置维护常出现的用户代理信息和蜘蛛IP信息并保存在黑名单信息表中。6.根据权利要求1所述的一种接口保护方法,其特征在于,包括,每隔第二时间段对所述预训练模型进行一次训练,以第二时间段内获取的时序统计表内的时序信息和接口调用信息作为训练样本对所述预训练模型进行训练,得到预测模型。7.根据权利要求1所述的一种接口保护方法,其特征在于,包括,在“将当前时刻输入到预测模型进行预测得到每一接口下一时段的预测调用信息”步骤中,所述下一时段为第三时间段,将所述第三时间段依次均匀分为多个第四时间段,在预测过程中以第四时间段为间隔进行分段综合预测,先根据所述训练样本预测首个第四时间段的数据,再将所述训练样本与首个第四时间段的预测结果结合预测下一第四时间段的数据,直至对所有的第四时间段预测完成,结束预测。8.根据权利要求1所述的一种接口保护方法,其特征在于,包括,在“持续监控所述时序统计表中的接口调用信息,将同一时间范围的接口调用信息与预测结果表中...

【专利技术属性】
技术研发人员:刘仿董佳磊刘进山陶肖寅杜鹏鹏
申请(专利权)人:城云科技中国有限公司
类型:发明
国别省市:

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

1