Что такое Checkmarx?
Checkmarx — это платформа корпоративного уровня для тестирования безопасности приложений (AST), предназначенная для помощи организациям в обеспечении безопасности их программного обеспечения путем выявления и устранения уязвимостей на протяжении всего жизненного цикла разработки программного обеспечения (SDLC). Она предоставляет единое решение, которое объединяет статическое тестирование безопасности приложений (SAST), анализ состава программного обеспечения (SCA) и интерактивное тестирование безопасности приложений (IAST), позволяя разработчикам создавать более безопасный код с самого начала и предоставляя командам безопасности полную видимость рисков приложений.
Ключевые особенности
- Статическое тестирование безопасности приложений (SAST): Сканирует исходный код для выявления уязвимостей безопасности, таких как SQL-инъекции, межсайтовый скриптинг (XSS) и небезопасные конфигурации, без необходимости запуска приложения.
- Анализ состава программного обеспечения (SCA): Идентифицирует компоненты с открытым исходным кодом и сторонние библиотеки в вашей кодовой базе, отмечая известные уязвимости и проблемы с соблюдением лицензий.
- Интерактивное тестирование безопасности приложений (IAST): Анализирует приложения в режиме реального времени во время выполнения тестов для обнаружения уязвимостей, которые можно выявить только при динамическом взаимодействии.
- Безопасность инфраструктуры как кода (IaC): Сканирует шаблоны IaC (такие как Terraform, Kubernetes и CloudFormation) на предмет неправильных конфигураций, которые могут привести к пробелам в безопасности в облачных средах.
- Бесшовная интеграция с CI/CD: Интегрируется непосредственно в рабочие процессы разработчиков и конвейеры CI/CD (например, Jenkins, GitLab, Azure DevOps), обеспечивая быструю обратную связь и автоматическое сканирование.
- Лучшее место для исправления (Best Fix Location): Интеллектуально определяет оптимальное место в коде для исправления нескольких уязвимостей одним изменением, что значительно экономит время разработчиков.
Сценарии использования
- Внедрение DevSecOps: Интеграция автоматических проверок безопасности непосредственно в конвейер CI/CD для раннего и частого выявления уязвимостей.
- Соответствие требованиям и аудит: Создание отчетов для демонстрации соответствия отраслевым стандартам, таким как PCI DSS, HIPAA и GDPR.
- Управление рисками открытого исходного кода: Получение видимости зависимостей с открытым исходным кодом для управления уязвимостями и обеспечения соблюдения лицензий.
- Защита облачных нативных приложений: Анализ микросервисов, контейнеров и шаблонов IaC для защиты современных облачных архитектур.
- Сортировка и устранение уязвимостей: Предоставление командам безопасности и разработчикам централизованной платформы для эффективной приоритизации и исправления недостатков безопасности.
Начало работы
Checkmarx — это коммерческая платформа, требующая установки и настройки. Пример “Hello World” включает интеграцию в конвейер CI. Ниже приведен концептуальный пример того, как может выглядеть шаг сканирования Checkmarx в файле gitlab-ci.yml.
```yaml
.gitlab-ci.yml
stages:
- build
- test
build_job: stage: build script: - echo “Сборка приложения…” # Шаги сборки здесь
checkmarx_sast_scan:
stage: test
script:
- echo “Запуск сканирования SAST Checkmarx…”
- |
/opt/cx/runCxScan.sh
–projectname=”${CI_PROJECT_NAME}”
–cxserver=”${CX_SERVER_URL}”
–cxuser=”${CX_USER}”
–cxpassword=”${CX_PASSWORD}”
–locationtype=git
–giturl=”${CI_REPOSITORY_URL}”
–branch=”${CI_COMMIT_REF_NAME}”
–preset=”Checkmarx Default”
–comment=”Сканирование CI GitLab”
–asynchronous
rules:
- if: ‘$CI_COMMIT_BRANCH == “main”’
Примечание: Это репрезентативный пример. Фактический скрипт и параметры будут отличаться в зависимости от вашей конкретной настройки Checkmarx и среды CI/CD. Первым шагом обычно является обращение в Checkmarx для получения демонстрации и пробной лицензии.
Цены
Checkmarx работает по платной (на основе подписки) модели ценообразования. Стоимость обычно зависит от таких факторов, как количество разработчиков, количество сканируемых приложений и требуемые продукты (SAST, SCA, IAST и т. д.). Они предлагают индивидуальные предложения для предприятий и не публикуют фиксированный прайс-лист.