Skip to content

Packaged Kubernetes deployments that decide which images run and what they may touch.

  • Registries

About

Helm is the package manager for Kubernetes, and a chart is one of its packages, a set of templates that tell the cluster what to run. Public charts are found through Artifact Hub and fetched from each publisher's own repository. Installing one can start images and create service accounts and permissions across the cluster.

A chart takes effect when it is installed or upgraded, telling the cluster which images to start and what they may touch. Hooks in a chart can also run jobs at install time.

If It Is Malicious

If a Helm chart is malicious, it runs on Kubernetes with whatever roles the chart grants, in every cluster that installs it.

Its code runs inside these technologies.

See It in the Stack

Examples

These are well-known names from Helm Charts, written as you would meet them in an inventory, an alert or a lockfile, the file that records every version a build installed.

ingress-nginx/ingress-nginx
The ingress controller with the IngressNightmare flaws, retired in March 2026.
jetstack/cert-manager
Issues and renews TLS certificates in a cluster.
prometheus-community/kube-prometheus-stack
Prometheus and Grafana monitoring in one chart.
argo/argo-cd
Deploys apps to a cluster from Git.

How Bad Code Gets In

These are the ways bad code can reach your systems through Helm Charts. None of them needs a flaw in your own code, so outside code needs checking as much as your own.

  • A chart grants its workloads far more rights than they need, such as reading every Secret, the objects Kubernetes keeps passwords and keys in.
  • A chart pulls its images by tag, so its code can change without the chart changing.
  • A flaw in a component the chart installs reaches everything the chart let it touch.
  • A chart repository changes hands or moves, and the same name serves something else.

How to Check

These checks show what came from Helm Charts, whether a known bad version is in use, and how to keep one out next time.

  • Read the rendered templates with helm template before installing, especially roles and bindings.
  • Pin chart versions, and the image digests inside them, in your own values.
  • Verify signed charts with helm verify where the publisher provides provenance files.
  • List what is installed with helm list across all namespaces, so an advisory can be matched to clusters.

Well-Known Incidents

Each incident below is a real case, told at the level of its public advisory. The tag says how the bad code got in, and the link opens the primary source.

  • Vulnerable DependencyCVE-2025-19742025

    IngressNightmare

    Flaws in the widely used ingress-nginx controller let anything on the cluster's pod network, with no credentials, use its admission webhook to run code inside it.

    Reach The controller can read every Secret in the cluster by default, so one reachable flaw could hand over the whole cluster.

    Affectedingress-nginx

    Source: kubernetes.io (opens in a new tab)

In Common Stacks

These common stacks take code from Helm Charts. Open one to see where that code sits among its layers and who runs each one.

Sources

Product names and logos are trademarks of their owners, shown only to name each product, with no endorsement implied. npm is a registered trademark of npm, Inc.

Apache, Apache HTTP Server, Tomcat and Log4j are trademarks of the Apache Software Foundation. Node.js® is a registered trademark of the OpenJS Foundation, and Kubernetes® of LF Projects, LLC.

Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries. Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries.

MongoDB® is a registered trademark of MongoDB, Inc. Redis® is a registered trademark of Redis Ltd. Any rights therein are reserved to Redis Ltd.

PHP logo by Colin Viebrock, CC BY-SA 4.0 (opens in a new tab). Ruby logo © 2006 Yukihiro Matsumoto, CC BY-SA 2.5 (opens in a new tab). Tux by Larry Ewing, with Garrett LeSage and IFo Hancroft.

Puma logo © Evan Phoenix and contributors, CC BY-ND 3.0 (opens in a new tab). NuGet logo from NuGet's Media repository, CC BY 2.0 (opens in a new tab).

Gunicorn logo © Benoît Chesneau and Paul J. Davis, MIT licence for the Gunicorn logo (opens in a new tab). Packagist logo © 2011 Jordi Boggiano and Nils Adermann, MIT licence for the Packagist logo (opens in a new tab).

MIT Licence Notices for the Gunicorn and Packagist Logos

Gunicorn logo

2009-2024 (c) Benoît Chesneau <benoitc@gunicorn.org> 2009-2015 (c) Paul J. Davis <paul.joseph.davis@gmail.com>

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Packagist logo

Copyright (c) 2011 Jordi Boggiano, Nils Adermann

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.