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

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

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

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

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

Категории

Все категории
Loading categories
kubesec — Анализ рисков безопасности для ресурсов Kubernetes | Kitploit
Инструменты/GitHubGitHub/controlplaneio/kubesec
Безопасность облачной инфраструктурыОборонительные ИнструментыСтатический анализБезопасность контейнеровСтатический анализ кода (SAST)Аудит конфигурацииБезопасность облачных средDevSecOpsНеправильная КонфигурацияПобег из КонтейнераТоп в Аудит конфигурации №13
1.5k109363 месяцев назадПроверено Kitploit
Топ в Побег из Контейнера №15
Топ в Безопасность контейнеров №9
Топ в Неправильная Конфигурация №13
Топ в Статический анализ кода (SAST) №18
GitHubcontrolplaneio/kubesec

kubesec

Анализ рисков безопасности для ресурсов Kubernetes

РепозиторийСайт

Популярное

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

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

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

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

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

Kubesec

[![Testing Workflow][testing_workflow_badge]][testing_workflow_badge] [![Security Analysis Workflow][security_workflow_badge]][security_workflow_badge] [![Release Workflow][release_workflow_badge]][release_workflow_badge]

[![Go Report Card][goreportcard_badge]][goreportcard] [![PkgGoDev][go_dev_badge]][go_dev]

🚨 API v1 устарел, пожалуйста, ознакомьтесь с примечаниями к выпуску 🚨

Анализ рисков безопасности для ресурсов Kubernetes

🎬 Демо

Демо Kubesec CLI

Дополнительные примеры см. на Kubesec.io, который использует размещённый API ControlPlane по адресу v2.kubesec.io/scan.


  • Быстрый старт
  • Скачать Kubesec
  • Примеры использования
    • Сканирование
      • Использование Docker
      • Форматы вывода
    • Вывод правил
    • Пользовательские схемы
  • Режим HTTP-сервера
  • Kubesec как сервис
  • Участие в разработке
  • Получение помощи
  • Журнал изменений

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

1. Подготовьте манифест

Создайте файл ресурса Kubernetes (например, kubesec-test.yaml) для сканирования. Для быстрой проверки сохраните следующий манифест Pod:

$ cat <<EOF > kubesec-test.yaml
apiVersion: v1
kind: Pod
metadata:
  name: kubesec-demo
spec:
  containers:
  - name: kubesec-demo
    image: gcr.io/google-samples/node-hello:1.0
    securityContext:
      readOnlyRootFilesystem: true
EOF

2. Запустите первое сканирование

Выполните сканирование вашего файла манифеста:

# Using the local binary
kubesec scan kubesec-test.yaml

# Or using Docker
docker run -i kubesec/kubesec:v2 scan /dev/stdin < kubesec-test.yaml

# Using the local binary with a human-readable table output format
kubesec scan kubesec-test.yaml --format table

[!TIP] Чтобы просмотреть результаты в виде удобочитаемой таблицы вместо формата JSON по умолчанию, используйте флаг --format table

kubesec выведет оценку безопасности и подробный анализ вашего ресурса.

📦 Скачать Kubesec

Kubesec доступен в виде:

  • Docker-образа по адресу docker.io/kubesec/kubesec:v2
  • бинарного файла для Linux/MacOS/Win (получите последний релиз)
  • контроллера допуска Kubernetes
  • плагина Kubectl

Или установите последний коммит из GitHub с помощью:

Go 1.16+

$ go install github.com/controlplaneio/kubesec/v2@latest

Версия Go < 1.16

$ GO111MODULE="on" go get github.com/controlplaneio/kubesec/v2

📖 Примеры использования

Сканирование

Сканируйте ресурсы Kubernetes из локальных файлов или стандартного ввода.

Kubesec может сканировать несколько YAML-документов в одном входном файле или сканировать документы из нескольких файлов одновременно, если они правильно отформатированы как несколько документов, разделённых ---.

# Scan a specific local YAML file
kubesec scan ./deployment.yaml

# Scan from standard input (JSON or YAML)
cat file.json | kubesec scan -

# Scan a rendered Helm chart
helm template -f values.yaml ./chart | kubesec scan /dev/stdin

# Scan multiple YAML documents separated by '---'
{ cat test/asset/multi.yml; echo "---"; cat test/asset/critical.yml; } | kubesec scan -

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

Вы можете выполнять те же команды сканирования с помощью официального Docker-образа:

# Scan a file via Docker using standard input
docker run -i kubesec/kubesec:v2 scan /dev/stdin < kubesec-test.yaml

Форматы вывода

Kubesec поддерживает три различных формата вывода, задаваемых флагом --format / -f: json (по умолчанию), table и template, а также может сканировать несколько YAML-документов в одном входном файле.

# JSON array output (default behaviour)
kubesec scan ./deployment.yaml --format json

# Human-readable table output
kubesec scan ./deployment.yaml --format table

# Use a custom template for the output
kubesec scan ./deployment.yaml --format template --template report-template.tmpl

Сканирование по определённым правилам

# One rule
kubesec scan --rules CapSysAdmin kubesec-test.yaml

# Multiple rules
kubesec scan --rules RunAsNonRoot,SeccompAny,ApparmorAny kubesec-test.yaml
Пример вывода JSON
[
  {
    "object": "Pod/security-context-demo.default",
    "valid": true,
    "message": "Failed with a score of -30 points",
    "score": -30,
    "scoring": {
      "critical": [
        {
          "selector": "containers[] .securityContext .capabilities .add == SYS_ADMIN",
          "reason": "CAP_SYS_ADMIN is the most privileged capability and should always be avoided",
          "points": -30
        }
      ],
      "advise": [
        {
          "selector": "containers[] .securityContext .runAsNonRoot == true",
          "reason": "Force the running image to run as a non-root user to ensure least privilege",
          "points": 1
        },
        {
          // ...
        }
      ]
    }
  }
]
Пример табличного вывода

Табличный вывод

Вывод правил

# Print all scanning rules with their associated point scores
kubesec print-rules

# Print all scanning rules with their associated point scores as a table
kubesec print-rules --format table

Пример вывода правил в JSON

[
  {
    "id": "AllowPrivilegeEscalation",
    "selector": "containers[] .securityContext .allowPrivilegeEscalation == true",
    "reason": "Ensure a non-root process can not gain more privileges",
    "kinds": [
      "Pod",
      "Deployment",
      "StatefulSet",
      "DaemonSet"
    ],
    "points": -7,
    "advise": 0
  },
...
]

Пользовательские схемы

Kubesec использует kubeconform (спасибо @yannh) для проверки сканируемых манифестов. Это означает, что указание других расположений схем подчиняется правилам, описанным в README kubeconform.

# Usees the latest schema from upstream
# Schema will be fetched from: https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master-standalone-strict/pod-v1.json
kubesec scan ./pod.yaml

# Use a specific schema version from upstream (format x.y.z with no v prefix)
# Schema will be fetched from: https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/v1.25.3-standalone-strict/pod-v1.json
kubesec scan ./pod.yaml --kubernetes-version 1.25.3
Скачать инструмент