SLSA Framework
Что такое SLSA Framework?
SLSA FrameworkSupply-chain Levels for Software Artifacts — выпущенный OpenSSF набор требований по уровням, который последовательно ужесточает практики сборки, подписи и верификации ПО для защиты от вмешательства в цепочку поставок.
SLSA (читается «сальса») — это сообщественная рамка, размещённая на OpenSSF, помогающая поставщикам и потребителям рассуждать о целостности конвейеров сборки. Она определяет уровни сборки (в актуальных версиях L1-L3+), требования к исходному коду и зависимостям, а также подписанный provenance, описывающий, что было собрано, как и из каких входных данных. На высоких уровнях требуются воспроизводимые сборки, герметичные среды, изолированные и эфемерные платформы сборки и проверяемый provenance. SLSA дополняет SBOM (список компонентов) и такие рамки, как NIST SSDF и CISA Secure by Design. Внедрение обычно сочетается с инструментами вроде GitHub Actions reusable workflows, Tekton Chains, Sigstore Cosign и аттестаций in-toto. SLSA становится базовым требованием в регулируемых отраслях и федеральных закупках.
● Примеры
- 01
Достижение SLSA build level 3 с помощью reusable workflows GitHub и подписанного provenance.
- 02
Проверка SLSA provenance при деплое в рамках admission control в Kubernetes.
● Частые вопросы
Что такое SLSA Framework?
Supply-chain Levels for Software Artifacts — выпущенный OpenSSF набор требований по уровням, который последовательно ужесточает практики сборки, подписи и верификации ПО для защиты от вмешательства в цепочку поставок. Относится к категории Безопасность приложений в кибербезопасности.
Что означает SLSA Framework?
Supply-chain Levels for Software Artifacts — выпущенный OpenSSF набор требований по уровням, который последовательно ужесточает практики сборки, подписи и верификации ПО для защиты от вмешательства в цепочку поставок.
Как работает SLSA Framework?
SLSA (читается «сальса») — это сообщественная рамка, размещённая на OpenSSF, помогающая поставщикам и потребителям рассуждать о целостности конвейеров сборки. Она определяет уровни сборки (в актуальных версиях L1-L3+), требования к исходному коду и зависимостям, а также подписанный provenance, описывающий, что было собрано, как и из каких входных данных. На высоких уровнях требуются воспроизводимые сборки, герметичные среды, изолированные и эфемерные платформы сборки и проверяемый provenance. SLSA дополняет SBOM (список компонентов) и такие рамки, как NIST SSDF и CISA Secure by Design. Внедрение обычно сочетается с инструментами вроде GitHub Actions reusable workflows, Tekton Chains, Sigstore Cosign и аттестаций in-toto. SLSA становится базовым требованием в регулируемых отраслях и федеральных закупках.
Как защититься от SLSA Framework?
Защита от SLSA Framework обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия SLSA Framework?
Распространённые альтернативные названия: SLSA.
● Связанные термины
- appsec№ 1069
Безопасность цепочки поставок ПО
Дисциплина защиты каждого звена производства ПО — исходного кода, зависимостей, сборки, подписи, дистрибуции и деплоя — от вмешательства, вредоносного кода и потери целостности.
- appsec№ 870
Аттестация происхождения (Provenance Attestation)
Подписанное и машиночитаемое заявление о том, как был произведён программный артефакт — источник, сборочная система, параметры и зависимости — чтобы потребители могли доверять его происхождению.
- appsec№ 522
in-toto
Открытый фреймворк, криптографически аттестующий каждый шаг цепочки поставок ПО, чтобы потребители могли проверить, что артефакт был собран и обработан в точности так, как задумал владелец проекта.
- appsec№ 1044
Sigstore
Open-source-проект Linux Foundation, упрощающий подпись, верификацию и защиту артефактов ПО за счёт сочетания короткоживущих ключей, OIDC-идентичностей и журнала прозрачности.
- appsec№ 226
Cosign
Open-source CLI из проекта Sigstore для подписи, верификации и аттестации OCI-артефактов и другого ПО, поддерживающий рабочие процессы как с ключами, так и без них.
- appsec№ 921
Воспроизводимые сборки
Практики сборки, обеспечивающие, что компиляция одного и того же исходного кода с теми же инструкциями даёт побитно идентичный артефакт независимо от времени и места сборки.