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

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

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

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

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

Категории

Все категории
Loading categories
chain-bench — Аудит соответствия безопасности цепочки поставок программного обеспечения эталону CIS, сканирование настроек SCM, защиты веток, зависимостей и конвейеров CI/CD на предмет рисков. | Kitploit
Инструменты/GitHubGitHub/aquasecurity/chain-bench
Сканеры уязвимостейАудит конфигурацииDevSecOpsБезопасность Цепочки Поставок
GitHubaquasecurity/chain-bench

chain-bench

Аудит соответствия безопасности цепочки поставок программного обеспечения эталону CIS, сканирование настроек SCM, защиты веток, зависимостей и конвейеров CI/CD на предмет рисков.

Репозиторий
77463512 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

chain-bench logo

📖 Документация

Chain-bench — это инструмент с открытым исходным кодом для аудита вашего стека цепочки поставок программного обеспечения на соответствие требованиям безопасности на основе нового эталона безопасности цепочек поставок ПО CIS. Аудит охватывает весь процесс SDLC, выявляя риски на этапах от написания кода до развертывания. Чтобы опережать хакеров и защищать конфиденциальные данные и доверие клиентов, необходимо гарантировать, что ваш код соответствует политикам организации.

Подробнее в документации Chain-bench

Go Reference GitHub Release Downloads DockerHub Pulls

Build Status
License
go-report-card
демонстрация

Содержание

  • Содержание
  • Введение
  • Быстрый старт
    • Установка
    • Использование
      • Использование Docker
      • Использование GitHub Actions
      • Использование GitLab CI (бета)
  • Требования
  • Поддерживаемые провайдеры
  • Важное замечание
  • Участие в разработке
  • Дорожная карта

Введение

Chain-bench — это инструмент с открытым исходным кодом для аудита вашего стека цепочки поставок программного обеспечения на соответствие требованиям безопасности на основе нового эталона безопасности цепочек поставок ПО CIS. Аудит охватывает весь процесс SDLC, выявляя риски на этапах от написания кода до развертывания.

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

Основной способ запуска chain-bench — как отдельный CLI. Для доступа к вашей СКВ требуется токен доступа для вашей учётной записи и URL репозитория.

Установка

Установите Chain-bench любым удобным способом. См. раздел [установка] в документации для подробностей. Например:

  • brew install chain-bench
  • nix-env --install -A nixpkgs.chain-bench
  • docker run aquasec/chain-bench
  • Скачать бинарник с https://github.com/aquasecurity/chain-bench/releases/latest/

Использование

root@kitploit:~
chain-bench scan --repository-url <REPOSITORY_URL> --access-token <TOKEN> -o <OUTPUT_PATH>

Использование самостоятельных или выделенных SCM-платформ (с пользовательскими доменами)

root@kitploit:~
chain-bench scan --repository-url <REPOSITORY_URL> --scm-platform <SCM_PLATFORM> --access-token <TOKEN> -o <OUTPUT_PATH>

Поддерживаемые значения для scm-platform: "github" и "gitlab" (бета)

Использование Docker

root@kitploit:~
docker run aquasec/chain-bench scan --repository-url <REPOSITORY_URL> --access-token <TOKEN>

Использование GitHub Actions

Смотрите репозиторий по адресу https://github.com/aquasecurity/chain-bench-action

Пример вывода
root@kitploit:~
2022-06-13 15:22:18 INF 🚩	Начало получения данных
2022-06-13 15:22:19 INF 🏢	Получение настроек организации завершено
2022-06-13 15:22:29 INF 🛢️	Получение настроек репозитория завершено
2022-06-13 15:22:29 INF 🌱	Получение настроек защиты веток завершено
2022-06-13 15:22:29 INF 👫	Получение участников завершено
2022-06-13 15:22:31 INF 🔧	Получение пайплайнов завершено
2022-06-13 15:22:31 INF 🏁	Получение данных выполнено успешно
   ID                                                 Name                                                Result                  Reason
-------- ----------------------------------------------------------------------------------------------- -------- ---------------------------------------
 1.1.3    Ensure any change to code receives approval of two strongly authenticated users                 Passed
 1.1.4    Ensure previous approvals are dismissed when updates are introduced to a code change proposal   Failed
 1.1.5    Ensure that there are restrictions on who can dismiss code change reviews                       Failed
 1.1.6    Ensure code owners are set for extra sensitive code or configuration                            Failed
 1.1.8    Ensure inactive branches are reviewed and removed periodically                                  Failed   20 inactive branches
 1.1.9    Ensure all checks have passed before the merge of new code                                      Passed
 1.1.10   Ensure open git branches are up to date before they can be merged into codebase                 Passed
 1.1.11   Ensure all open comments are resolved before allowing to merge code changes                     Passed
 1.1.12   Ensure verifying signed commits of new changes before merging                                   Failed
 1.1.13   Ensure linear history is required                                                               Passed
 1.1.14   Ensure branch protection rules are enforced on administrators                                   Failed
 1.1.15   Ensure pushing of new code is restricted to specific individuals or teams                       Passed
 1.1.16   Ensure force pushes code to branches is denied                                                  Failed
 1.1.17   Ensure branch deletions are denied                                                              Failed
 1.2.1    Ensure all public repositories contain a SECURITY.md file                                       Failed
 1.2.2    Ensure repository creation is limited to specific members                                       Failed
 1.2.3    Ensure repository deletion is limited to specific members                                       Passed
 1.2.4    Ensure issue deletion is limited to specific members                                            Passed
 1.3.1    Ensure inactive users are reviewed and removed periodically                                     Failed   22 inactive users
 1.3.3    Ensure minimum admins are set for the organization                                              Passed
 1.3.5    Ensure the organization is requiring members to use MFA                                         Passed
 1.3.7    Ensure 2 admins are set for each repository                                                     Failed
 1.3.8    Ensure strict base permissions are set for repositories                                         Passed
 1.3.9    Ensure an organization's identity is confirmed with a Verified badge                            Failed
 2.3.1    Ensure all build steps are defined as code                                                      Failed   No build job was found in pipelines
 2.3.5    Ensure access to the build process's triggering is minimized                                    Passed
 2.3.7    Ensure pipelines are automatically scanned for vulnerabilities                                  Passed
 2.3.8    Ensure scanners are in place to identify and prevent sensitive data in pipeline files           Failed   Repository is not scanned for secrets
 2.4.2    Ensure all external dependencies used in the build process are locked                           Failed   16 task(s) are not pinned
 2.4.6    Ensure pipeline steps produce an SBOM                                                           Passed
 3.1.7    Ensure dependencies are pinned to a specific, verified version                                  Failed   16 dependencies are not pinned
 3.2.2    Ensure packages are automatically scanned for known vulnerabilities                             Passed
 3.2.3    Ensure packages are automatically scanned for license implications                              Passed
 4.2.3    Ensure user's access to the package registry utilizes MFA                                       Passed
 4.2.5    Ensure anonymous access to artifacts is revoked                                                 Passed
 4.3.4    Ensure webhooks of the package registry are secured                                             Passed
-------- ----------------------------------------------------------------------------------------------- -------- ---------------------------------------
 Total Passed Rules: 19 out of 36
2022-06-13 15:22:31 INF Scan completed: 13.108s

Использование GitLab CI (бета)

Вы можете интегрировать результаты chain-bench в отчёт об уязвимостях GitLab, добавив новый шаг в вашем CI-определении:

root@kitploit:~
chain-bench-scanning:
  stage: test
  image:
    name: docker.io/aquasec/chain-bench
    entrypoint: [""]
  script:
    - chain-bench scan --repository-url $CI_PROJECT_URL --access-token $CHAIN_BENCH_TOKEN --scm-platform gitlab -o results.json --template @/templates/gitlab_security_scanner.tpl
  artifacts:
    reports:
      container_scanning: results.json
  • Необходимо создать новый токен с ролью Maintainer, обладающий разрешениями read_api и read_repository, и использовать его как переменную окружения (например, $CHAIN_BENCH_TOKEN)

Требования

Необходимо предоставить токен доступа с разрешениями на следующие области: repo (все), read:repo_hook, admin:org_hook, read:org

Поддерживаемые провайдеры

В настоящее время мы поддерживаем СКВ Github и Gitlab с аутентификацией по PAT.

Важное замечание

Chain-bench максимально точно реализует эталон безопасности цепочек поставок ПО CIS. Актуальные реализованные проверки можно найти на странице AVD - Software Supply Chain CIS - 1.0, которая обновляется каждую ночь на основе metadata.json файлов chain-bench. Пожалуйста, создавайте issue здесь, если chain-bench неправильно реализует тест, описанный в эталоне. Для сообщения о проблемах в самом эталоне (например, если вы считаете некоторые тесты некорректными), присоединяйтесь к сообществу CIS.

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

Пожалуйста, прочитайте Contributing перед тем, как вносить вклад. Мы приветствуем PR и сообщения о проблемах.

Дорожная карта

В будущем мы планируем выпускать обновления chain-bench для увеличения покрытия эталона новыми проверками и поддержки большего количества платформ. Chain-bench — это проект с открытым исходным кодом Aqua Security, входящий в семейство Trivy.

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