
kubescape v4.0.12
Открытая платформа безопасности Kubernetes, сканирующая кластеры, манифесты и образы на предмет неправильных конфигураций, уязвимостей и соответствия стандартам NSA, MITRE и CIS на протяжении всего жизненного цикла разработки.
Kubescape
Комплексная безопасность Kubernetes от разработки до эксплуатации
Kubescape — это открытая платформа безопасности Kubernetes, обеспечивающая всестороннее покрытие безопасности на всём протяжении жизненного цикла разработки и развёртывания. Она предоставляет возможности по усилению защиты, управлению состоянием безопасности и обеспечению безопасности в runtime для надёжной защиты сред Kubernetes.
Kubescape создана компанией ARMO и является инкубируемым проектом Cloud Native Computing Foundation (CNCF).
Пожалуйста, поставьте звезду ⭐ репозиторию, если хотите, чтобы мы продолжали развивать и улучшать Kubescape!
📑 Содержание
- Возможности
- Демонстрация
- Быстрый старт
- Установка
- Команды CLI
- Примеры использования
- Архитектура
- Оператор внутри кластера
- Интеграции
- Сообщество
- Список изменений
- Лицензия
✨ Возможности
| Возможность | Описание |
|---|---|
| 🔍 Сканирование конфигураций | Сканирование кластеров, YAML-файлов и Helm-чартов на соответствие стандартам NSA-CISA, MITRE ATT&CK® и CIS Benchmarks |
| 🐳 Сканирование уязвимостей образов | Обнаружение CVE в контейнерных образах с помощью Grype |
| 🩹 Патчинг образов | Автоматическое исправление уязвимых образов с помощью Copacetic |
| 🔧 Автоисправление | Автоматическое исправление неверных конфигураций в манифестах Kubernetes |
| 🛡️ Контроль допуска | Применение политик безопасности с помощью Validating Admission Policies (VAP) |
| 📊 Безопасность в runtime | Мониторинг runtime на основе eBPF через Inspektor Gadget |
| 🤖 Интеграция с ИИ | MCP-сервер для интеграции с AI-ассистентами |
🎬 Демонстрация
🚀 Быстрый старт
1. Установка Kubescape
curl -s https://raw.githubusercontent.com/kubescape/kubescape/master/install.sh | /bin/bash
💡 См. Установка для других способов (Homebrew, Krew, Windows и др.)
2. Запустите первое сканирование
# Сканирование текущего кластера
kubescape scan
# Сканирование определённого YAML-файла или каталога
kubescape scan /path/to/manifests/
# Сканирование контейнерного образа на уязвимости
kubescape scan image nginx:latest
3. Изучите результаты
Kubescape предоставляет подробный обзор состояния безопасности, включая:
- Статус безопасности плоскости управления
- Риски контроля доступа
- Неверные конфигурации рабочих нагрузок
- Пробелы в сетевых политиках
- Оценки соответствия (MITRE, NSA)
📦 Установка
Установка одной командой (Linux/macOS)
curl -s https://raw.githubusercontent.com/kubescape/kubescape/master/install.sh | /bin/bash
Менеджеры пакетов
| Платформа | Команда |
|---|---|
| Homebrew | brew install kubescape |
| Krew | kubectl krew install kubescape |
| Arch Linux | yay -S kubescape |
| Ubuntu | sudo add-apt-repository ppa:kubescape/kubescape && sudo apt install kubescape |
| NixOS | nix-shell -p kubescape |
| Chocolatey | choco install kubescape |
| Scoop | scoop install kubescape |
Windows (PowerShell)
iwr -useb https://raw.githubusercontent.com/kubescape/kubescape/master/install.ps1 | iex
📖 Полное руководство по установке →
🛠️ Команды CLI
Kubescape предоставляет полнофункциональный CLI со следующими командами:
| Команда | Описание |
|---|---|
kubescape scan | Сканирование кластера, файлов или образов на наличие проблем безопасности |
kubescape scan image | Сканирование контейнерных образов на уязвимости |
kubescape fix | Автоисправление неверных конфигураций в файлах манифестов |
kubescape patch | Патчинг контейнерных образов для устранения уязвимостей |
kubescape list | Список доступных фреймворков и контролей |
kubescape download | Загрузка артефактов для офлайн/air-gapped использования |
kubescape config | Управление кэшированными конфигурациями |
kubescape operator | Взаимодействие с оператором Kubescape внутри кластера |
kubescape vap | Управление Validating Admission Policies |
kubescape mcpserver | Запуск MCP-сервера для интеграции с AI-ассистентами |
kubescape completion | Генерация скриптов автодополнения для оболочки |
kubescape version | Отображение информации о версии |
📖 Примеры использования
Сканирование
Сканирование работающего кластера
# Сканирование по умолчанию (все фреймворки)
kubescape scan
# Сканирование с определённым фреймворком
kubescape scan framework nsa
kubescape scan framework mitre
kubescape scan framework cis-v1.23-t1.0.1
# Сканирование определённого контроля
kubescape scan control C-0005 -v
Сканирование файлов и репозиториев
# Сканирование локальных YAML-файлов
kubescape scan /path/to/manifests/
# Сканирование Helm-чарта
kubescape scan /path/to/helm/chart/
# Сканирование Git-репозитория
kubescape scan https://github.com/kubescape/kubescape
# Сканирование с Kustomize
kubescape scan /path/to/kustomize/directory/
Параметры сканирования
# Включить/исключить пространства имён
kubescape scan --include-namespaces production,staging
kubescape scan --exclude-namespaces kube-system,kube-public
# Использовать альтернативный kubeconfig
kubescape scan --kubeconfig /path/to/kubeconfig
# Установить порог соответствия (код выхода 1, если ниже порога).
# Пороговые значения оценки применяются к подкомандам framework/control и к
# --view resource|control.
kubescape scan framework nsa --compliance-threshold 80
kubescape scan --view resource --compliance-threshold 80
# Установить порог серьёзности
kubescape scan --severity-threshold high
Форматы вывода
# Вывод в JSON
kubescape scan --format json --output results.json
# JUnit XML (для CI/CD)
kubescape scan --format junit --output results.xml
# SARIF (для GitHub Code Scanning)
kubescape scan --format sarif --output results.sarif
# HTML-отчёт
kubescape scan --format html --output report.html
# PDF-отчёт
kubescape scan --format pdf --output report.pdf
Сканирование образов
# Сканирование публичного образа
kubescape scan image nginx:1.21
# Сканирование с подробным выводом
kubescape scan image nginx:1.21 -v
# Сканирование образа из приватного реестра
kubescape scan image myregistry/myimage:tag --username user --password pass
Использование офлайн-базы данных Grype
# Запуск офлайн-сервера Grype-DB (с использованием docker)
docker run --rm -p8080:8080 quay.io/kubescape/grype-offline-db:v6-latest
# Сканирование образа с использованием офлайн-базы данных:
kubescape scan image --grype-db-url http://localhost:8080/databases/ nginx:latest
Автоисправление
Автоматически исправляйте неверные конфигурации в ваших файлах манифестов:
# Сначала просканируйте и сохраните результаты в JSON
kubescape scan /path/to/manifests --format json --output results.json
# Затем примените исправления
kubescape fix results.json
# Пробный запуск (просмотр изменений без применения)
kubescape fix results.json --dry-run
# Применить исправления без запроса подтверждения
kubescape fix results.json --no-confirm
Патчинг образов
Патчинг контейнерных образов для устранения уязвимостей уровня ОС:
# Запустите buildkitd (требуется)
sudo buildkitd &
# Патчинг образа
sudo kubescape patch --image docker.io/library/nginx:1.22
# Указание пользовательского тега для вывода
sudo kubescape patch --image nginx:1.22 --tag nginx:1.22-patched
# Просмотр подробного отчёта об уязвимостях
sudo kubescape patch --image nginx:1.22 -v
📖 Полная документация команды patch →
Список фреймворков и контролей
# Список доступных фреймворков
kubescape list frameworks
# Список всех контролей
kubescape list controls
# Вывод в JSON
kubescape list controls --format json
Поддержка офлайн-режима
Загрузка артефактов для сред с изоляцией (air-gapped):
# Загрузка всех артефактов
kubescape download artifacts --output /path/to/offline/dir
# Загрузка определённого фреймворка
kubescape download framework nsa --output /path/to/nsa.json
# Сканирование с использованием загруженных артефактов
kubescape scan --use-artifacts-from /path/to/offline/dir
Конфигурация
# Просмотр текущей конфигурации
kubescape config view
# Установка идентификатора учётной записи
kubescape config set accountID <your-account-id>
# Удаление кэшированной конфигурации
kubescape config delete
Команды оператора
Взаимодействие с оператором Kubescape внутри кластера:
# Запуск сканирования конфигураций
kubescape operator scan configurations
# Запуск сканирования уязвимостей
kubescape operator scan vulnerabilities
Validating Admission Policies
Управление Validating Admission Policies в Kubernetes:
# Развёртывание библиотеки политик CEL Kubescape
kubescape vap deploy-library | kubectl apply -f -
# Создание привязки политики
kubescape vap create-policy-binding \
--name my-policy-binding \
--policy c-0016 \
--namespace my-namespace | kubectl apply -f -
MCP-сервер
Запуск MCP-сервера (Model Context Protocol) для интеграции с AI-ассистентами:
kubescape mcpserver
MCP-сервер предоставляет данные сканирования уязвимостей и конфигураций Kubescape AI-ассистентам, позволяя задавать вопросы на естественном языке о состоянии безопасности вашего кластера.
Доступные инструменты MCP:
list_vulnerability_manifests— Обнаружение манифестов уязвимостейlist_vulnerabilities_in_manifest— Список CVE в манифестеlist_vulnerability_matches_for_cve— Получение деталей для конкретного CVElist_configuration_security_scan_manifests— Список результатов сканирования конфигурацийget_configuration_security_scan_manifest— Получение деталей сканирования конфигураций
🏗️ Архитектура
Kubescape может работать в двух режимах:
Режим CLI
CLI — это автономный инструмент для сканирования кластеров, файлов и образов по запросу.
Ключевые компоненты:
- Open Policy Agent (OPA) — Движок оценки политик
- Regolibrary — Библиотека контролей безопасности
- Grype — Сканирование уязвимостей образов
- Copacetic — Патчинг образов
Режим оператора (внутри кластера)
Для непрерывного мониторинга разверните оператор Kubescape с помощью Helm.
Дополнительные возможности:
- Непрерывное сканирование конфигураций
- Сканирование уязвимостей образов
- Анализ runtime с помощью eBPF
- Генерация сетевых политик
📖 Полная документация по архитектуре →
☸️ Оператор внутри кластера
Оператор Kubescape обеспечивает непрерывный мониторинг безопасности в вашем кластере:
# Добавление Helm-репозитория Kubescape
helm repo add kubescape https://kubescape.github.io/helm-charts/
# Установка оператора
helm upgrade --install kubescape kubescape/kubescape-operator \
--namespace kubescape \
--create-namespace
Возможности оператора:
- 🔄 Непрерывное сканирование конфигураций
- 🐳 Сканирование уязвимостей образов для всех рабочих нагрузок
- 🔍 Обнаружение угроз в runtime (на основе eBPF)
- 🌐 Генерация сетевых политик
- 📈 Интеграция с метриками Prometheus
📖 Руководство по установке оператора →
🔌 Интеграции
CI/CD
| Платформа | Интеграция |
|---|---|
| GitHub Actions | kubescape/github-action |
| GitLab CI | Документация |
| Jenkins | Документация |
Расширения для IDE
| IDE | Расширение |
|---|---|
| VS Code | Расширение Kubescape |
| Lens | Расширение Kubescape для Lens |
Где можно использовать Kubescape
👥 Сообщество
Kubescape — это инкубируемый проект CNCF с активным сообществом.
Как участвовать
- 💬 Slack — Канал пользователей — Задавайте вопросы, получайте помощь
- 💬 Slack — Канал разработчиков — Участвуйте в разработке
- 🐛 GitHub Issues — Сообщайте об ошибках и запрашивайте функции
- 📋 Доска проекта — Смотрите, над чем мы работаем
- 🗺️ План развития — Планы на будущее
Внесение вклада
Мы приветствуем вклад! Пожалуйста, ознакомьтесь с нашими:
Ресурсы сообщества
Участники
Список изменений
Изменения Kubescape отслеживаются на странице релизов.
Лицензия
Copyright 2021-2025, Авторы Kubescape. Все права защищены.
Kubescape распространяется под лицензией Apache 2.0.
Kubescape является инкубируемым проектом Cloud Native Computing Foundation (CNCF) и был предоставлен компанией ARMO.