Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
cosign — Подписание кода и прозрачность для контейнеров и бинарных файлов | Kitploit
Инструменты/GitHubGitHub/sigstore/cosign
Аутентификация и авторизацияБезопасность контейнеровИнструменты шифрования/дешифрованияБезопасность облачных средDevSecOpsБезопасность Цепочки ПоставокТоп в Безопасность контейнеров №15Топ в DevSecOps №11Топ в Безопасность Цепочки Поставок №6
6.2k785773 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
GitHubsigstore/cosign

cosign

Подписание кода и прозрачность для контейнеров и бинарных файлов

Репозиторий

Cosign logo

cosign

Подписывание OCI-контейнеров (и других артефактов) с помощью Sigstore!

Go Report Card e2e-tests CII Best Practices OpenSSF Scorecard

Cosign стремится сделать подписи невидимой инфраструктурой.

Cosign поддерживает:

  • «Безключевое подписывание» с помощью публичного сертификационного центра Fulcio проекта Sigstore и журнала прозрачности Rekor (по умолчанию)
  • Подписывание с использованием аппаратных средств и KMS
  • Подписывание с помощью сгенерированной cosign зашифрованной пары закрытого/открытого ключей
  • Подписывание, проверку и хранение контейнеров в OCI-реестре.
  • Собственную PKI

Информация

Cosign разрабатывается в рамках проекта sigstore. Мы также используем канал в Slack! Нажмите здесь, чтобы получить ссылку-приглашение.

Установка

Для установки через Homebrew, Arch, Nix, GitHub Action и Kubernetes см. документацию по установке.

Для бинарных файлов Linux, macOS и Windows см. ресурсы релизов на GitHub.

🚨 Если вы загружаете релизы cosign из нашего бакета GCS — пожалуйста, ознакомьтесь с дополнительной информацией в уведомлении об устаревании от 31 июля 2023 г. 🚨

Установка для разработчиков

Если у вас установлен Go 1.22+, вы можете настроить среду разработки:

$ git clone https://github.com/sigstore/cosign
$ cd cosign
$ go install ./cmd/cosign
$ $(go env GOPATH)/bin/cosign

Участие в разработке

Если вы заинтересованы в участии в разработке cosign, пожалуйста, прочитайте документацию по участию.

Будущая разработка Cosign будет сосредоточена на следующем крупном релизе, который будет основан на sigstore-go. Сопровождающие сосредоточатся на разработке функций в sigstore-go. Вклад в sigstore-go, особенно в части собственных ключей и подписывания, приветствуется. Пожалуйста, ознакомьтесь с трекером задач в поисках подходящих первых задач.

Cosign 2.x — это стабильный релиз, который продолжит получать периодические обновления функций и исправления ошибок. PR, небольшие по объёму и масштабу, с наибольшей вероятностью будут быстро рассмотрены.

PR, которые существенно изменяют или нарушают API, не будут приняты. PR, значительные по размеру, но не вносящие критических изменений, могут быть приняты, но будут считаться менее приоритетными, чем PR в sigstore-go.

Dockerfile

Вот как установить и использовать cosign внутри Dockerfile через образ ghcr.io/sigstore/cosign/cosign:

FROM ghcr.io/sigstore/cosign/cosign:v2.4.1 as cosign-bin

# Source: https://github.com/chainguard-images/images/tree/main/images/static
FROM cgr.dev/chainguard/static:latest
COPY --from=cosign-bin /ko-app/cosign /usr/local/bin/cosign
ENTRYPOINT [ "cosign" ]

Быстрый старт

Здесь показано, как:

  • подписать образ контейнера с помощью метода «keyless signing» на основе идентификации по умолчанию (см. документацию для получения дополнительной информации)
  • проверить образ контейнера
  • изучить более широкие сценарии подписи и проверки keyless-блобов в Sigstore Cosign Quickstart

Подписать контейнер и сохранить подпись в реестре

Обратите внимание, что всегда следует подписывать образы на основе их дайджеста (@sha256:...), а не тега (:latest), потому что иначе вы можете подписать не то, что намеревались!

 cosign sign $IMAGE

Generating ephemeral keys...
Retrieving signed certificate...

	Note that there may be personally identifiable information associated with this signed artifact.
	This may include the email address associated with the account with which you authenticate.
	This information will be used for signing this artifact and will be stored in public transparency logs and cannot be removed later.

By typing 'y', you attest that you grant (or have permission to grant) and agree to have this information stored permanently in transparency logs.
Are you sure you would like to continue? [y/N] y
Your browser will now be opened to:
https://oauth2.sigstore.dev/auth/auth?access_type=online&client_id=sigstore&code_challenge=OrXitVKUZm2lEWHVt1oQWR4HZvn0rSlKhLcltglYxCY&code_challenge_method=S256&nonce=2KvOWeTFxYfxyzHtssvlIXmY6Jk&redirect_uri=http%3A%2F%2Flocalhost%3A57102%2Fauth%2Fcallback&response_type=code&scope=openid+email&state=2KvOWfbQJ1caqScgjwibzK2qJmb
Successfully verified SCT...
tlog entry created with index: 12086900
Pushing signature to: $IMAGE

Cosign предложит вам пройти аутентификацию через OIDC, где вы войдёте, используя свой адрес электронной почты. Под капотом cosign запросит сертификат для подписи кода у центра сертификации Fulcio. Субъект сертификата будет соответствовать адресу электронной почты, с которым вы вошли. Затем Cosign сохранит подпись и сертификат в журнале прозрачности Rekor и загрузит подпись в реестр OCI вместе с образом, который вы подписываете.

Проверка контейнера

Чтобы проверить образ, вам нужно передать ожидаемый субъект сертификата и издателя сертификата через флаги --certificate-identity и --certificate-oidc-issuer:

cosign verify $IMAGE --certificate-identity=$IDENTITY --certificate-oidc-issuer=$OIDC_ISSUER

Вы также можете передать регулярное выражение для флагов идентификатора сертификата и издателя: --certificate-identity-regexp и --certificate-oidc-issuer-regexp.

Проверка контейнера по открытому ключу

Эта команда возвращает 0, если для образа найдена хотя бы одна подпись в формате cosign, соответствующая открытому ключу. Подробности использования и предостережения относительно других форматов подписей см. ниже.

Все допустимые полезные нагрузки выводятся в stdout в формате json. Обратите внимание, что эти подписанные полезные нагрузки включают дайджест образа контейнера, что позволяет убедиться, что эти «отсоединённые» подписи относятся к правильному образу.

$ cosign verify --key cosign.pub $IMAGE_URI:1h
The following checks were performed on these signatures:
  - The cosign claims were validated
  - The signatures were verified against the specified public key
{"Critical":{"Identity":{"docker-reference":""},"Image":{"Docker-manifest-digest":"sha256:87ef60f558bad79beea6425a3b28989f01dd417164150ab3baab98dcbf04def8"},"Type":"cosign container image signature"},"Optional":null}

Проверка контейнера в изолированной среде

Примечание: Этот раздел устарел.

Скачать инструмент