有效
数据处理方法、装置、设备及存储介质
张肖艳、花小齐、李铭阳、王晓春、李玮、卢怡杰
中国移动通信集团陕西有限公司
张
张肖艳机构 暂无
技术领域 暂无
花
花小齐机构 暂无
技术领域 暂无
李
李铭阳机构 暂无
技术领域 暂无
王
王晓春机构 暂无
技术领域 暂无
李
李玮机构 暂无
技术领域 暂无
卢
卢怡杰机构 暂无
技术领域 暂无
摘要
本申请公开了一种数据处理方法、装置、设备及存储介质,属于数据安全技术领域。方法包括从业务数据流量中提取API业务成功调用的API的API流量;按照API业务类型对API流量进行划分,得到包括N个API业务类型中每个API业务类型的API流量初始样本的API流量初始样本集合;对API流量初始样本集合中的API流量初始样本进行调用逻辑顺序抽取,得到包括与每个API业务类型的API流量初始样本对应的API调用顺序规则的API调用顺序规则集;基于第i个API业务类型的API流量初始样本对应的API调用顺序规则的数量,确定第i个API业务类型的API流量初始样本中是否存在非法API调用行为。这样,可实现对API调用逻辑及顺序的自动化梳理,降低API越权鉴别的人工依赖性,避免API数据泄露事故发生。
1.一种数据处理方法,其特征在于,包括:从业务数据流量中提取应用程序编程接口API流量,所述API流量为API业务成功调用的API的流量;按照API业务类型,对所述API流量进行划分,得到API流量初始样本集合,所述API流量初始样本集合包括N个API业务类型中每个API业务类型的API流量初始样本,N为大于1的整数;对所述API流量初始样本集合中的API流量初始样本进行调用逻辑顺序抽取,得到API调用顺序规则集,所述API调用顺序规则集包括所述N个API业务类型中与所述每个API业务类型的API流量初始样本对应的API调用顺序规则;基于与所述N个API业务类型中第i个API业务类型的API流量初始样本对应的API调用顺序规则的数量,确定所述第i个API业务类型的API流量初始样本中是否存在非法API调用行为,i∈[1,N]。
2.根据权利要求1所述的方法,其特征在于,所述从业务数据流量中提取应用程序编程接口API流量,包括:按照所述业务数据流量的流量属性,从所述业务数据流量中筛选目标API流量;其中,所述流量属性包括以下至少一种:数据格式、网络服务协议;从所述目标API流量中过滤掉异常请求的API流量以及API业务未成功调用的API的流量,得到所述API流量。
3.根据权利要求1所述的方法,其特征在于,所述按照API业务类型,对所述API流量进行划分,得到API流量初始样本集合,包括:按照API业务类型,通过k均值聚类算法对所述API业务成功调用的API的调用请求和响应所述调用请求的响应数据进行聚类,得到N个簇,所述N个簇中的第i个簇包括至少两个相似调用请求和响应所述相似调用请求的响应数据,所述至少两个相似调用请求的相似度大于或等于预设相似度;基于所述N个簇中每个簇的簇特征,对所述API流量进行划分,得到与所述每个簇对应的API流量初始样本;其中,所述簇特征包括以下中的至少一种:API调用时间点、API调用时长、调用者身份、调用者类型;根据与所述每个簇对应的API流量初始样本,生成与所述N个簇对应的所述API流量初始样本集合。
4.根据权利要求1所述的方法,其特征在于,所述对所述API流量初始样本集合中的API流量初始样本进行调用逻辑顺序抽取,得到API调用顺序规则集,包括:通过接口业务调用逻辑算法,分别对所述API流量初始样本集合中与所述每个API业务类型的API流量初始样本进行调用逻辑顺序抽取,得到与所述每个API业务类型的API流量初始样本对应的API调用顺序规则;基于与所述每个API业务类型的API流量初始样本对应的API调用顺序规则,生成API调用顺序规则集;其中,所述接口业务调用逻辑算法包括以下至少一种:深度优先搜索算法、日志记录API调用算法、调试器跟踪代码执行算法、应用程序性能监控算法。
5.根据权利要求4所述的方法,其特征在于,所述通过接口业务调用逻辑算法,分别对所述API流量初始样本集合中与所述每个API业务类型的API流量初始样本进行调用逻辑顺序抽取,得到与所述每个API业务类型的API流量初始样本对应的API调用顺序规则,包括:在所述接口业务调用逻辑算法包括所述深度优先搜索算法的情况下,通过所述深度优先搜索算法,分别对调用与所述每个API业务类型的API流量初始样本对应的API流量的接口顺序进行提取,得到与所述每个API业务类型的API流量初始样本对应的API调用顺序规则;在所述接口业务调用逻辑算法包括所述日志记录API调用算法的情况下,分别对与所述每个API业务类型的API流量初始样本对应的API流量的接口的日志文件进行分析,得到与所述每个API业务类型的API流量初始样本对应的API调用顺序规则;在所述接口业务调用逻辑算法包括所述调试器跟踪代码执行算法的情况下,通过调试器中的API调用堆栈,得到与所述每个API业务类型的API流量初始样本对应的API调用顺序规则,所述调试器用于跟踪代码执行与所述API业务类型的API流量初始样本的API流量的处理流程;在所述接口业务调用逻辑算法包括所述应用程序性能监控算法的情况下,通过应用性能监控工具采集与所述API业务类型的API流量初始样本对应的应用程序的运行信息,所述运行信息包括所述应用程序在运行过程中所述应用程序调用API的API调用时间戳;按照所述API调用时间戳的顺序,得到与所述每个API业务类型的API流量初始样本对应的API调用顺序规则。
6.根据权利要求1所述的方法,其特征在于,所述基于与所述N个API业务类型中第i个API业务类型的API流量初始样本对应的API调用顺序规则的数量,确定所述第i个API业务类型的API流量初始样本中是否存在非法API调用行为,包括:在与所述N个API业务类型中第i个API业务类型的API流量初始样本对应的API调用顺序规则的数量小于或等于预设数量的情况下,确定所述第i个API业务类型的API流量初始样本中不存在非法API调用行为;在与所述N个API业务类型中第i个API业务类型的API流量初始样本对应的API调用顺序规则的数量大于所述预设数量的情况下,确定所述第i个API业务类型的API流量初始样本中存在非法API调用行为。
7.根据权利要求1或6所述的方法,其特征在于,所述方法还包括:在确定所述第i个API业务类型的API流量初始样本中存在非法API调用行为的情况下,对所述第i个API业务类型的API流量初始样本对应的API流量进行预警或拦截。
8.根据权利要求1或6所述的方法,其特征在于,所述方法还包括:在确定所述第i个API业务类型的API流量初始样本中存在非法API调用行为的情况下,获取与所述第i个API业务类型的API流量初始样本对应的M个API调用顺序规则,M为大于预设数量的整数;通过图卷积神经网络,对所述M个API调用顺序规则中每个API调用顺序规则对应的API流量初始样本进行处理,得到所述第i个API业务类型的API流量初始样本的业务调用画像;根据所述业务调用画像,对所述M个API调用顺序规则进行修正,确定目标API调用顺序规则,所述目标API调用顺序规则的数量小于或等于所述预设数量的整数。
9.根据权利要求8所述的方法,其特征在于,所述业务调用画像包括API调用顺序规则的相对调用频率;所述通过图卷积神经网络,对所述M个API调用顺序规则中每个API调用顺序规则对应的API流量初始样本进行处理,得到所述第i个API业务类型的API流量初始样本的业务调用画像,包括:通过JSON格式以串联的方式,记录所述每个API调用顺序规则对应的API流量初始样本,得到与所述每个API调用顺序规则对应的API调用序列;基于与所述每个API调用顺序规则对应的API调用序列,生成与所述每个API调用顺序规则对应的API调用顺序图,其中,所述API调用顺序图包括M个节点和连接所述M个节点中任意两个节点的有向连接边,所述有向连接边的方向用于表征相邻API之间的调用顺序关系,所述节点的目标特征信息由所述节点自身的第一特征信息和与所述节点连接的节点的第二特征信息确定,M为大于1的整数;将与所述每个API调用顺序规则对应的API调用顺序图输入所述图卷积神经网络,计算所述每个API调用顺序规则的相对调用频率。
10.根据权利要求9所述的方法,其特征在于,所述业务调用画像包括所述M个API调用顺序规则的相对调用频率;所述根据所述业务调用画像,对所述M个API调用顺序规则进行修正,确定目标API调用顺序规则,包括:从所述M个API调用顺序规则的相对调用频率中筛选目标相对调用频率,所述目标相对调用频率大于或等于预设相对调用频率;将与所述目标相对调用频率对应的API调用顺序规则确定为所述目标API调用顺序规则。
11.根据权利要求8所述的方法,其特征在于,所述方法还包括:通过JSON格式以串联的方式,记录样本API调用顺序规则对应的样本API流量初始样本,得到与所述样本API调用顺序规则对应的样本API调用序列;基于与所述样本API调用顺序规则对应的样本API调用序列,生成与所述样本API调用顺序规则对应的样本API调用顺序图,其中,所述样本API调用顺序图包括P个样本节点和连接所述P个样本节点中任意两个样本节点的样本有向连接边,所述样本有向连接边的方向用于表征相邻样本API之间的样本调用顺序关系,所述样本节点的样本目标特征信息由所述样本节点自身的第一样本特征信息和与所述样本节点连接的样本节点的第二样本特征信息确定,P为大于1的整数;将与所述样本API调用顺序规则对应的样本API调用顺序图输入样本图卷积神经网络,计算所述样本API调用顺序规则的第一样本相对调用频率;基于所述样本API调用顺序规则的第一样本相对调用频率与样本API调用顺序规则实际的第二样本相对调用频率的差异程度,对所述样本图卷积神经网络进行训练,直至满足预设训练条件,得到所述图卷积神经网络。
12.一种数据处理装置,其特征在于,包括:提取模块,用于从业务数据流量中提取应用程序编程接口API流量,所述API流量为API业务成功调用的API的流量;划分模块,用于按照API业务类型,对所述API流量进行划分,得到API流量初始样本集合,所述API流量初始样本集合包括N个API业务类型中每个API业务类型的API流量初始样本,N为大于1的整数;抽取模块,用于对所述API流量初始样本集合中的API流量初始样本进行调用逻辑顺序抽取,得到API调用顺序规则集,所述API调用顺序规则集包括所述N个API业务类型中与所述每个API业务类型的API流量初始样本对应的API调用顺序规则;确定模块,用于基于与所述N个API业务类型中第i个API业务类型的API流量初始样本对应的API调用顺序规则的数量,确定所述第i个API业务类型的API流量初始样本中是否存在非法API调用行为,i∈[1,N]。
13.一种计算机设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1-11任意一项所述的数据处理方法。
14.一种计算机程序产品,其特征在于,所述程序产品被存储在非瞬态存储介质中,所述程序产品被至少一个处理器执行以实现如权利要求1-11任意一项所述的数据处理方法的步骤。



