[发明专利]项目第三方库升级异常检测方法及系统、设备及存储介质有效
申请号: | 202010369745.0 | 申请日: | 2020-05-06 |
公开(公告)号: | CN111258614B | 公开(公告)日: | 2020-08-07 |
发明(设计)人: | 刘海涛;万振华;王颉;李华;董燕 | 申请(专利权)人: | 深圳开源互联网安全技术有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F11/36 |
代理公司: | 深圳市恒申知识产权事务所(普通合伙) 44312 | 代理人: | 袁文英 |
地址: | 518000 广东省深圳市龙华区龙华*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 项目 第三 升级 异常 检测 方法 系统 设备 存储 介质 | ||
1.一种项目第三方库升级检测方法,其特征在于,所述方法包括:
获取第三方库列表,并获取各个第三方库的信息;
通过用户上传的项目信息在第三方库中生成项目的最新版本和之前版本的项目依赖快照信息、项目详情,并将两个版本的信息对比生成差异对比数据,其中所述项目依赖快照信息为项目或第三方库下的所有文件;
利用词法分析技术分析所述差异对比数据获取具体的类更改信息,以及根据具体的类更改信息确定各个第三方库的升级影响数据;
根据各个第三方库的升级影响数据与关联的第三方库数量,对引用升级第三方库的项目进行影响评分并选取预设评分阈值内的第三方库;以及
对处于预设评分阈值内的第三方库的具体的类更改信息进行影响评分,并检测出升级的第三方库。
2.如权利要求1所述的方法,其特征在于,所述获取各个第三方库的信息包括:
遍历获取所述第三方库的类信息;
基于所述类信息,获取所述第三方库的指纹信息、方法信息以及字段信息,其中所述指纹信息为通过获取的所有文件的名称和大小以及最后时间生成的指纹信息。
3.如权利要求1所述的方法,其特征在于,所述通过用户上传的项目信息在第三方库中生成项目的最新版本和之前版本的项目依赖快照信息、项目详情包括:
若用户上传项目信息的指纹信息与之前存储的项目指纹信息不一致,则生成所述最新版本的项目依赖快照信息和项目详情。
4.如权利要求1所述的方法,其特征在于,所述将两个版本第三方库的信息对比生成差异对比数据包括:
若所述两个版本的第三方库的信息发生变更,则遍历第三方库的指纹信息,生成所述差异对比数据。
5.如权利要求1所述的方法,其特征在于,所述利用词法分析技术分析所述差异对比数据获取具体的类更改信息还包括:
利用词法分析技术获取所述第三方库的修改信息。
6.如权利要求5所述的方法,其特征在于,所述利用词法分析技术获取第三方库的修改信息包括:
利用词法分析技术循环遍历用户项目中差异对比数据的类名称,查找用户项目中的修改操作和删除操作。
7.如权利要求5所述的方法,其特征在于,所述利用词法分析技术获取第三方库的修改信息还包括:
若修改信息不兼容,则将词法分析技术获取的修改信息和代码位置给用户展示。
8.一种项目第三方库升级检测系统,其特征在于,所述系统包括:
获取模块:获取第三方库列表,并获取各个第三方库的信息;
对比模块:通过用户上传的项目信息在第三方库中生成项目的最新版本和之前版本的项目依赖快照信息、项目详情,并将两个版本的信息对比生成差异对比数据;
分析模块:利用词法分析技术分析所述差异对比数据获取具体的类更改信息,以及根据具体的类更改信息确定各个第三方库的升级影响数据;
第一影响评分模块:根据各个第三方库的升级影响数据与关联的第三方库数量,对引用升级第三方库的项目进行影响评分并选取预设评分阈值内的第三方库;以及
第二影响评分模块:对处于预设评分阈值内的第三方库的具体的类更改信息进行影响评分,并检测出升级的第三方库。
9.一种项目第三方库升级检测设备,包括存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如权利要求1至7任一项所述的项目第三方库升级检测方法中的各个步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至7任一项所述的项目第三方库升级检测方法的各个步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳开源互联网安全技术有限公司,未经深圳开源互联网安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010369745.0/1.html,转载请声明来源钻瓜专利网。