一种恶意NPM包的识别方法及相关组件技术

技术编号:35103107 阅读:12 留言:0更新日期:2022-10-01 17:11
本发明专利技术公开了一种恶意NPM包的识别方法及相关组件,涉及计算机技术领域。首先将待分析NPM包进行解析以获取待分析NPM包的行为特征,若待分析NPM包的行为特征存在于攻击行为特征库中,则证明待分析NPM包被安装时有可能对终端进行攻击,因此判定待分析NPM包为恶意NPM包。其中,攻击行为特征库中存储有已被确定为恶意的NPM包在攻击终端时的攻击行为特征,便于判断待分析NPM包是否为恶意NPM包。实现了对NPM包的安全性的自动化识别,降低了开发人员和使用者的安全风险。和使用者的安全风险。和使用者的安全风险。

【技术实现步骤摘要】
一种恶意NPM包的识别方法及相关组件


[0001]本专利技术涉及计算机
,特别是涉及一种恶意NPM包的识别方法及相关组件。

技术介绍

[0002]NPM(Node Package Manager,Node包管理器)是一种管理工具,通过NPM可以完成NPM包的安装、共享、分发代码以及管理依赖关系的操作。目前,NPM将NPM包的下载、安装和配置等过程完全自动化处理,使得NPM针对NPM包的发布流程变得很简单,但是NPM没有对NPM包的审查功能,无法自动检测NPM包的安全性。因此,NPM虽然为开发人员带来了一定的方便,但是这种自动化处理的过程使得攻击者能够轻易地利用NPM包对其他使用者的终端进行攻击,给开发人员和使用者带来极大的安全风险。

技术实现思路

[0003]本专利技术的目的是提供一种恶意NPM包的识别方法及相关组件,能够实现对NPM包的安全性的自动化识别,降低开发人员和使用者的安全风险。
[0004]为解决上述技术问题,本专利技术提供了一种恶意NPM包的识别方法,包括:
[0005]将待分析NPM包进行解析,并获取所述待分析NPM包的行为特征;
[0006]若所述待分析NPM包的行为特征存在于攻击行为特征库中,则判定所述待分析NPM包为恶意NPM包;
[0007]其中,所述攻击行为特征库中存储有已被确定为恶意的NPM包在攻击终端时的攻击行为特征。
[0008]优选的,所述攻击行为特征包括控制所述终端进行网络连接、操作所述终端中的指定文件、调用所述终端的指定进程以及调用所述终端的指定接口中的任意一个或多个的组合。
[0009]优选的,在将待分析NPM包进行解析之后,还包括:
[0010]获取所述待分析NPM包的标识信息;
[0011]若所述待分析NPM包的标识信息存在于所述攻击行为特征库中,则进入判定所述待分析NPM包为恶意NPM包的步骤;
[0012]其中,所述攻击行为特征库中还存储有已被确定为恶意的NPM包的恶意标识信息。
[0013]优选的,所述恶意标识信息包括已被判定为恶意的NPM包的恶意包名称、已被判定为恶意的NPM包的作者以及已被判定为恶意的NPM包的依赖关系中的任意一个或多个的组合。
[0014]优选的,在所述恶意标识信息包括所述恶意包名称时,判定所述待分析NPM包为恶意NPM包之前,还包括:
[0015]判断所述待分析NPM包的名称与所述恶意包名称是否满足预设相似条件;
[0016]若是,则进入判定所述待分析NPM包为恶意NPM包的步骤。
[0017]优选的,在判定所述待分析NPM包为恶意NPM包之前,还包括:
[0018]通过字符串匹配方式判断所述待分析NPM包中是否含有使用所述终端的用户的个人隐私信息;
[0019]若所述待分析NPM包中含有所述个人隐私信息,则进入判定所述分析NPM包为恶意NPM包的步骤。
[0020]优选的,判定所述待分析NPM包为恶意NPM包之前,还包括:
[0021]在所述终端中创建虚拟容器环境;
[0022]在所述虚拟容器环境中安装所述待分析NPM包,并在所述待分析NPM包的安装过程中监控所述待分析NPM包的安装行为特征;
[0023]若所述安装行为特征存在于所述攻击行为特征库中,则进入判定所述分析NPM包为恶意NPM包的步骤。
[0024]为解决上述技术问题本专利技术还提供了一种恶意NPM包的识别系统,包括:
[0025]行为特征获取单元,用于将待分析NPM包进行解析,并获取所述待分析NPM包的行为特征;
[0026]行为特征判定单元,用于在所述待分析NPM包的行为特征存在于攻击行为特征库中时,触发判定单元;
[0027]所述判定单元,用于判定所述待分析NPM包为恶意NPM包;
[0028]其中,所述攻击行为特征库中存储有已被确定为恶意的NPM包在攻击终端时的攻击行为特征。
[0029]优选的,所述攻击行为特征包括控制所述终端进行网络连接、操作所述终端中的指定文件、调用所述终端的指定进程以及调用所述终端的指定接口中的任意一个或多个的组合。
[0030]优选的,还包括:
[0031]标识信息获取单元,用于获取所述待分析NPM包的标识信息;
[0032]标识信息判定单元,用于在所述待分析NPM包的标识信息存在于所述攻击行为特征库中时,触发所述判定单元;
[0033]其中,所述攻击行为特征库中还存储有已被确定为恶意的NPM包的恶意标识信息。
[0034]优选的,所述恶意标识信息包括已被判定为恶意的NPM包的恶意包名称、已被判定为恶意的NPM包的作者以及已被判定为恶意的NPM包的依赖关系中的任意一个或多个的组合。
[0035]优选的,还包括:
[0036]相似名称判断单元,用于在所述恶意标识信息包括所述恶意包名称时,判定所述待分析NPM包为恶意NPM包之前,判断所述待分析NPM包的名称与所述恶意包名称是否满足预设相似条件;若是,则触发所述判定单元。
[0037]优选的,还包括:
[0038]隐私信息判断单元,用于在判定所述待分析NPM包为恶意NPM包之前,通过字符串匹配方式判断所述待分析NPM包中是否含有使用所述终端的用户的个人隐私信息;若所述待分析NPM包中含有所述个人隐私信息,则触发所述判定单元。
[0039]优选的,还包括:
[0040]虚拟容器环境创建单元,用于在判定所述待分析NPM包为恶意NPM包之前,在所述
终端中创建虚拟容器环境;
[0041]安装行为特征监控单元,用于在所述虚拟容器环境中安装所述待分析NPM包,并在所述待分析NPM包的安装过程中监控所述待分析NPM包的安装行为特征;
[0042]安装行为特征判定单元,用于在所述安装行为特征存在于所述攻击行为特征库中,触发所述判定单元。
[0043]为解决上述技术问题本专利技术还提供了一种恶意NPM包的识别装置,包括:
[0044]存储器,用于存储计算机程序;
[0045]处理器,用于执行所述计算机程序时实现上述恶意NPM包的识别方法的步骤。
[0046]为解决上述技术问题本专利技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述恶意NPM包的识别方法的步骤。
[0047]综上,本专利技术公开了一种恶意NPM包的识别方法及相关组件,首先将待分析NPM包进行解析以获取待分析NPM包的行为特征,若待分析NPM包的行为特征存在于攻击行为特征库中,则证明待分析NPM包被安装时有可能对终端进行攻击,因此判定待分析NPM包为恶意NPM包。其中,攻击行为特征库中存储有已被确定为恶意的NPM包在攻击终端时的攻击行为特征,便于判断待分析NPM包是否为恶意NPM包。可有效监测NPM中的恶意NPM包,提高NPM包的安全性,实现了对NPM包的安全性的自动化识别,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种恶意NPM包的识别方法,其特征在于,包括:将待分析NPM包进行解析,并获取所述待分析NPM包的行为特征;若所述待分析NPM包的行为特征存在于攻击行为特征库中,则判定所述待分析NPM包为恶意NPM包;其中,所述攻击行为特征库中存储有已被确定为恶意的NPM包在攻击终端时的攻击行为特征。2.如权利要求1所述的恶意NPM包的识别方法,其特征在于,所述攻击行为特征包括控制所述终端进行网络连接、操作所述终端中的指定文件、调用所述终端的指定进程以及调用所述终端的指定接口中的任意一个或多个的组合。3.如权利要求1所述的恶意NPM包的识别方法,其特征在于,在将待分析NPM包进行解析之后,还包括:获取所述待分析NPM包的标识信息;若所述待分析NPM包的标识信息存在于所述攻击行为特征库中,则进入判定所述待分析NPM包为恶意NPM包的步骤;其中,所述攻击行为特征库中还存储有已被确定为恶意的NPM包的恶意标识信息。4.如权利要求3所述的恶意NPM包的识别方法,其特征在于,所述恶意标识信息包括已被判定为恶意的NPM包的恶意包名称、已被判定为恶意的NPM包的作者以及已被判定为恶意的NPM包的依赖关系中的任意一个或多个的组合。5.如权利要求4所述的恶意NPM包的识别方法,其特征在于,在所述恶意标识信息包括所述恶意包名称时,判定所述待分析NPM包为恶意NPM包之前,还包括:判断所述待分析NPM包的名称与所述恶意包名称是否满足预设相似条件;若是,则进入判定所述待分析NPM包为恶意NPM包的步骤。6.如权利要求1所述的恶意NPM包的识别方法,...

【专利技术属性】
技术研发人员:牛彬
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1