ИИ-инструменты и скрипты
Проверка безопасности Helm-чартов
Проверьте Helm-чарты перед публикацией или установкой: пароли в values и шаблонах, привилегированные поды, монтирование хоста, образы :latest, контейнеры с root, отсутствие лимитов памяти, зависимости без фиксированной версии или по http, открытые LoadBalancer и ingress.
Что вы получите: 1 файл · 39.01 KB · ZIP
Варианты покупкиОписание товара
Чарт с adminPassword: changeme123 в values.yaml или {{ .Values.auth.password | default "admin" }} в шаблоне Secret передаёт этот пароль каждой установке, где он не переопределён, и всем, кто может скачать чарт. А {{ randAlphaNum 32 }} в Secret без lookup незаметно меняет пароль базы данных при каждом helm upgrade. Этот навык находит эти и ещё десять типичных ошибок в Helm-чартах до публикации или установки и объясняет, как исправить каждую.
Ваш агент запускает сканер для вашего чарта: Chart.yaml, requirements.yaml, values.yaml и других файлов values, а также файлов .yaml, .yml и .tpl в templates/ (включая подчарты в charts/). Chart.yaml и файлы values читаются как YAML. Шаблоны содержат код шаблонов Go, который не является корректным YAML, поэтому они читаются построчно с пропуском комментариев {{/* */}} и # и различением значений, записанных непосредственно в файле, и ссылок {{ ... }}. Сканер учитывает соглашения Helm: пустой тег образа с подстановкой appVersion, имена existingSecret и passwordKey, компоненты, отключённые через enabled: false, Bitnami resourcesPreset и поды helm test. Поэтому для нового чарта helm create он отмечает только действительно требующие проверки моменты. Он никогда не запускает helm, не обрабатывает шаблоны для получения манифестов и не подключается к кластеру. Результат: BLOCK, REVIEW или NOT FLAGGED с указанием файла, строки, причины и более безопасного подхода. Секреты никогда не выводятся.
Что проверяется
BLOCK (исправить до публикации)
H01: пароли, токены и ключи в файлах values и шаблонах: ключи с именами, указывающими на секреты, значения env, данные Secret, записанные напрямую, подстановки | default "..." для секретных значений или внутри data объекта Secret, закрытые ключи и пароли в URL
H02: privileged: true в шаблоне или файле values
H03: монтирование через hostPath сокета Docker, containerd или CRI-O либо корневого каталога узла без readOnly
REVIEW (проверить до выпуска)
H11: tag: latest, образы без тега, default "latest" в шаблонах и appVersion: latest (поды helm test пропускаются)
H12: hostNetwork, hostPID, hostIPC и другие монтирования hostPath, включая монтирование корневого каталога узла только для чтения, как у экспортёров метрик узлов
H13: отсутствие лимита памяти в значениях по умолчанию или шаблоны рабочих нагрузок без блока resources
H14: контейнеры, которые могут запускаться с правами root: runAsUser: 0, отсутствие runAsNonRoot в значениях по умолчанию, шаблоны без securityContext
H15: зависимости из репозитория чартов без версии или с незамкнутым диапазоном (*, >=); локальные подчарты file:// пропускаются
H16: зависимости из репозиториев с незашифрованным http://
H17: объекты Service типа LoadBalancer без ограничений диапазонов исходных адресов или аннотации внутреннего балансировщика нагрузки
H18: включённые ingress без TLS и шаблоны Ingress без раздела tls
H19: объекты Secret, создаваемые через randAlphaNum, uuidv4 или genCA в файле, где ни разу не используется lookup, из-за чего они меняются при каждом обновлении
Что входит в комплект
Сканер (Python 3.9+, только стандартная библиотека)
Руководство по правилам с объяснением причины и более безопасного подхода для каждого правила
Примеры небезопасного и безопасного чартов (Chart.yaml, values.yaml, шаблоны deployment, secret, service, ingress, DaemonSet и тестов), а также реальный отчёт сканера для небезопасного примера
Ограничения
Сканер читает файлы чарта в том виде, в котором они записаны, и не обрабатывает шаблоны для получения манифестов: он не учитывает значения, переданные через --set или -f при установке, логику внутри блоков if и range, именованные шаблоны из других файлов и значения по умолчанию подчартов, отсутствующих в папке. Готовые манифесты и работающий кластер не проверяются. NOT FLAGGED не является гарантией безопасности.
Содержимое
Один ZIP-архив с 24 файлами: SKILL.md, сканер в scripts/ (4 файла Python), references/rules.md (все правила с объяснением причин и более безопасных подходов) и examples/ (17 файлов примеров и report.md с реальным результатом сканирования небезопасного примера).
Как использовать: Это навык для агента: папка с файлом SKILL.md и скриптами Python, которые может запускать ИИ-агент для программирования, например Claude Code, Cursor или Codex CLI. Распакуйте архив в папку навыков вашего агента (для Claude Code: ~/.claude/skills/), затем попросите агента проверить ваш проект. Скрипты также запускаются самостоятельно с Python 3.9 или новее, без установки дополнительных компонентов. Они только читают ваши файлы: доступа к сети нет, данные никуда не отправляются.
Что вы получите
1 файл · 39.01 KB
- helm-chart-safety-check-1.0.0.zipZIP · 39.01 KB
ИИ-инструменты и скрипты
Проверка безопасности Helm-чартов
Проверьте Helm-чарты перед публикацией или установкой: пароли в values и шаблонах, привилегированные поды, монтирование хоста, образы :latest, контейнеры с root, отсутствие лимитов памяти, зависимости без фиксированной версии или по http, открытые LoadBalancer и ingress.
Включено в Getly ProПолучить Pro
Теги
Частые вопросы
Доступ открывается сразу?
Да. Это цифровой товар - скачать его можно сразу после оплаты, прямо из своей библиотеки.
Можно ли использовать в коммерческих проектах?
Да. Коммерческое использование разрешено: в своём бизнесе и в том, что вы продаёте. Перепродавать и распространять сам файл нельзя.
Какие условия возврата?
Запросить возврат можно в течение 30 дней. Если что-то не так, оформите заявку в своём заказе - её рассмотрит команда Getly.
Какие форматы и размеры файлов я получу?
Вы скачаете 1 файл - ZIP - всего 39.01 KB.
Обновления бесплатны?
Да - когда продавец выпускает новую версию, вы можете бесплатно скачать актуальные файлы из своей библиотеки. Последние изменения смотрите в истории версий.
Цена
$5.00



