[发明专利]程序检测方法、装置及计算机可读存储介质在审
申请号: | 201910604806.4 | 申请日: | 2019-07-05 |
公开(公告)号: | CN110471837A | 公开(公告)日: | 2019-11-19 |
发明(设计)人: | 王海洋;许朝阳 | 申请(专利权)人: | 平安证券股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 44347 深圳市沃德知识产权代理事务所(普通合伙) | 代理人: | 高杰;于志光<国际申请>=<国际公布>= |
地址: | 518000 广东省深圳市福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态链接库 目标程序 程序检测 质量检测 符号表 调用 计算机可读存储介质 读取 数据处理技术 程序调用 程序运行 用户上传 代码库 链接库 检测 重复 发送 | ||
1.一种程序检测方法,其特征在于,所述方法包括:
读取目标程序,其中,所述目标程序为指定用户上传至代码库的Linux程序;
对所述目标程序进行质量检测,若所述目标程序通过质量检测,获取所述目标程序调用的多个动态链接库;
从所述多个动态链接库中获取新增的动态链接库,得到待检测动态链接库;
获取所述待检测动态链接库包含的符号表;
获取所述符号表包含的多个函数名称;
判断所述多个函数名称中是否存在重复的函数名称;
若所述多个函数名称中存在重复的函数名称,发送所述目标程序存在链接库调用错误的风险提醒。
2.如权利要求1所述的程序检测方法,其特征在于,所述判断所述多个函数名称中是否存在重复的函数名称包括:
统计所述多个函数名称中每个函数名称的出现次数;
当存在出现次数大于1的函数名称时,确定所述多个函数名称中存在重复的函数名称。
3.如权利要求1所述的程序检测方法,其特征在于,所述方法还包括:
若所述多个函数名称中存在重复的函数名称,将所述重复的函数名称进行重命名。
4.如权利要求1至3中任一项所述的程序检测方法,其特征在于,所述获取所述待检测动态链接库包含的符号表包括:
通过代码分析工具nm获取所述待检测动态链接库包含的符号表。
5.如权利要求1至3中任一项所述的程序检测方法,其特征在于,所述获取所述目标程序调用的多个动态链接库包括:
通过代码分析工具ldd获取所述目标程序调用的多个动态链接库。
6.一种程序检测装置,其特征在于,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的程序检测程序,所述程序检测程序被所述处理器执行时实现如下步骤:
读取目标程序,其中,所述目标程序为指定用户上传至代码库的Linux程序;
对所述目标程序进行质量检测,若所述目标程序通过质量检测,获取所述目标程序调用的多个动态链接库;
从所述多个动态链接库中获取新增的动态链接库,得到待检测动态链接库;
获取所述待检测动态链接库包含的符号表;
获取所述符号表包含的多个函数名称;
判断所述多个函数名称中是否存在重复的函数名称;
若所述多个函数名称中存在重复的函数名称,发送所述目标程序存在链接库调用错误的风险提醒。
7.如权利要求6所述的程序检测装置,其特征在于,所述程序检测程序可被所述处理器执行,还实现如下步骤:
统计所述多个函数名称中每个函数名称的出现次数;
当存在出现次数大于1的函数名称时,确定所述多个函数名称中存在重复的函数名称。
8.如权利要求6所述的程序检测装置,其特征在于,所述程序检测程序可被所述处理器执行,还实现如下步骤:
若所述多个函数名称中存在重复的函数名称,将所述重复的函数名称进行重命名。
9.如权利要求6至8中任一项所述的程序检测装置,其特征在于,所述程序检测程序可被所述处理器执行,还实现如下步骤:
通过代码分析工具nm获取所述待检测动态链接库包含的符号表。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有程序检测程序,所述程序检测程序可被一个或者多个处理器执行,以实现如权利要求1至5中任一项所述的程序检测方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安证券股份有限公司,未经平安证券股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910604806.4/1.html,转载请声明来源钻瓜专利网。