Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 305

Закрепление зависимостей (pinning)

Что такое Закрепление зависимостей (pinning)?

Закрепление зависимостей (pinning)Практика объявления зависимостей ПО точными версиями, часто с криптографическими хешами, чтобы сборки всегда получали одни и те же артефакты и были устойчивы к вмешательству в цепочку поставок.


Pinning заменяет нестрогие диапазоны вроде "^1.0.0" на точные версии и, в идеале, криптографические дайджесты в lock-файле (package-lock.json, poetry.lock, Pipfile.lock, Gemfile.lock, go.sum, Cargo.lock). Сборки становятся воспроизводимыми и устойчивыми к скрытым обновлениям, dependency confusion, typosquatting и компрометации версий. Современная практика также закрепляет GitHub Actions и другие CI-плагины на SHA коммита вместо изменяемых тегов. Pinning необходимо сочетать с активным мониторингом уязвимостей (SCA, Dependabot, Renovate), иначе приложения устаревают и накапливают CVE. Hash-pinning — ключевой контрол, на который ссылаются SLSA, NIST SSDF, OWASP и инициативы воспроизводимых сборок.

Примеры

  1. 01

    Закрепление всех сторонних GitHub Actions на SHA коммита вместо тегов вроде v3.

  2. 02

    Использование pip --require-hashes с полностью хешированным requirements.txt в CI.

Частые вопросы

Что такое Закрепление зависимостей (pinning)?

Практика объявления зависимостей ПО точными версиями, часто с криптографическими хешами, чтобы сборки всегда получали одни и те же артефакты и были устойчивы к вмешательству в цепочку поставок. Относится к категории Безопасность приложений в кибербезопасности.

Что означает Закрепление зависимостей (pinning)?

Практика объявления зависимостей ПО точными версиями, часто с криптографическими хешами, чтобы сборки всегда получали одни и те же артефакты и были устойчивы к вмешательству в цепочку поставок.

Как работает Закрепление зависимостей (pinning)?

Pinning заменяет нестрогие диапазоны вроде "^1.0.0" на точные версии и, в идеале, криптографические дайджесты в lock-файле (package-lock.json, poetry.lock, Pipfile.lock, Gemfile.lock, go.sum, Cargo.lock). Сборки становятся воспроизводимыми и устойчивыми к скрытым обновлениям, dependency confusion, typosquatting и компрометации версий. Современная практика также закрепляет GitHub Actions и другие CI-плагины на SHA коммита вместо изменяемых тегов. Pinning необходимо сочетать с активным мониторингом уязвимостей (SCA, Dependabot, Renovate), иначе приложения устаревают и накапливают CVE. Hash-pinning — ключевой контрол, на который ссылаются SLSA, NIST SSDF, OWASP и инициативы воспроизводимых сборок.

Как защититься от Закрепление зависимостей (pinning)?

Защита от Закрепление зависимостей (pinning) обычно сочетает технические меры и операционные практики, как описано в определении выше.

Какие есть другие названия Закрепление зависимостей (pinning)?

Распространённые альтернативные названия: Фиксация версий, Hash pinning.

Связанные термины