intermediate

Dependency vulnerabilities

Управляйте package risk через lockfiles, audit triage, minimal dependency surface, provenance, updates и runtime containment.

Node-приложения наследуют транзитивный риск npm-зависимостей — гигиена supply chain снижает поверхность атаки.

Практики:

  • Lockfile в репозитории для воспроизводимых установок
  • `npm audit` / OSV / Snyk в CI — triage по эксплуатируемости и достижимости, не по счётчику
  • Меньше зависимостей; поддерживаемые пакеты с малым транзитивным деревом
  • Контроль major-апдейтов; Dependabot с политикой
  • `npm ci` в CI, не изменяемый `npm install`

Runtime: не `npm install` от root в prod; read-only FS; ограничение egress.

На интервью: triage critical advisory в транзитиве; риск devDependency vs prod bundle.

Типовые ошибки: `audit fix --force` ломает сборку; игнор advisory на «неиспользуемом» пути без проверки; нет дисциплины lockfile.

Компромисс — между простотой, производительностью, безопасностью и эксплуатацией: назовите, что оптимизировали и какую цену приняли.

Чеклист:

  • Lockfile обязателен в CI.
  • SLA по severity для уязвимостей.
  • Регулярные обновления зависимостей.
  • SBOM или инвентарь релизов.