System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种暴露面攻击检测方法技术_技高网

一种暴露面攻击检测方法技术

技术编号:40438783 阅读:3 留言:0更新日期:2024-02-22 23:02
本发明专利技术公开了一种暴露面攻击检测方法,涉及暴露面攻击检测技术领域,通过服务器后台预先收集测试环境的历史请求训练数据,基于历史历史请求训练数据,服务器后台训练识别会话劫持攻击的第一机器学习模型以及训练识别重放攻击的第二机器学习模型,将第一机器学习模型和第二机器学习模型载入待检测平台,待检测平台收集每个用户的历史行请求数据,待检测平台收集每个用户的实时请求数据,基于实时请求数据判断是否存在重放攻击风险,若判断存在重放风险,待检测平台基于实时请求数据和第一机器学习模型和第二机器学习模型,确定当前用户的攻击形式,并进行相应的攻击预警;提高了系统安全性和用户体验。

【技术实现步骤摘要】

本专利技术属于涉及暴露面攻击检测,具体是一种暴露面攻击检测方法


技术介绍

1、暴露面是指系统中与外部环境相连或可被外部访问的接口或功能点,而应用程序编程接口(api)暴露面因为涉及系统中公开的api接口,用于与其他应用程序进行集成和交互,且允许其他应用程序访问系统的功能和数据,因其开放性,往往成为被网络攻击的重灾区;

2、当前对应用程序编程接口(api)暴露面的攻击形式的识别往往是对每种攻击进行单独检测,而部分类型的攻击可能存在结合攻击,例如重放攻击和会话劫持攻击;结合使用会话劫持和重放攻击的好处包括:欺骗性更强、操作执行更广泛以及持久性更强;而会话劫持攻击和重放攻击在被检测出来后,一般是采用对用户的所有请求都拒绝响应的方式,从而导致正常的用户请求被拒绝,降低了正常用户的体验感;

3、为此,本专利技术提出一种暴露面攻击检测方法。


技术实现思路

1、本专利技术旨在至少解决现有技术中存在的技术问题之一。为此,本专利技术提出一种暴露面攻击检测方法,该方法在提高系统对重放攻击的防御力的基础上,避免了对用户正常的请求的拒绝,从而提高了系统安全性和用户体验。

2、为实现上述目的,根据本专利技术的第一方面的实施例提出一种暴露面攻击检测方法,包括以下步骤:

3、步骤一:服务器后台预先收集测试环境的历史请求训练数据;

4、步骤二:基于历史历史请求训练数据,服务器后台训练识别会话劫持攻击的第一机器学习模型以及训练识别重放攻击的第二机器学习模型;

5、步骤三:将第一机器学习模型和第二机器学习模型载入待检测平台;待检测平台收集每个用户的历史行请求数据;

6、步骤四:待检测平台收集每个用户的实时请求数据,基于实时请求数据判断是否存在重放攻击风险,若判断存在重放风险,转正步骤五;

7、步骤五:待检测平台基于实时请求数据和第一机器学习模型和第二机器学习模型,确定当前用户的攻击形式,并进行相应的攻击预警;

8、其中,所述测试环境为所述测试环境为测试人员通过主动控制每个训练账号的请求模式,以收集每种请求模式下请求的特征和请求的标签的数据收集环境;所述训练账号为在测试环境中使用的账号;

9、所述历史请求训练数据包括历史会话劫持训练数据以及历史重放训练数据;

10、所述历史会话劫持训练数据包括每个用户的劫持请求特征集合时间序列;

11、所述劫持请求特征时间序列中每个元素为对应用户的历史中每次发送请求的劫持请求特征集合以及该劫持请求特征集合的会话劫持标签;所述劫持请求特征集合中每个元素为用户每次发送请求的劫持请求特征数据;所述会话劫持标签为0或1中的一个;

12、所述历史重放训练数据包括每个用户的重放请求特征集合时间序列;

13、所述重放请求特征集合时间序列中的每个元素为对应用户的历史中每次发送请求的重放请求特征集合以及该重放请求特征集合的重放标签;所述重放请求特征集合中每个元素为用户每次发送请求的重放请求特征数据;所述重放标签0或1中的一个;

14、训练识别会话劫持攻击的第一机器学习模型的方式为:

15、预设会话劫持预测时间步长为1,根据预设的会话劫持滑动步长以及预设的会话劫持滑动窗口长度,使用滑动窗口方法将每个用户的劫持请求特征集合时间序列转化为若干组会话劫持训练样本,将会话劫持训练样本作为第一机器学习模型的输入,第一机器学习模型以未来的会话劫持预测时间步长的预测的会话劫持标签为输出,会话劫持训练样本的后续的会话劫持预测时间步长内对应的会话劫持标签作为预测目标,以预测准确率作为训练目标,使用均方误差或平均绝对误差作为损失函数来衡量预测结果的准确性,通过反向传播算法来更新模型的权重和偏置,生成预测输出功率曲线的第一机器学习模型;所述第一机器学习模型为lstm神经网络模型;

16、训练识别重放攻击的第二机器学习模型的方式为:

17、预设重放预测时间步长为1,根据预设的重放滑动步长以及预设的重放滑动窗口长度,使用滑动窗口方法将每个用户的重放请求特征集合时间序列转化为若干组重放训练样本,将重放训练样本作为第二机器学习模型的输入,第二机器学习模型以未来的重放预测时间步长的预测的重放标签为输出,重放训练样本的后续的重放预测时间步长内对应的重放标签作为预测目标,以预测准确率作为训练目标,使用均方误差或平均绝对误差作为损失函数来衡量预测结果的准确性,通过反向传播算法来更新模型的权重和偏置,生成预测输出功率曲线的第二机器学习模型;所述第二机器学习模型为lstm神经网络模型;

18、待检测平台收集每个用户的历史行请求数据的方式为:

19、待检测平台收集每个用户历史请求中,每个请求的劫持请求特征集合以及重放请求特征集合;

20、对于待检测平台中,每个用户注册账号后的会话劫持滑动窗口长度内的劫持请求特征集合,将劫持请求特征集合对应的会话劫持标签标记为代表非会话劫持的标签值;

21、对于待检测平台中,每个用户注册账号后的重放滑动窗口长度内的重放请求特征集合,将重放请求特征集合对应的重放标签标记为代表非重放攻击的标签值;

22、将待检测平台中,每个用户历史请求中的劫持请求特征集合和劫持请求特征集合对应的会话劫持标签按时间顺序作为一个元素,排列成生产劫持请求特征集合时间序列;

23、将待检测平台中,每个用户历史请求中的重放请求特征集合和重放请求特征集合对应的重放签按时间顺序作为一个元素,排列成生产重放请求特征集合时间序列;

24、收集每个用户的实时请求数据的方式为:

25、待检测平台实时收集每个发送请求的用户对该请求的劫持请求特征集合以及重放请求特征集合;

26、基于实时请求数据判断是否存在重放攻击风险的方式为:

27、待检测平台统计该用户对该请求的历史请求次数以及对该请求的平均频率,将历史请求次数标记为n,将最近若干次对该请求的平均频率标记为f,计算重放风险值h,其中重放风险值h的计算公式为h=n*f;若重放风险值h大于预设的重放风险阈值,则判断为存在重放攻击风险;

28、确定当前用户的攻击形式,并进行相应的攻击预警的方式为:

29、将判断为存在重放攻击风险对应的用户的生产劫持请求特征集合时间序列使用滑动窗口方法,将最新的会话劫持滑动窗口长度序列转化为会话劫持训练样本,并将会话劫持训练样本输入至第一机器学习模型中,获得第一机器学习模型输出的预测的会话劫持标签;

30、将判断为存在重放攻击风险对应的用户的生产重放请求特征集合时间序列使用滑动窗口方法,将最新的重放滑动窗口长度序列转化为重放训练样本,并将会话劫持训练样本输入至第二机器学习模型中,获得第二机器学习模型输出的预测的重放标签;

31、若预测的会话劫持标签为1,且预测的重放标签为1,则说明用户的账号被劫持且且被用于向待检测平台发起攻击,待检测平台向用户的智能移本文档来自技高网...

【技术保护点】

1.一种暴露面攻击检测方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种暴露面攻击检测方法,其特征在于,所述测试环境为所述测试环境为测试人员通过主动控制每个训练账号的请求模式,以收集每种请求模式下请求的特征和请求的标签的数据收集环境;所述训练账号为在测试环境中使用的账号。

3.根据权利要求2所述的一种暴露面攻击检测方法,其特征在于,所述历史请求训练数据包括历史会话劫持训练数据以及历史重放训练数据;

4.根据权利要求3所述的一种暴露面攻击检测方法,其特征在于,训练识别会话劫持攻击的第一机器学习模型的方式为:

5.根据权利要求4所述的一种暴露面攻击检测方法,其特征在于,训练识别重放攻击的第二机器学习模型的方式为:

6.根据权利要5所述的一种暴露面攻击检测方法,其特征在于,待检测平台收集每个用户的历史行请求数据的方式为:

7.根据权利要求6所述的一种暴露面攻击检测方法,其特征在于,收集每个用户的实时请求数据的方式为:

8.根据权利要求7所述的一种暴露面攻击检测方法,其特征在于,基于实时请求数据判断是否存在重放攻击风险的方式为:

9.根据权利要求8所述的一种暴露面攻击检测方法,其特征在于,确定当前用户的攻击形式,并进行相应的攻击预警的方式为:

...

【技术特征摘要】

1.一种暴露面攻击检测方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种暴露面攻击检测方法,其特征在于,所述测试环境为所述测试环境为测试人员通过主动控制每个训练账号的请求模式,以收集每种请求模式下请求的特征和请求的标签的数据收集环境;所述训练账号为在测试环境中使用的账号。

3.根据权利要求2所述的一种暴露面攻击检测方法,其特征在于,所述历史请求训练数据包括历史会话劫持训练数据以及历史重放训练数据;

4.根据权利要求3所述的一种暴露面攻击检测方法,其特征在于,训练识别会话劫持攻击的第一机器学习模型的方式为:

5.根据...

【专利技术属性】
技术研发人员:刘传波王秀
申请(专利权)人:北京弘明复兴信息技术有限公司
类型:发明
国别省市:

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

1