Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Retire.js - 检测JavaScript依赖漏洞的安全工具

Retire.js - 检测JavaScript依赖漏洞的安全工具

作者头像
qife122
发布于 2025-06-16 02:10:41
发布于 2025-06-16 02:10:41
27401
代码可运行
举报
运行总次数:1
代码可运行

项目概述

Retire.js是一个用于检测JavaScript项目中存在已知漏洞依赖的安全扫描工具。它能够识别网页应用和Node.js应用中使用的具有已知安全漏洞的JavaScript库和模块。

主要特性

  • 多平台支持:提供命令行工具、浏览器扩展和构建工具插件
  • 全面检测:通过多种方式检测漏洞依赖:
    • 文件名/URL匹配
    • 文件内容扫描
    • 哈希值比对
    • 沙箱执行检测(浏览器扩展)
  • 丰富的输出格式:支持文本、JSON、CycloneDX等多种报告格式
  • 持续更新:漏洞数据库定期更新
  • 轻量级:无复杂依赖,易于集成到开发流程中

安装指南

命令行工具安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install -g retire //前提要安装node.js

如下所示:

图片
图片

Chrome扩展安装

  1. 克隆仓库:git clone https://github.com/RetireJS/retire.js
  2. 运行构建脚本./build_chrome.sh
  3. 在Chrome中加载解压的扩展:chrome://extensions/ → "开发者模式" → "加载已解压的扩展程序" → 选择chrome/extension目录

如下所示:

图片
图片
图片
图片
图片
图片
图片
图片

Firefox扩展安装

firefox在管理扩展中搜索retire.js安装即可

图片
图片

使用说明

基本扫描

代码语言:javascript
代码运行次数:1
运行
AI代码解释
复制
//npm install -g retire 安装完以后 在命令行执行
retire --path /path/to/scan --proxy http://127.0.0.1:21882 //在国内的话可能要用魔法

如下所示,--path 后面添加要检查的web项目(须包含前端源代码的)

比如我这个前后端分离的项目中,前端项目用了axios依赖,它即检测到了该项目使用了axios依赖,并识别出了当前axios使用的版本以及可能存在的漏洞风险

图片
图片

常用选项

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 指定扫描路径
retire --path /path/to/scan

# 输出JSON格式报告
retire --path /path/to/scan --outputformat json

# 忽略特定路径
retire --path /path/to/scan --ignore "node_modules,bower_components"

# 指定漏洞严重级别阈值
retire --path /path/to/scan --severity high

Chrome扩展使用

安装后,扩展会自动扫描访问的网页,并在开发者控制台显示发现的漏洞。如下所示

图片
图片
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-05-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络安全技术点滴分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
「安全工具」13个工具,用于检查开源依赖项的安全风险
您是否知道高达90%的应用程序通常包含第三方组件,主要是开源软件?您是否知道全球500强中超过50%使用易受攻击的开源组件?
架构师研究会
2019/07/22
3.6K0
2025开源SCA工具推荐 | 组件依赖包安全风险检测利器
软件成分分析(Software Composition Analysis, SCA)是Gartner定义的一种应用程序安全检测技术,该技术用于分析开源软件以及第三方商业软件涉及的各种源码、模块、框架和库等,以识别和清点开源软件的组件及其构成和依赖关系,并检测是否存在已知的安全和功能漏洞、安全补丁是否已经过时或是否存在许可证合规或兼容性风险等安全问题,帮助确保企业软件供应链中组件的安全。
OpenSCA社区
2025/03/07
7490
2025开源SCA工具推荐 | 组件依赖包安全风险检测利器
2024年Node.js精选:50款工具库集锦,项目开发轻松上手(二)
Node.js的力量源自于庞大的NPM生态圈,拥有超过150万个包。没有NPM,Node.js虽然仍然可以使用,但其功能将大打折扣。在本系列文章中,我们将探索每位开发者都应该了解的常用NPM包。本篇,我们继续介绍第11至20款工具库,让你在Node.js项目开发中如虎添翼。
前端达人
2024/03/11
8640
2024年Node.js精选:50款工具库集锦,项目开发轻松上手(二)
Tarnish:一款针对Chrome扩展的静态安全分析平台
今天给大家介绍的是一个名叫Tarnish的工具,Tarnish是一个Chrome扩展静态分析工具,可帮助研究人员对Chrome扩展的安全情况进行审计。
FB客服
2019/10/29
6200
Tarnish:一款针对Chrome扩展的静态安全分析平台
Node.js + Git Hooks + Slack:前端项目构建异常自动提醒
Git Hooks 是 Git 提供的一种机制,允许开发者在特定的事件发生时触发自定义脚本,这些事件包括代码提交、推送等。通过使用 Git Hooks,我们可以在代码提交之前或之后执行一些自动化任务,例如代码格式检查、单元测试、构建验证等。
三掌柜
2025/07/24
1170
Node.js + Git Hooks + Slack:前端项目构建异常自动提醒
如何使用bomber扫描软件物料清单(SBOM)以查找安全漏洞
 关于bomber  bomber是一款针对软件物料清单(SBOM)的安全漏洞扫描工具,广大研究人员可以通过该工具扫描和检测软件物料清单(SBOM)。 当你向一家供应商索要了他们的一个封闭源代码产品的软件材料清单,而他们以JSON文件的形式向你提供了一份材料清单,接下来你需要怎么做呢? 我们要做的第一件事就是查看软件物料清单中列出的任意组件是否存在安全漏洞,以及这些组件具有何种许可证,这将帮助我们确认使用该产品将承担何种风险。 而bomber正好可以帮助我们,该工具可以读取任何基于JSON或XML的Cycl
FB客服
2023/03/29
1.2K0
如何使用bomber扫描软件物料清单(SBOM)以查找安全漏洞
Node.js 编写 CLI 的实践
本文作者:ivweb 程柳锋 导语 通常而言,Node.js的应用场景有前后端分离、海量web页面渲染服务、命令行工具和桌面端应用等等。本篇文章选取CLI(Command Line Tools)子领域
腾讯IVWEB团队
2017/07/04
2.7K0
Node.js 编写 CLI 的实践
node-gyp是用Node.js编写的跨平台命令行工具,用于为Node.js编译本机插件
node-gyp是用Node.js编写的跨平台命令行工具,用于为Node.js编译本机插件。它包含gyp-next项目的供应商副本,该副本以前由Chromium团队使用,已扩展用来支持Node.js本机插件的开发。
西里国际站
2023/08/23
3.9K0
3 种确保开源Node.js依赖包安全的方法
随着Node.js应用程序的规模和特性的扩展,它们的依赖关系也会扩展。为了让Node.js应用程序能够正常运行,你还需要测试框架、UI框架、数据库客户端、像Express这样的MVC库等等。
前端修罗场
2022/07/29
1.2K0
3 种确保开源Node.js依赖包安全的方法
vue项目搭建及基本配置
准备阶段会将项目环境配置完毕,包含 node、 npm、 webpack和 vue-cli。已经完成的小伙伴可以跳过此步骤看第二阶段。
流眸
2019/08/12
3.6K0
Node.js 安装与开发
Node.js 简介 Node.js是一个Javascript运行环境(runtime),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。Node.js对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好。 V8引擎执行Javascript的速度非常快,性能非常好。 Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。 Node.js 使用事件驱动, 非
阳光岛主
2018/05/17
2.5K0
Windows配置Node.js+npm的流程
  本文介绍在Windows电脑中,下载、安装并配置Node.js环境与npm包管理工具的方法。
疯狂学习GIS
2025/02/18
1.2K0
Windows配置Node.js+npm的流程
Node.js CLI 工具最佳实践
一个糟糕的 CLI 工具会让用户觉得难用,而构建一个成功的 CLI 需要密切关注很多细节,同时需要站在用户的角度,创造良好的用户体验。要做到这些特别不容易。
ConardLi
2020/03/06
3.7K0
Window环境下搭建Vue.js开发环境
笔者最近在进行前端的学习,在点完了HTML5、CSS3、JavaScript等技能树之后,是时候开始框架的学习了。目前为止前端框架呈现出React、Angular、Vue三足鼎立的局面,在这三种框架中,Vue最为简单,使用场景最为广泛,因此笔者从Vue开始学习,但是发现网上能搜到的Vue安装教程均不全面,所以写出此篇供大家学习。 大致步骤 安装Node.js 安装Vue.js 安装Webpack Step1: 安装Node.js Node.js是一个Javascript运行环境(runtime)。实际上它
Steve Wang
2018/02/05
3.1K0
手把手教你编写Node.js模块
👆点击“博文视点Broadview”,获取更多书讯 编写稍复杂的程序时,一般会先将代码模块化。 在Node.js中,一般会将代码合理拆分到不同的JavaScript文件中,每一个文件就是一个模块,而文件路径就是模块名。 在编写模块代码时要遵循CommonJS规范(新版Node.js已经支持ES Module规范,但不建议两种规范混用)。 同时,还要结合npm简单发布流程,让开发者体会到快速开发和快速发布功能的强大之处。 因为有如此强大的功能,npm生态始终繁荣。 通过npm安装的Node.js模块主要
博文视点Broadview
2023/02/24
1.3K0
手把手教你编写Node.js模块
03_Node.js模块化开发
NPM的全称是Node Package Manager,是一个NodeJS包管理和分发工具,已经成为了非官方的发布Node模块(包)的标准。
张哥编程
2024/12/13
3890
03_Node.js模块化开发
小程序 boilerplate cli 工具教程
于是决定写个(100 行代码不到的) cli 工具解决痛点,另外选择了 npm package 的方式,方便维护。
kmokidd
2019/04/16
2.7K0
小程序 boilerplate cli 工具教程
详解karma & jasmine自动化测试
前端包管理工具 代码重用和复用是快捷开发的一种重要方式,但是原始的代码模块散布于各个平台上,不好寻找,程序员对其进行有效管理也成为了一大难题。此时,依赖(包、插件、工具都可以称呼,本质是他人写好封装后的代码模块)管理工具应需而生。依赖管理工具使用简单的命令即可提供 依赖的查找、安装、卸载等操作,深受广大程序员喜爱。 前端 Node.js 最为常用的依赖管理工具 是npm,npm 之于Node.js,就如 pip 之于 Python,gem 之于 Ruby,pear 之于 PHP , maven 之于Jav
lonelydawn
2018/02/09
2.8K0
详解karma & jasmine自动化测试
我和JS文件不得不说的故事
如果你是使用Burp Suite来进行测试,就可以通过多种方式来收集应用程序中的所有JavaScript文件。这也是俺比较喜欢的一种方式
tnt阿信
2020/09/18
1.5K0
JavaScript 编程精解 中文第三版 二十、Node.js
到目前为止,我们已经使用了 JavaScript 语言,并将其运用于单一的浏览器环境中。本章和下一章将会大致介绍 Node.js,该程序可以让读者将你的 JavaScirpt 技能运用于浏览器之外。读者可以运用 Node.js 构建应用程序,实现简单的命令行工具和复杂动态 HTTP 服务器。
ApacheCN_飞龙
2022/12/01
2.4K0
JavaScript 编程精解 中文第三版 二十、Node.js
推荐阅读
相关推荐
「安全工具」13个工具,用于检查开源依赖项的安全风险
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验