System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 反序列化攻击的检测方法、装置、设备、介质及产品制造方法及图纸_技高网

反序列化攻击的检测方法、装置、设备、介质及产品制造方法及图纸

技术编号:42777521 阅读:10 留言:0更新日期:2024-09-21 00:39
本公开涉及一种反序列化攻击的检测方法、装置、设备、介质及产品,尤其涉及网络安全技术领域。包括:获取用户输入,确定用户输入对应的参数值;将参数值与预设防护特征进行匹配;预设防护特征包括:序列化结构特征和黑名单类特征;在参数值与预设防护特征匹配的情况下,确定用户输入是反序列化攻击。本公开实施例可以降低反序列化攻击检测的误报率,能够简单有效地检测出各种反序列化攻击。

【技术实现步骤摘要】

本公开涉及网络安全,尤其涉及一种反序列化攻击的检测方法、装置、设备、介质及产品


技术介绍

1、反序列化攻击是一种安全攻击方式,它涉及将数据结构或对象状态从某种格式转换回对象的过程。这种格式通常是二进制流或者字符串(如json、xml),它是对象序列化(即对象转换为可存储或可传输格式)的逆过程。在反序列化过程中,如果攻击者能够控制序列化后的数据,并将有害数据传递到应用程序代码中,就可以发动针对应用程序的攻击。

2、目前通常应用防火墙(web application firewall,waf)来检测反序列化攻击,主要通过两种检测方式。第一种方式基于反序列化关键字黑名单来匹配用户输入,以检测是否存在攻击;第二种方式按照反序列化数据结构协议完整解析用户输入,然后再基于反序列化关键字黑名单进行匹配,以检测是否存在攻击。

3、第一种检测方式实施简单、成熟度较高,但是存在较高的误报率;第二种方式工程量大,需要给每个反序列化类型适配协议格式进行解析,还需要单独编写规则,因而难以复用通用的反序列化链。


技术实现思路

1、为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种反序列化攻击的检测方法、装置、设备、介质及产品,可以降低反序列化攻击检测的误报率,能够简单有效地检测出各种反序列化攻击。

2、为了实现上述目的,本公开实施例提供的技术方案如下:

3、第一方面,本公开提供一种反序列化攻击的检测方法,包括:获取用户输入,确定用户输入对应的参数值;将参数值与预设防护特征进行匹配;预设防护特征包括:序列化结构特征和黑名单类特征;在参数值与预设防护特征匹配的情况下,确定用户输入是反序列化攻击。

4、作为本公开实施例一种可选的实施方式,获取用户输入,确定用户输入对应的参数值,包括:获取用户输入;对用户输入进行预处理,得到用户输入对应的参数值;其中,预处理包括格式转换和解码。

5、作为本公开实施例一种可选的实施方式,序列化结构特征是攻击链序列化时的数据结构特征,包括:java原生序列化结构特征、json序列化结构特征、hessian序列化结构特征中的至少一项;黑名单类特征是攻击链对应的类名特征,包括:java原生序列化类名特征、json反序列化类名特征、hessian反序列化类名特征中的至少一项。

6、作为本公开实施例一种可选的实施方式,将参数值与预设防护特征进行匹配,包括:将参数值与序列化结构特征进行匹配;在匹配失败的情况下,将参数值与黑名单类特征进行匹配。

7、第二方面,本公开提供一种反序列化攻击的检测装置,包括:

8、获取模块,用于获取用户输入,确定用户输入对应的参数值;

9、匹配模块,用于将参数值与预设防护特征进行匹配;预设防护特征包括:序列化结构特征和黑名单类特征;

10、检测模块,用于在参数值与预设防护特征匹配的情况下,确定用户输入是反序列化攻击。

11、作为本公开实施例一种可选的实施方式,获取模块,具体用于:获取用户输入;对用户输入进行预处理,得到用户输入对应的参数值;其中,预处理包括格式转换和解码。

12、作为本公开实施例一种可选的实施方式,匹配模块,具体用于:将参数值与序列化结构特征进行匹配;在匹配失败的情况下,将参数值与黑名单类特征进行匹配。

13、第三方面,本公开提供一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面或其任意一种可选的实施方式所述的反序列化攻击的检测方法。

14、第四方面,本公开提供一种计算机可读存储介质,包括:所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如第一方面或其任意一种可选的实施方式所述的反序列化攻击的检测方法。

15、第五方面,本公开提供一种计算机程序产品,包括:该计算机程序产品包括计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机实现如第一方面或其任意一种可选的实施方式所述的反序列化攻击的检测方法。

16、本公开实施例提供的技术方案与现有技术相比具有如下优点:

17、本公开实施例提供一种反序列化攻击的检测方法、装置、设备、介质及产品,其中该方法首先获取用户输入,确定用户输入对应的参数值,然后将该参数值与预设防护特征进行匹配,在参数值与预设防护特征匹配的情况下,确定用户输入是反序列化攻击,其中预设防护特征包括序列化结构特征和黑名单类特征。如此本公开实施例通过将黑名单类特征与序列化结构特征相结合来检测用户输入是否为反序列化攻击,相较于基于反序列化关键字黑名单的检测方法,降低了误报率,相较于按照反序列化数据结构协议完整解析的检测方法,操作简单,无需完整解析用户输入,工作量小,效率高,能够适用于各种反序列化攻击的检测。

本文档来自技高网...

【技术保护点】

1.一种反序列化攻击的检测方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述获取用户输入,确定所述用户输入对应的参数值,包括:

3.根据权利要求1所述的方法,其特征在于,所述序列化结构特征是攻击链序列化时的数据结构特征,包括:Java原生序列化结构特征、Json序列化结构特征、Hessian序列化结构特征中的至少一项;

4.根据权利要求1所述的方法,其特征在于,所述将所述参数值与预设防护特征进行匹配,包括:

5.一种反序列化攻击的检测装置,其特征在于,包括:

6.根据权利要求5所述的装置,其特征在于,所述获取模块,具体用于:

7.根据权利要求5所述的装置,其特征在于,所述匹配模块,具体用于:

8.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至4中任一项所述的反序列化攻击的检测方法。

9.一种计算机可读存储介质,其特征在于,包括:所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的反序列化攻击的检测方法。

10.一种计算机程序产品,其特征在于,包括:所述计算机程序产品存储有计算机程序,计算机程序被处理器执行时实现如权利要求1至4中任一项所述的反序列化攻击的检测方法。

...

【技术特征摘要】

1.一种反序列化攻击的检测方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述获取用户输入,确定所述用户输入对应的参数值,包括:

3.根据权利要求1所述的方法,其特征在于,所述序列化结构特征是攻击链序列化时的数据结构特征,包括:java原生序列化结构特征、json序列化结构特征、hessian序列化结构特征中的至少一项;

4.根据权利要求1所述的方法,其特征在于,所述将所述参数值与预设防护特征进行匹配,包括:

5.一种反序列化攻击的检测装置,其特征在于,包括:

6.根据权利要求5所述的装置,其特征在于,所述获取模块,具体用于:

7.根...

【专利技术属性】
技术研发人员:董光利
申请(专利权)人:中电云计算技术有限公司
类型:发明
国别省市:

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

1