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

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

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

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

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

Категории

Все категории
Loading categories
Snyk Scan — Автоматизированное сканирование уязвимостей Snyk для зависимостей и Docker-образов в Bitbucket Pipelines, с порогами серьезности и опциями мониторинга. | Kitploit
Инструменты/BitbucketBitbucket/snyk/snyk-scan
Сканеры уязвимостейБезопасность контейнеровDevSecOpsБезопасность Цепочки Поставок
Bitbucketsnyk/snyk-scan

Snyk Scan

Автоматизированное сканирование уязвимостей Snyk для зависимостей и Docker-образов в Bitbucket Pipelines, с порогами серьезности и опциями мониторинга.

Репозиторий
2 месяцев назадЕщё не проверено

Популярное

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

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

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

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

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

Pipe Bitbucket Pipelines: Snyk

Этот pipe использует Snyk для поиска, исправления и мониторинга известных уязвимостей в зависимостях вашего приложения и Docker-образе.

YAML-определение

Добавьте следующий фрагмент в секцию script вашего файла bitbucket-pipelines.yml:

root@kitploit:~
- pipe: snyk/snyk-scan:1.0.2
  variables:
    SNYK_TOKEN: "<string>"
    # LANGUAGE: "<string>" # Обязательно, если не задан SNYK_TEST_JSON_INPUT
    # IMAGE_NAME: "<string>" # Требуется только если LANGUAGE установлен в "docker"
    # SNYK_BASE_IMAGE: "<string>" # Пользовательский базовый образ
    # CODE_INSIGHTS_RESULTS: "<boolean>" # Необязательно.
    # SNYK_TEST_JSON_INPUT: "<string>" # Необязательно. Имя файла или путь к JSON-файлу, содержащему вывод теста Snyk CLI (с опцией json вывода).
    # PROTECT: "<boolean>" # Необязательно.
    # DONT_BREAK_BUILD: "<boolean>" # Необязательно.
    # MONITOR: "<boolean>" # Необязательно.
    # SEVERITY_THRESHOLD: "<low|medium|high|critical>" # Необязательно.
    # ORGANIZATION: "<string>" # Необязательно.
    # PROJECT_FOLDER: "<string>" # Необязательно.
    # TARGET_FILE: "<string>" # Необязательно.
    # EXTRA_ARGS: "<string>" # Необязательно.
    # DEBUG: "<boolean>" # Необязательно.
    # SNYK_API: "<string"> # Необязательно.

Переменные

(*) = обязательная переменная.

Подробности

Интегрируя Snyk в Bitbucket Pipelines, вы можете непрерывно тестировать, исправлять и мониторить вашу кодовую базу на наличие известных уязвимостей в зависимостях и Docker-образе.

Чтобы узнать больше о Snyk, посетите наш сайт.

Для языков / менеджеров пакетов с более сложными средами, таких как Java с Maven или Gradle, следует напрямую использовать CLI Snyk в вашем конвейере. См. пример «Прямое использование CLI Snyk». Если вы также хотите создать отчет Code Insights, вы можете передать вывод теста CLI Snyk в этот Pipe — см. пример «Создание отчета Code Insights из существующего вывода JSON Snyk».

Предварительные требования

Токен API Snyk необходим для использования этого pipe.

  • Если у вас еще нет учетной записи на snyk.io, зарегистрируйтесь здесь.
  • Чтобы получить токен, войдите в свою учетную запись Snyk и получите токен API на странице аккаунта.
  • Добавьте сгенерированный токен как защищенную переменную окружения в Bitbucket Pipelines.

Примеры

Пример базового сканирования зависимостей приложения

Использует Snyk для сканирования приложения Node.js и останавливает сборку, если найдены уязвимости.

root@kitploit:~
script:
  - npm install

  - npm test

  - pipe: snyk/snyk-scan:1.0.2
    variables:
      SNYK_TOKEN: $SNYK_TOKEN
      LANGUAGE: "node"

  - npm publish

Использование собственного базового образа

Использует пользовательский Docker-образ для выполнения сканирования Snyk. Полезно, если вы не хотите использовать образы Snyk по умолчанию. Образ будет иметь формат <MY_CUSTOM_IMAGE>:<TAG>, где MY_CUSTOM_IMAGE и TAG соответствуют переменным SNYK_BASE_IMAGE и LANGUAGE соответственно.

root@kitploit:~
script:
  - docker build -t $IMAGE_NAME .

  - pipe: snyk/snyk-scan:1.0.2
    variables:
      SNYK_TOKEN: $SNYK_TOKEN
      LANGUAGE: "latest"
      SNYK_BASE_IMAGE: $BASE_IMAGE_NAME
      TARGET_FILE: "Dockerfile"

  - docker push $IMAGE_NAME

### Пример базового сканирования Docker-образа
Использует Snyk для сканирования Docker-образа и останавливает сборку, если найдены уязвимости.

```yaml
script:
  - docker build -t $IMAGE_NAME .

  - pipe: snyk/snyk-scan:1.0.2
    variables:
      SNYK_TOKEN: $SNYK_TOKEN
      LANGUAGE: "docker"
      IMAGE_NAME: $IMAGE_NAME
      TARGET_FILE: "Dockerfile"

  - docker push $IMAGE_NAME

Прямое использование CLI Snyk

Это особенно актуально для языков с более сложными средами сборки, например Java с Maven или Gradle. В таких сценариях вы можете протестировать приложение с помощью CLI Snyk, используя некоторую вариацию snyk test. Проще всего установить CLI Snyk через npm (npm install -g snyk), но если npm недоступен в вашей среде сборки, вы можете загрузить бинарный файл с помощью curl с https://github.com/snyk/snyk/releases.

root@kitploit:~
script:
  - mvn install
  - npm install -g snyk # также доступна загрузка бинарника
  - snyk test --all-projects

  # остальная часть вашего конвейера...

Создание отчета Code Insights из существующего вывода JSON Snyk

Это особенно актуально для языков с более сложными средами сборки, например Java с Maven или Gradle. В таких сценариях вы можете протестировать приложение с помощью CLI Snyk, используя snyk test --json > snyk-test-output.json, а затем передать выходной файл в Pipe для создания отчета Code Insights. Проще всего установить CLI Snyk через npm (npm install -g snyk), но если npm недоступен в вашей среде сборки, вы можете загрузить бинарный файл с помощью curl с https://github.com/snyk/snyk/releases.

root@kitploit:~
script:
  - mvn install
  - npm install -g snyk # также доступна загрузка бинарника
  - snyk test --all-projects --json > snyk-test-output.json

  - pipe: snyk/snyk-scan:1.0.2
    variables:
      SNYK_TOKEN: $SNYK_TOKEN
      SNYK_TEST_JSON_INPUT: "snyk-test-output.json"

  # остальная часть вашего конвейера...

Продвинутый пример

Примените исправления Snyk к приложению Node.js и продолжайте сканировать зависимости только на критический уровень серьезности, но не останавливайте сборку, если они найдены. Также включите мониторинг состояний зависимостей на Snyk.io, чтобы получать оповещения о новых уязвимостях. Затем создайте Docker-образ и сканируйте его на предмет уязвимостей критического уровня.

root@kitploit:~
script:
  - npm install

  - npm test

  - pipe: snyk/snyk-scan:1.0.2
    variables:
      SNYK_TOKEN: $SNYK_TOKEN
      LANGUAGE: "node"
      PROTECT: "true"
      SEVERITY_THRESHOLD: "critical"
      DONT_BREAK_BUILD: "true"
      MONITOR: "true"

  - docker build -t $IMAGE_NAME .

  - pipe: snyk/snyk-scan:1.0.2
    variables:
      SNYK_TOKEN: $SNYK_TOKEN
      LANGUAGE: "docker"
      IMAGE_NAME: $IMAGE_NAME
      TARGET_FILE: "Dockerfile"
      SEVERITY_THRESHOLD: "high"
      DONT_BREAK_BUILD: "true"
      MONITOR: "true"

  - docker push $IMAGE_NAME

Сканирование с использованием пользовательской конечной точки API

Для клиентов, использующих нестандартные экземпляры Snyk, требуется использовать SNYK_API для указания URL. Это относится к клиентам MT-EU, MT-AU и отдельным арендаторам.

root@kitploit:~
script:
  - npm install

  - npm test

  - pipe: snyk/snyk-scan:1.0.2
    variables:
      SNYK_TOKEN: $SNYK_TOKEN
      SNYK_API: https://api.eu.snyk.io
      LANGUAGE: "node"

  - npm publish

Вклад в проект

Чтобы обеспечить долгосрочную стабильность и качество этого проекта, мы переходим к модели закрытого внесения вклада, начиная с августа 2025 года. Это изменение позволяет нашей основной команде сосредоточиться на централизованной дорожной карте разработки и строгом контроле качества, что необходимо для компонента с таким широким использованием.

Все наши разработки останутся публичными для прозрачности. Мы благодарим сообщество за поддержку и ценный вклад.

Получение поддержки

Вопросы на GitHub отключены в этом репозитории в рамках нашего перехода к модели закрытого внесения вклада. Команда поддержки Snyk не отслеживает активно вопросы на GitHub ни в одном проекте разработки Snyk.

Для получения помощи по продуктам Snyk используйте страницу поддержки Snyk — это самый быстрый способ получить помощь.

Лицензия

Copyright (c) 2019 Snyk Ltd. и другие. Лицензия Apache 2.0, см. файл LICENSE.txt.

Скачать инструмент
ПеременнаяИспользование
SNYK_TOKEN (*)Токен API Snyk.
LANGUAGE (*)Язык разработки (например, node, ruby, composer, dotnet или docker). Полный список возможных тегов см. на Dockerhub.
ПРИМЕЧАНИЕ: При использовании с SNYK_BASE_IMAGE это поле относится к тегу вашего базового образа
IMAGE_NAME (*)Для языка docker — образ для сканирования Docker.
SNYK_BASE_IMAGEУкажите свой базовый образ, если не хотите использовать образы Snyk. По умолчанию: snyk/snyk.
ПРИМЕЧАНИЕ: LANGUAGE будет относиться к тегу вашего базового образа; убедитесь, что тег действителен
CODE_INSIGHTS_RESULTSСоздать отчет Code Insight с результатами теста Snyk. По умолчанию: false.
SNYK_TEST_JSON_INPUTИспользуйте, если хотите создать отчет Code Insights из ранее сгенерированного вывода snyk test --json. Пример см. ниже в разделе «Создание отчета Code Insights из существующего вывода JSON Snyk».
PROTECTПрименяет исправления, указанные в вашем .snyk файле, к локальной файловой системе (после запуска Snyk Wizard). По умолчанию: false.
DONT_BREAK_BUILDПродолжить сборку, несмотря на найденные проблемы. По умолчанию: false.
MONITORЗаписать снимок проекта в интерфейс Snyk и продолжать мониторинг после первоначального теста. По умолчанию: false.
SEVERITY_THRESHOLDОтчеты по проблемам с уровнем равным или выше указанного. Допустимые значения: low, med, high, critical. По умолчанию: low.
ORGANIZATIONОрганизация, для которой запускать CLI. По умолчанию: нет.
PROJECT_FOLDERПапка, в которой находится проект. По умолчанию: ..
TARGET_FILEФайл пакета (например, package.json); соответствует --file= в CLI. Для Docker должен указывать на Dockerfile. По умолчанию: нет.
EXTRA_ARGSДополнительные аргументы, передаваемые в CLI snyk. По умолчанию: нет.
DEBUGВключить дополнительную отладочную информацию. По умолчанию: false.
SNYK_APIУказывает конечную точку API Snyk. По умолчанию: https://api.snyk.io (стандартная среда Snyk MT-US)