软件中的间接函数调用目标识别的制作方法
- 国知局
- 2024-07-31 22:39:02
本公开一般涉及函数调用,并且更具体地涉及识别软件的源代码中的间接函数调用目标。
背景技术:
1、函数调用是将程序的控制传递给子例程的调用。在执行子例程之后,控制返回到程序中的下一指令。函数调用由表达式形成,该表达式求值为后接函数调用运算符的函数。函数调用运算符的参数(argument)来自逗号分隔的表达式列表。这些表达式的值作为参数传递给函数。每当遇到函数调用时,程序控制被传送到所调用的函数。
技术实现思路
1、根据一个说明性实施例,提供了一种用于软件中的间接函数调用目标识别的计算机实施的方法。使用显式数据依赖性分析来确定在程序的软件模块之间传递函数地址的显式数据流的集合。从程序的显式数据依赖性分析和动态执行分析的结果生成间接函数调用目标的集合。通过基于由图神经网络生成的特征嵌入识别相似的目标函数来扩展该间接函数调用目标的集合。根据其他说明性实施例,提供了一种用于软件中的间接函数调用目标识别的计算机系统和计算机程序产品。
技术特征:1.一种用于软件中的间接函数调用目标识别的方法,所述方法包括:
2.根据权利要求1所述的方法,进一步包括:
3.根据权利要求1所述的方法,进一步包括:
4.根据权利要求1所述的方法,进一步包括:
5.根据权利要求4所述的方法,进一步包括:
6.根据权利要求5所述的方法,进一步包括:
7.根据权利要求1所述的方法,其中,通过聚类算法确定函数相似性。
8.根据权利要求1所述的方法,其中,对于所述程序的每个相应的函数生成函数嵌入的集合。
9.根据权利要求1所述的方法,其中,编译器或程序分析工具中的一个被用于所述显式数据依赖性分析和所述图神经网络,基于所述程序的函数调用图和函数特征训练的所述图神经网络被用于通过包括相似的目标函数来搜索相似函数。
10.一种用于软件中的间接函数调用目标识别的计算机系统,所述计算机系统包括:
11.根据权利要求10所述的计算机系统,其中,所述处理器进一步执行所述程序指令以:
12.根据权利要求10所述的计算机系统,其中,所述处理器进一步执行所述程序指令以:
13.根据权利要求10所述的计算机系统,其中,所述处理器进一步执行所述程序指令以:
14.根据权利要求13所述的计算机系统,其中,所述处理器进一步执行所述程序指令以:
15.一种用于软件中的间接函数调用目标识别的计算机程序产品,所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有与其一起体现的程序指令,所述程序指令可由计算机执行以使所述计算机执行以下方法:
16.根据权利要求15所述的计算机程序产品,进一步包括:
17.根据权利要求15所述的计算机程序产品,进一步包括:
18.根据权利要求15所述的计算机程序产品,进一步包括:
19.根据权利要求18所述的计算机程序产品,进一步包括:
20.根据权利要求19所述的计算机程序产品,进一步包括:
技术总结提供了软件中的间接函数调用目标识别。使用显式数据依赖性分析来确定在程序的软件模块之间传递函数地址的显式数据流的集合。从程序的显式数据依赖性分析和动态执行分析的结果生成间接函数调用目标的集合。通过基于由图神经网络生成的特征嵌入识别相似的目标函数,来扩展间接函数调用目标的集合。技术研发人员:吴秋实,顾钟蔬,H·T·贾姆居姆受保护的技术使用者:国际商业机器公司技术研发日:技术公布日:2024/7/25本文地址:https://www.jishuxx.com/zhuanli/20240730/194000.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。