一种针对动态类型对象进行漏洞检测的方法及装置制造方法及图纸

技术编号:43949716 阅读:15 留言:0更新日期:2025-01-07 21:37
本说明书实施例提供了一种针对动态类型对象进行漏洞检测的方法,所述动态类型对象通过目标反序列化操作生成,所述方法包括:获取目标代码文件,其中包含进行目标反序列化操作的目标函数。以目标函数为起点,沿函数的依次调用关系回溯搜索对应的代码文件,得到若干调用链,其中包括第一调用链。对于第一调用链中任意的第一代码文件,根据其中的第一程序元素和第一引用信息,确定对应的第一引用类集合,所述第一引用类集合包含对第一程序元素进行定义的类。基于第一调用链上各个代码文件对应的引用类集合的合集,得到第一可识别类集合,从第一可识别类集合中确定包含魔术方法的类子集,归入漏洞检测的结果。

【技术实现步骤摘要】

本说明书一个或多个实施例涉及对象序列化与反序列化领域,尤其涉及一种针对动态类型对象进行漏洞检测的方法及装置


技术介绍

1、动态编程语言,诸如python、php、javascript等,对比如c、c++、java等静态编程语言,展现出更强的灵活性。动态编程语言允许在运行时(runtime)自动推断和改变对象的类型、添加和修改方法与属性,等等。

2、随着人工智能的快速发展,以及编程范式的不断演进,动态编程语言凭借着开发效率高、易上手、跨平台等优势,逐渐成为人工智能、大模型、物联网等领域中的基础开发语言,受到广大开发者的青睐。

3、动态类型是动态编程语言中所特有的编程理念,也是动态编程语言的核心组成部分。动态类型对象无需在定义时与类型强绑定,程序可以在运行时根据动态类型对象的行为做出判断,确定该对象的具体类型,并调用相对应的函数、变量完成操作。这样的设计,可以增强代码的适应性和可扩展性。

4、在动态语言编程中,开发者常采用序列化技术将对象持久化到各类文件中,便于对象的传输与共享。在使用时,通过反序列化手段,将存储在文件中的本文档来自技高网...

【技术保护点】

1.一种针对动态类型对象进行漏洞检测的方法,所述动态类型对象通过目标反序列化操作生成,所述方法包括:

2.根据权利要求1所述的方法,其中,所述第一程序元素包括:函数以及变量。

3.根据权利要求1所述的方法,其中,所述确定对应的第一引用类集合,包括:

4.根据权利要求3所述的方法,其中,所述被引用项包括第一函数,所述展开检索包括:

5.根据权利要求4所述的方法,其中,所述第一类不在所述第一代码文件中定义。

6.根据权利要求3所述的方法,其中,所述被引用项包括外部类,所述外部类不在第一代码文件中定义,所述展开检索包括:

...

【技术特征摘要】

1.一种针对动态类型对象进行漏洞检测的方法,所述动态类型对象通过目标反序列化操作生成,所述方法包括:

2.根据权利要求1所述的方法,其中,所述第一程序元素包括:函数以及变量。

3.根据权利要求1所述的方法,其中,所述确定对应的第一引用类集合,包括:

4.根据权利要求3所述的方法,其中,所述被引用项包括第一函数,所述展开检索包括:

5.根据权利要求4所述的方法,其中,所述第一类不在所述第一代码文件中定义。

6.根据权利要求3所述的方法,其中,所述被引用项包括外部类,所述外部类不在第一代码文件中定义,所述展开检索包括:

7.根据权利要求3所述的方法,其中,所述被引用项包括目标模块,所述展开检索包括:

...

【专利技术属性】
技术研发人员:刘潇凡郑训进付才谢筱恒狄鹏
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1