
cve-lite-cli v1.29.0
Быстрый, удобный для разработчиков сканер уязвимостей зависимостей JS/TS с локальным сканированием lockfile, сопоставлением OSV, видимостью прямых и транзитивных зависимостей, --fix, выводом в JSON и практическими рекомендациями по устранению.
Большинство инструментов говорят вам, что не так. CVE Lite CLI говорит вам, что запустить.
CVE Lite CLI
🏆 Официально признан проектом лаборатории OWASP
Сканирование уязвимостей, которое начинается в вашем терминале и легко вписывается в CI.
Сканируйте свой lockfile, получайте готовые к копированию команды исправления и выпускайте чистый код.
Сканируй. Понимай. Исправляй.
| 🏆 | 🎯 | 🔒 |
| Проект лаборатории OWASP Прошёл рецензирование организацией, стоящей за OWASP Top 10 — стандартом безопасности, которому следуют миллионы разработчиков | В первую очередь — устранение Проверенные команды исправления + рекомендации по транзитивным зависимостям с учётом родительских — не просто ID CVE | Работает локально Ничего не покидает вашу машину — ни ваш код, ни ваше дерево зависимостей |
Быстрый старт • Использование • Скриншоты • HTML-отчёт • Сравнение • Дорожная карта • Участие • Присоединиться к Slack
Менеджеры пакетов
npm | pnpm | Yarn | Bun |
Быстрый старт```bash
npm install -g cve-lite-cli cve-lite /path/to/project
Или разово с помощью `npx`:```bash
npx cve-lite-cli /path/to/project
Нет аккаунта. Никакой настройки. Исходный код не покидает вашу машину.
Использование```bash
cve-lite /path/to/project # basic scan cve-lite /path/to/project --verbose # full fix plan with dependency paths cve-lite /path/to/project --fix # apply validated direct fixes and rescan cve-lite /path/to/project --fail-on high # exit non-zero on high severity and above cve-lite /path/to/project --json # JSON output cve-lite /path/to/project --sarif # SARIF output for GitHub Code Scanning cve-lite /path/to/project --report # interactive HTML dashboard cve-lite /path/to/project --check-overrides # audit override hygiene alongside the CVE scan cve-lite /path/to/project --check-maintenance # flag CVE-blocking version drag and npm-deprecated direct deps cve-lite /path/to/project --check-licenses # detect copyleft and unknown licenses alongside the CVE scan cve-lite advisories sync # sync advisory DB for offline use cve-lite advisories init # create an empty advisory DB to populate yourself cve-lite /path/to/project --offline # scan with no runtime API calls
Полную справку по флагам и кодам выхода см. в [руководстве по CLI](https://owasp.org/cve-lite-cli/docs/cli-reference) и [руководстве по режиму исправления](https://owasp.org/cve-lite-cli/docs/fix-mode).
## Гигиена переопределений (`overrides`)
`overrides` и `resolutions` — мощные инструменты, но они «гниют». CVE Lite CLI проверяет их в npm, pnpm, yarn и bun, выявляя одиннадцать классов проблем:
| Правило | Что выявляет |
|---|---|
| `OA001` | Осиротевшая цель: override для пакета, которого больше нет в дереве |
| `OA002` | Плавающий тег: override, привязанный к изменяемому тегу (`latest`, `next`) |
| `OA003` | Неверный раздел: override размещён в неправильном контейнере |
| `OA004` | Преодолённый пин: остальное дерево ушло дальше пина |
| `OA005` | Вложенный неэффективный override, который никогда не применяется |
| `OA006` | Связанный бинарник платформы: override конфликтует с точным пином родителя |
| `OA007` | Замороженный latest: реестр ушёл дальше закреплённой версии (требуется `--check-network`) |
| `OA008` | Материализованная уязвимая копия всё ещё на диске, несмотря на override |
| `OA009` | Устаревший минимум: нижняя граница диапазона override уже удовлетворена всеми родительскими объявлениями |
| `PD001` | Фантом только через override: пакет импортируется в исходном коде, но присутствует лишь благодаря пину override |
| `PD002` | Транзитивный фантом: пакет импортируется в исходном коде, но присутствует только как транзитивная зависимость |
Используйте подкоманду `overrides` для запуска только проверки гигиены (без сканирования CVE, быстрее, полностью работает офлайн) с поддержкой автоисправления. Используйте `--check-overrides`, чтобы добавить результаты гигиены к обычному сканированию CVE за один проход.```bash
cve-lite /path/to/project overrides # hygiene only - no CVE scan
cve-lite /path/to/project overrides --fix # hygiene only, auto-fix where possible
cve-lite /path/to/project --check-overrides # CVE scan + hygiene in one pass
Полное руководство с примерами по каждому правилу и шаблонами CI см. в руководстве по аудиту гигиены переопределений.
Риск обслуживания (--check-maintenance)
Сканер CVE сообщает вам, что транзитивный пакет уязвим. Он не сообщает вам, почему вы не можете это исправить — часто ваша прямая зависимость закрепляет его ниже версии с исправлением, и для устранения требуется разрушительное обновление основной версии, о котором сканер даже не упоминает. Правило DM001 выявляет именно это, а также прямые зависимости, которые npm пометил как устаревшие.
| Сигнал | Серьёзность | Что это означает |
|---|---|---|
| Ограничение зависимости | высокая | Прямая зависимость блокирует исправление транзитивной CVE за обновлением основной версии |
| Устарела на npm | средняя | Прямая зависимость устарела — исправление не поступит через обычное обновление |
Пакеты, которые не публиковались годами, получают строку контекста Last release; возраст релиза носит информационный характер и сам по себе не является сигналом серьёзности.```bash
cve-lite /path/to/project --check-maintenance # CVE scan + maintenance risk
cve-lite /path/to/project --check-maintenance --fail-on high
For the full guide, see the [Maintenance Risk Detection guide](https://owasp.org/cve-lite-cli/docs/maintenance-risk).
## Release cooldown awareness
Package managers added a release cooldown to skip the danger window right after a version is published, when a hijacked release is live but not yet caught (the `chalk`/`debug` compromise sat live for about two hours). CVE Lite CLI reads the cooldown your project already configures and warns when a recommended fix is newer than that window, so it never quietly pushes you onto a version your own package manager would refuse to install.```
High severity fix commands
⚠ Published 2026-07-01, newer than your configured 365 day release cooldown (.npmrc); your package manager would hold this version - validate before overriding.
> npm install [email protected] (published 2026-07-01)
Предупреждение носит рекомендательный характер и включено по умолчанию (без флага, без изменения кода выхода). Оно читает min-release-age (npm), minimumReleaseAge (pnpm) или npmMinimalAgeGate (Yarn); оно никогда не выдумывает окно ожидания.
Полное руководство см. в Руководстве по осведомлённости о периоде охлаждения релизов.
Как это выглядит
| Вывод терминала | HTML-панель (--report) |
|---|---|
|
|
| Стандартный вывод сканирования · руководство по выводу | Сгенерировано с --report · руководство по HTML-отчёту |
Зачем нужен CVE Lite CLI
Большинство инструментов безопасности построено вокруг конвейеров, а не разработчиков. Dependabot открывает PR, до которых вы доберётесь когда-нибудь. CI-сканеры блокируют слияние постфактум. Панели выводят списки CVE ID без чёткого пути к их устранению. Разработчики учатся игнорировать это.
CVE Lite CLI создан для момента перед отправкой кода. Он локально читает ваш lockfile, запрашивает OSV и API бюллетеней реестра npm и выдаёт готовые к копированию и запуску команды npm install, pnpm add, yarn add или bun add — а не список идентификаторов. Вы видите, какие пакеты являются прямыми, а какие транзитивными, получаете рекомендации по обновлению с учётом родительских пакетов и можете сканировать офлайн в ограниченных средах.
Чем ближе инструмент безопасности к естественному рабочему процессу разработчика, тем выше вероятность, что им будут пользоваться.
Сравнение с другими инструментами
Ни один другой бесплатный инструмент не сочетает всё следующее: сканирование lockfile для npm, pnpm, Yarn и Bun; устранение транзитивных уязвимостей с учётом родительских пакетов, которое сообщает, какой пакет обновить (а не просто какой уязвим); проверку версии исправления перед предложением обновления; полностью офлайн-базу бюллетеней для ограниченных сред; сканирование CVE и лицензионной совместимости за один проход; а также сигнал приоритета EPSS, объединяющий серьёзность CVSS с вероятностью эксплуатации в четыре практических уровня.
| Возможность | CVE Lite CLI | npm audit | OSV-Scanner | Snyk CLI | Socket CLI |
|---|---|---|---|---|---|
| Сканирование lockfile JS/TS | ✅ | ✅ | ✅ | ✅ | ✅ |
| Поддержка npm + pnpm + Yarn + Bun | ✅ | ❌ | ✅ | ✅ | ✅ |
| Учётная запись не требуется | ✅ | ✅ | ✅ | ❌ | ❌ |
| Бесплатное использование | ✅ | ✅ | ✅ | ❌ | ❌ |
| Сканирование достижимости с учётом использования | ✅ | ❌ | ❌ | ✅ | ⚠️ |
| Видимость прямых и транзитивных зависимостей | ✅ | ⚠️ | ✅ | ✅ | ✅ |
| Маркировка зависимостей dev и runtime | ✅ | ⚠️ | ❌ | ⚠️ | ❌ |
| Команды исправления «копируй и запускай» | ✅ | ❌ | ❌ | ✅ | ⚠️ |
| Рекомендации по обновлению транзитивных родительских пакетов | ✅ | ❌ | ⚠️ | ⚠️ | ⚠️ |
| Предлагаемый план устранения | ✅ | ❌ | ⚠️ | ✅ | ⚠️ |
| Режим храповика (подавление базового уровня) | ✅ | ❌ | ❌ | ⚠️ | ❌ |
| Интерактивный HTML-отчёт | ✅ | ❌ | ❌ | ✅ | ❌ |
| Вывод SARIF / GitHub Code Scanning | ✅ | ❌ | ✅ | ✅ | ❌ |
| Вывод JSON | ✅ | ✅ | ✅ | ✅ | ✅ |
| Офлайн/локальная база бюллетеней | ✅ | ❌ | ⚠️ | ❌ | ❌ |
| Аудит гигиены переопределений | ✅ | ❌ | ❌ | ❌ | ❌ |
| Обнаружение риска обслуживания (задержка исправления CVE) | ✅ | ❌ | ❌ | ❌ | ❌ |
| Сканирование лицензионной совместимости (copyleft / неизвестные) | ✅ | ❌ | ❌ | ⚠️ | ⚠️ |
| Сигнал приоритета: серьёзность CVSS × вероятность эксплуатации EPSS | ✅ | ❌ | ❌ | ⚠️ | ❌ |
✅ = встроенная сильная сторона · ⚠️ = частично или зависит от рабочего процесса · ❌ = не является ключевой сильной стороной
Рекомендации по транзитивным родительским пакетам — ключевое отличие: CVE Lite CLI избегает рекомендаций прямых установок для пакетов, присутствующих только транзитивно. Для lockfile npm он может определить, когда npm update <parent> достаточно для повторного разрешения известной не уязвимой дочерней зависимости в пределах текущего диапазона родительского пакета, а когда сам родительский пакет требует обновления.
Подробный анализ по каждому инструменту см. в разделе Сравнение с другими инструментами.
Замените Dependabot одним пакетным PR
CVE Lite CLI v1.26.0 включает режим исправления GitHub Action, который запускается по расписанию и открывает один пакетный pull request со всеми проверенными обновлениями зависимостей — включая идентификаторы бюллетеней, количество находок до и после и подтверждённые OSV версии исправлений.
Добавьте этот файл в ваш репозиторий:```yaml
.github/workflows/cve-lite-fix.yml
name: CVE Lite security fixes on: schedule: - cron: '0 6 * * 1' # every Monday at 6am workflow_dispatch: permissions: contents: write pull-requests: write jobs: fix: runs-on: ubuntu-latest steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: ref: ${{ github.event.repository.default_branch }} - uses: OWASP/cve-lite-cli@v1 with: fix: 'true' create-pr: 'true'
| | Dependabot | CVE Lite режим исправления |
|---|---|---|
| PR за один запуск | Один на пакет | Один объединённый PR |
| ID уведомлений в теле PR | Нет | Да (GHSA-xxxx, CVE-xxxx) |
| Версия исправления проверена через OSV | Нет | Да |
| Количество находок до/после | Нет | Да |
| pnpm / Yarn Berry / Bun | Ограниченно | Полная нативная поддержка |
| Признание OWASP | Нет | OWASP Lab Project |
[Полная документация Action ->](https://owasp.org/cve-lite-cli/docs/github-action) — для CI-гейтинга только со сканированием см. руководство [CI и интеграция с рабочими процессами](https://owasp.org/cve-lite-cli/docs/workflow-integration).
## Проверка на реальных проектах
CVE Lite CLI был протестирован на реальных open-source проектах, чтобы убедиться, что он выявляет значимые проблемы — включая неочевидные транзитивные уязвимости и сложные пути обновления — а не только низкозначимые совпадения с уведомлениями.
- [OWASP Juice Shop](https://owasp.org/cve-lite-cli/docs/case-studies/owasp-juice-shop) — сканирование намеренно уязвимого приложения с известными проблемами зависимостей
- [NestJS](https://owasp.org/cve-lite-cli/docs/case-studies/nestjs) — проработка реальной последовательности устранения транзитивных зависимостей в широко используемом Node.js-фреймворке
- [Visual Studio Code](https://owasp.org/cve-lite-cli/docs/case-studies/vscode) — два прямых уведомления Anthropic SDK и цепочка высокой серьёзности в инструментарии gulp в корневом lockfile VS Code
- [Gatsby](https://owasp.org/cve-lite-cli/docs/case-studies/gatsby) — Yarn Classic монорепозиторий со 128 находками, пятью прямыми CVE и дедупликацией CVE Lite против `yarn audit`
- [Analog](https://owasp.org/cve-lite-cli/docs/case-studies/analog) — современный pnpm Angular монорепозиторий с неожиданными уязвимостями инструментария
[20+ тематических исследований по проектам npm, pnpm, Yarn и Bun ->](https://owasp.org/cve-lite-cli/docs/case-studies)
Фикстуры lockfile в репозитории для большинства проектов находятся в [`examples/`](https://github.com/owasp/cve-lite-cli/blob/main/examples/readme.md) — клонируйте и сканируйте сразу, без загрузки полных вышестоящих checkout.
Это не демо. Это задокументированные сканирования реальных кодовых баз с реальными находками, записанные до и после применения команд исправления.
Если вы поддерживаете open-source JavaScript или TypeScript проект и хотите, чтобы CVE Lite CLI был протестирован на нём, откройте issue и поделитесь репозиторием.
## Пресса
- **[Sniff out stale AI override advice with this open source CLI](https://www.theregister.com/security/2026/06/23/sniff-out-stale-ai-override-advice-with-this-open-source-cli/5259853)** — The Register (Thomas Claburn, старший репортёр), июнь 2026
- **[Shift left: How CVE Lite CLI is transforming developer security](https://sdtimes.com/security/shift-left-how-cve-lite-cli-is-transforming-developer-security/)** — SD Times (David Rubinstein, главный редактор), июнь 2026
- **[As AI speeds coding, CVE Lite CLI keeps security deliberately AI-free](https://www.csoonline.com/article/4176701/as-ai-speeds-coding-cve-lite-cli-keeps-security-deliberately-ai-free.html)** — CSO Online (Shweta Sharma), май 2026
- **[CVE Lite CLI: Open-source dependency vulnerability scanner](https://www.helpnetsecurity.com/2026/05/20/cve-lite-cli-open-source-dependency-vulnerability-scanner/)** — Help Net Security, май 2026
[Полное освещение в прессе ->](https://owasp.org/cve-lite-cli/docs/press)
## Признание OWASP
OWASP (Open Web Application Security Project) — это всемирно признанная некоммерческая организация, стоящая за стандартами безопасности, которым следуют миллионы разработчиков по всему миру — прежде всего [OWASP Top 10](https://owasp.org/www-project-top-ten/), самый цитируемый справочник по безопасности веб-приложений в отрасли. Организации от стартапов до компаний из списка Fortune 500 используют рекомендации OWASP как основу своих программ безопасности.
CVE Lite CLI — это [OWASP Lab Project](https://owasp.org/cve-lite-cli) — проверенный и принятый сообществом OWASP как вендор-нейтральный open-source инструмент безопасности.
**Где он вписывается в экосистему OWASP:**
CVE Lite CLI заполняет конкретный пробел — быстрое, локальное сканирование JS/TS зависимостей вблизи момента релиза — для чего более широкие инструменты OWASP не оптимизированы:
| Инструмент | Фокус |
|---|---|
| CVE Lite CLI | Lockfile-first, локальный CLI для разработчиков, ориентирован на устранение, JS/TS |
| OWASP Dependency-Check | Мультиязычный, в стиле SAST, более широкая экосистема |
| OWASP dep-scan | Мультиязычный и мультисредовый, SBOM и cloud-native |
| OWASP Dependency-Track | Платформа и управление SBOM, не локальный CLI |
CVE Lite CLI дополняет эти инструменты. Он не заменяет непрерывный мониторинг или полное управление SBOM — это быстрая локальная проверка, которую вы запускаете перед push.
## Сообщество и внедрение
CVE Lite CLI используется в продакшене организациями и независимыми разработчиками в нескольких странах. Подтверждённые пользователи охватывают государственные цифровые сервисы, корпоративные инженерные платформы, open-source библиотеки и обучение безопасности.
Известные пользователи включают:
- **SolidJS** — создатель фреймворка, Ryan Carniato, добавил CVE Lite CLI напрямую в его CI, сканируя каждое изменение с результатами, передаваемыми в GitHub Code Scanning
- **DINUM** (Франция) — интегрирован в четыре репозитория французских государственных цифровых сервисов, включая официальную инфраструктуру обучения ИИ для госслужащих
- **DGAFP** (Франция) — Министерство государственной службы, используется как pre-commit hook на публичном HR-чат-боте
- **Правительство Британской Колумбии** (Канада) — работает как обязательный merge gate вместе с Trivy в Министерстве услуг для граждан
- **Valibot** и **Formisch** — интегрированы как GitHub Action и dev-скрипт с защитой веток
## Текущие ограничения
- не обнаруживает вредоносные пакеты до их появления в данных уведомлений
- не выполняет поведенческое обнаружение вредоносного ПО или анализ содержимого пакетов
- не доказывает эксплуатируемость и не проверяет достижимость во время выполнения
- не сканирует образы контейнеров, бинарные файлы, секреты или IaC
- не заменяет полную программу безопасности приложений
- в настоящее время сосредоточен на сканировании JS/TS зависимостей
- производительность локальной синхронизации уведомлений потребует дальнейшей оптимизации по мере роста набора данных уведомлений
## Зависимости
**Runtime:** `yaml` · `yarn-lockfile` · `better-sqlite3` · `fflate`
**Только для разработки:** `@types/node` · `tsx` · `typescript`
Это намеренно. Поскольку CVE Lite CLI — это инструмент, ориентированный на безопасность, runtime-зависимости поддерживаются минимальными и проверяемыми.
## Дополнительная документация
- [Руководство по устранению неполадок](https://owasp.org/cve-lite-cli/docs/troubleshooting) — lockfile не найден, нулевые результаты, медленная синхронизация уведомлений, ошибки офлайн-БД, `--fix` пропускает находки, сбои CI
- [Руководство по покрытию парсеров](https://owasp.org/cve-lite-cli/docs/parser-coverage) — поддерживаемые форматы lockfile, приоритет выбора, fallback на `package.json`, монорепозитории, частные реестры
- [Руководство по стратегии устранения](https://owasp.org/cve-lite-cli/docs/remediation-strategy) — как CVE Lite CLI выбирает цели обновления и пути обновления родительских пакетов
- [Руководство по осведомлённости о периоде охлаждения релизов](https://owasp.org/cve-lite-cli/docs/release-cooldown) — как CVE Lite CLI считывает период охлаждения вашего пакетного менеджера и предупреждает о версиях исправлений новее окна, которому вы доверяете
## Безопасность и проверка
Каждый релиз подписан — GPG-подписанные git-теги для исходного кода, Sigstore Artifact Attestations для релизного tarball и ECDSA-подписи через npm-реестр. Проверьте с помощью:```bash
gh attestation verify cve-lite-cli-X.Y.Z.tgz --repo OWASP/cve-lite-cli
npm audit signatures
Полные сведения, отпечатки и модель угроз проекта см. в SECURITY.md и Security Assurance Case.
Сведения об управлении проектом — роли, принятие решений и разрешение споров — см. в CONTRIBUTING.md.
Участие в разработке
Особенно ценна обратная связь по ясности вывода, рекомендациям по устранению уязвимостей, охвату экосистем и использованию в CI.
Начните с CONTRIBUTING.md.
Добавьте бейдж в свой проект
Если вы используете CVE Lite CLI в своём проекте, добавьте этот бейдж в свой README:```markdown
[](https://github.com/OWASP/cve-lite-cli)
## Сообщество и поддержка
Для сообщений об ошибках и запросов функций: [GitHub Issues](https://github.com/OWASP/cve-lite-cli/issues)
Полезная обратная связь включает воспроизводимые отчёты об ошибках, реальные крайние случаи с lockfile-файлами, идеи по улучшению вывода и рекомендаций по устранению уязвимостей, а также примеры рабочих процессов CI или JSON.
Используете CVE Lite CLI в своей компании или проектах? [Поделитесь своим сценарием использования в ветке сообщества](https://github.com/OWASP/cve-lite-cli/discussions/481).
Для сообщений, связанных с безопасностью: [SECURITY.md](https://github.com/OWASP/cve-lite-cli/blob/main/SECURITY.md)
Этот проект следует [Кодексу поведения](https://github.com/OWASP/cve-lite-cli/blob/main/CODE_OF_CONDUCT.md). Пожалуйста, ознакомьтесь с ним перед участием.
Если CVE Lite CLI помогает вашему процессу выпуска релизов, [звезда на GitHub](https://github.com/OWASP/cve-lite-cli) поможет большему числу разработчиков найти проект.
## Участники
Спасибо всем, кто помогает улучшать CVE Lite CLI — учитываются вопросы, pull request'ы, документация, тематические исследования и обратная связь по реальным lockfile-файлам.
<p align="center">
<a href="https://github.com/OWASP/cve-lite-cli/graphs/contributors">
<img src="https://contrib.rocks/image?repo=OWASP/cve-lite-cli" alt="Contributors to OWASP/cve-lite-cli" />
</a>
</p>
<p align="center">
<sub>Сетка аватаров создана на основе <a href="https://github.com/OWASP/cve-lite-cli/graphs/contributors">графа участников GitHub</a> с помощью <a href="https://contrib.rocks">contrib.rocks</a>.</sub>
</p>
Впервые здесь? Ознакомьтесь с [CONTRIBUTING.md](https://github.com/OWASP/cve-lite-cli/blob/main/src/docs/CONTRIBUTING.md), чтобы начать, и изучите [Кодекс поведения](https://github.com/OWASP/cve-lite-cli/blob/main/CODE_OF_CONDUCT.md) перед участием.
## Спонсоры
Спасибо тем, кто спонсирует CVE Lite CLI и помогает поддерживать его:
- [Arkadii Yakovets](https://github.com/arkid15r)
---
**Примечание мейнтейнера:** CVE Lite CLI — это лабораторный проект OWASP, поддерживаемый [Sonu Kapoor](https://github.com/sonukapoor). Цель — создать инструмент, которому доверяют сообщества специалистов по безопасности и разработчиков и к которому возвращаются, а не продукт, требующий привязки к вендору или наличия панели управления для полезности. Если вы столкнулись с реальным крайним случаем lockfile-файла, пробелом в устранении уязвимостей или рабочим процессом, который не подходит, откройте issue. Обратная связь из реальных проектов — самый ценный вклад, который получает этот проект. См. [CONTRIBUTING.md](https://github.com/OWASP/cve-lite-cli/blob/main/src/docs/CONTRIBUTING.md), чтобы узнать, как участвовать.
---
## Лицензия
MIT — разрабатывается публично и поддерживается как проект OWASP Foundation компанией Sonu Kapoor.


