Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
retire.js — сканер, обнаруживающий использование библиотек JavaScript с известными уязвимостями. Также может генерировать SBOM найденных библиотек. | Kitploit
Инструменты/GitHubGitHub/retirejs/retire.js
Статический анализСканеры уязвимостейВеб-безопасность
GitHubretirejs/retire.js

retire.js

сканер, обнаруживающий использование библиотек JavaScript с известными уязвимостями. Также может генерировать SBOM найденных библиотек.

РепозиторийСайт
4.2k4379 ч 51 мин назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Retire.js

Что вы используете, то и должно быть удалено

Существует огромная экосистема JavaScript-библиотек, доступных как для веб-приложений, так и для Node.js. Хотя эти библиотеки значительно ускоряют разработку, они также требуют постоянного обслуживания, чтобы своевременно устранять уязвимости безопасности. В 2013 году «Использование компонентов с известными уязвимостями» было добавлено в список OWASP Top 10 критических рисков безопасности, подчёркивая серьёзную угрозу, которую устаревшие или небезопасные зависимости могут представлять для веб-приложений. Retire.js был создан, чтобы помочь разработчикам выявлять версии JavaScript-библиотек с известными уязвимостями, особенно те, которые не указаны в манифестах пакетов, а просто загружены и помещены в систему контроля версий.

Retire.js можно использовать разными способами:

  1. В качестве сканера командной строки
  2. В качестве расширения Chrome — Не доступен официально в Chrome Web Store
  3. В качестве расширения Burp или дополнения OWASP ZAP
  4. В качестве расширения Firefox — Устарело. Сообщите нам, если хотите поддерживать и вернуть его.
  5. Безголовый сканер веб-сайта
  6. В качестве плагина grunt (устарело)
  7. В качестве задачи gulp (устарело)

Сканер командной строки

Сканируйте веб-приложение или Node-приложение на предмет использования уязвимых JavaScript-библиотек и/или модулей Node.JS. Если вы ещё не сделали этого, сначала установите node/npm. В папке с исходным кодом приложения выполните:

root@kitploit:~
$ npm install -g retire
$ retire

Генерация SBOM

retire.js может генерировать SBOM в формате CycloneDX:

root@kitploit:~
$ retire --outputformat cyclonedx

По умолчанию retire.js завершает работу с кодом 13, если находит уязвимости. Это можно переопределить с помощью --exitwith 0.

Расширения для Chrome и Firefox

Сканируют посещаемые сайты на наличие ссылок на небезопасные библиотеки и выводят предупреждения в консоль разработчика. Иконка на панели адреса также будет указывать, были ли загружены уязвимые библиотеки.

Расширение Burp и дополнение OWASP ZAP

@h3xstream адаптировал Retire.js в качестве плагина для инструментов тестирования на проникновение Burp и OWASP ZAP.

Команда OWASP ZAP официально поддерживает дополнение Retire.js, доступное через ZAP Marketplace и включённое по умолчанию в еженедельные сборки ZAP: https://www.zaproxy.org/docs/desktop/addons/retire.js/

Безголовый сканер сайта

Сканер retire-site-scanner https://github.com/RetireJS/retire-site-scanner можно использовать для сканирования веб-сайта в безголовом режиме (в отличие от использования расширений Chrome/Firefox).

Плагин Grunt (устарело)

Задача Grunt для запуска Retire.js как часть процесса сборки вашего приложения или другого автоматизированного рабочего процесса.

Задача Gulp (устарело)

Пример задачи Gulp, которую можно использовать в вашем gulpfile для автоматического отслеживания и сканирования файлов проекта. Вы можете изменять шаблоны отслеживания и (необязательные) параметры Retire.js по своему усмотрению.

root@kitploit:~
const c = require("ansi-colors");

var gulp = require("gulp");
var beeper = require("beeper");
var log = require("fancy-log");
var spawn = require("child_process").spawn;

gulp.task("retire:watch", ["retire"], function (done) {
  // Watch all javascript files and package.json
  gulp.watch(["js/**/*.js", "package.json"], ["retire"]);
});

gulp.task("retire", function () {
  // Spawn Retire.js as a child process
  // You can optionally add option parameters to the second argument (array)
  var child = spawn("retire", [], { cwd: process.cwd() });

  child.stdout.setEncoding("utf8");
  child.stdout.on("data", function (data) {
    log(data);
  });

  child.stderr.setEncoding("utf8");
  child.stderr.on("data", function (data) {
    log(c.red(data));
    beeper();
  });
});

Пожертвования

Пожертвования будут использованы для финансирования поддержки инструмента и репозитория уязвимостей.

Скачать инструмент