该资源是来自武汉大学0817团队,DataCon 2024软件供应链安全赛道亚军(一等奖)的开源分享,该团队构建了一个针对npm软件包的恶意包检测方法及系统——MalNPMDetector。极其适合开发者、研究者、学生学习和应用。快来 Gitee 点个 Star ⭐,Fork 🍴并 Watch👀, 试试吧!希望对大家有所帮助。
MalNPMDetector是一个针对npm软件包的恶意包检测方法及系统,包括如下步骤:
高效的静态规则匹配在大样本数据集中初步过滤出可疑恶意包及混淆软件包; 较为耗时的基于字符串的污点分析在规则匹配的可疑恶意包结果中进一步收缩范围; 将两步过滤结果的可疑样本通过构造的prompt提交给ChatGPT验证其恶意性,同时学习新的恶意特征更新已有的静态规则; 针对静态规则匹配检测出的混淆软件包,采用动态分析的方式确认其恶意性。本项目能够高效检测出npm软件包中的恶意包,误报率低、准确率高、能够检测新的攻击。
其开源地址如下:
https://gitee.com/jenniedn/mal-npmdetector.git
文章目录:
🔥软件供应链的安全风险分析
随着软件供应链复杂性的增加,开源软件包 已成为现代软件开发的核心组成部分。然而,这一趋势也带来了 新的安全挑战,特别是 攻击者在开源软件源中投放恶意软件包,对开发者及其使用的系统构成潜在威胁。常见的NPM恶意软件包大致可以分为六类:
- 信息窃取
此类恶意包通常结构简单,具有统一模板。安装后会自动执行恶意脚本,收集并回传系统和用户信息等敏感数据,如用户目录、用户名、DNS服务器,网卡信息和 passwd 文件内容等; - 反弹shell
此类恶意包危害极大,成功攻击后,攻击者可获取目标机器当前用户权限,并进步尝试提权,以最高权限执行任意命令,全面控制受害设备; - 后门木马
此类恶意包在用户机器上下载或释放并执行已经精心制作好的后门木马; - 挖矿病毒
此类恶意包以窃取计算资源为目的,将受害者的机器变为攻击者矿池的算力节点,为其持续提供算力。 - 加密勒索
此类恶意包会读取用户电脑上的重要目录文件内容,加密后再写回原文件,并留下勒索提示。 - npm仓库污染
此类恶意包没有太多实际作用,但是大量充斥于NPM开源仓库,某些情形下容易造成NPM整个仓库不可用。
🔥MalNPMDetector
👉 MalNPMDetector结合静态 + 动态 + AI 辅助分析,实现高效、精准的恶意软件包检测,并具备 自学习与持续优化能力,增强软件供应链安全防护。其工作流程图可以如下图所示:
⭐ 其先进性在于:
(1)基于静态规则匹配的高效预筛选机制 构建大规模 恶意软件包特征库,结合 模式匹配、语法解析与启发式分析,在海量样本中 精准筛选疑似恶意包及代码混淆样本。采用 多层级匹配策略(关键字规则、代码模式、异常依赖链分析)降低误报率,为后续深度分析奠定基础。
(2)基于高级污点分析的恶意代码路径追踪提出了一种基于字符串字面值的污点分析方法,并结合 Semgrep 进行更精准的检测。例如,我们仅在关键敏感字符串(如 bash -i、cat、curl 等)经过污点传播并最终进入系统执行函数时,才会报告恶意行为。
(3)基于 AI 的大规模恶意软件包自动化分类与持续学习利用 ChatGPT 进行上下文感知的恶意性推理,实现恶意代码逻辑的深度解析与分类。
💡 如何参与?
MalNPMDetector是一个 开源项目,我们欢迎所有对软件供应链安全感兴趣的开发者参与贡献:
⭐ 给个 Star,支持我们的项目! 👀 Watch 关注项目,随时获取最新动态 🍴 Fork 仓库,进行二次开发或学习研究! 📝 提交 Issue 或 PR,共同优化软件供应链生态! 👉 访问 Gitee 仓库:https://gitee.com/jenniedn/mal-npmdetector.git
并且拥有详细的源码分析:
🎯让我们一起推动软件供应链安全项目的开源发展!
如果你正在从事安全开发、软件供应链安全研究,那么MalNPMDetector绝对值得你的关注!现在就Star ⭐ + Fork 🍴,加入我们,一起构建更安全的数字世界!🔥 期待您的加入!
最后,分享不易,赶快前往 GitHub,尤其从事恶意代码分析和参与DataCon的同学,体验这一NPM恶意软件包检测的解决方案吧!
https://gitee.com/jenniedn/mal-npmdetector.git
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...