DONAPI: Malicious NPM Packages Detector using Behavior Sequence Knowledge Mapping

2024年03月13日
  • 简介
    随着软件开发中模块化的日益普及,包管理器和语言生态系统也随之兴起。其中,npm作为最广泛使用的包管理器,托管了超过2百万个第三方开源包,大大简化了代码构建过程。然而,这种开放性也带来了安全风险,这在许多包中毒事件中得到了证明。 本文中,我们实时同步了一个包含超过3.4百万个包的本地包缓存,以便我们能够访问更多的包代码细节。此外,我们对从公共数据集和安全报告中收集的包进行手动检查和API调用序列分析,构建了一个层次分类框架和行为知识库,涵盖了不同的敏感行为。此外,我们提出了DONAPI,这是一个结合了静态和动态分析的自动恶意npm包检测器。它通过代码重构技术和静态分析对包的恶意程度进行初步判断,提取动态API调用序列以确认和识别静态分析无法处理的混淆内容,最后根据构建的行为知识库标记恶意软件包。截至目前,我们已经确认了325个恶意样本,并发现了2个不寻常的API调用和246个API调用序列,这些在已知样本中没有出现过。
  • 作者讲解
  • 图表
  • 解决问题
    本论文旨在解决npm软件包管理器中存在的安全风险,特别是包污染事件,以及缺乏自动检测恶意软件包的方法。
  • 关键思路
    论文提出了一个自动检测恶意npm软件包的方法,称为DONAPI,它结合了静态和动态分析,并使用行为知识库来标记恶意软件包。
  • 其它亮点
    论文同步了一个包含超过3.4万个软件包的本地软件包缓存,并进行了手动检查和API调用序列分析,以构建一个包含不同敏感行为的分层分类框架和行为知识库。作者使用DONAPI检测恶意软件包,发现325个恶意样本,同时也发现了246个API调用序列和2个不寻常的API调用。
  • 相关研究
    在相关研究方面,最近的研究包括:"Towards Detecting Malicious npm Packages","Securing Node.js: A Survey on Security Threats and Mitigation Techniques"等。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问