|
| 1 | +From d02be38fc6c54828d5eec15efe058c61f3df4a60 Mon Sep 17 00:00:00 2001 |
| 2 | +From: Mykhailo Bykhovtsev <mbykhovtsev@microsoft.com> |
| 3 | +Date: Thu, 30 May 2024 16:33:17 -0700 |
| 4 | +Subject: [PATCH] backport patch CVE-2024-26147. Based off commit https://github.com/helm/helm/commit/bb4cc9125503a923afb7988f3eb478722a8580af |
| 5 | + |
| 6 | +--- |
| 7 | + vendor/helm.sh/helm/v3/pkg/plugin/plugin.go | 4 ++++ |
| 8 | + vendor/helm.sh/helm/v3/pkg/repo/index.go | 4 ++++ |
| 9 | + 2 files changed, 8 insertions(+) |
| 10 | + |
| 11 | +diff --git a/vendor/helm.sh/helm/v3/pkg/plugin/plugin.go b/vendor/helm.sh/helm/v3/pkg/plugin/plugin.go |
| 12 | +index 1399b71..df580db 100644 |
| 13 | +--- a/vendor/helm.sh/helm/v3/pkg/plugin/plugin.go |
| 14 | ++++ b/vendor/helm.sh/helm/v3/pkg/plugin/plugin.go |
| 15 | +@@ -173,6 +173,10 @@ var validPluginName = regexp.MustCompile("^[A-Za-z0-9_-]+$") |
| 16 | + |
| 17 | + // validatePluginData validates a plugin's YAML data. |
| 18 | + func validatePluginData(plug *Plugin, filepath string) error { |
| 19 | ++ // When metadata section missing, initialize with no data |
| 20 | ++ if plug.Metadata == nil { |
| 21 | ++ plug.Metadata = &Metadata{} |
| 22 | ++ } |
| 23 | + if !validPluginName.MatchString(plug.Metadata.Name) { |
| 24 | + return fmt.Errorf("invalid plugin name at %q", filepath) |
| 25 | + } |
| 26 | +diff --git a/vendor/helm.sh/helm/v3/pkg/repo/index.go b/vendor/helm.sh/helm/v3/pkg/repo/index.go |
| 27 | +index 60cfe58..94852bb 100644 |
| 28 | +--- a/vendor/helm.sh/helm/v3/pkg/repo/index.go |
| 29 | ++++ b/vendor/helm.sh/helm/v3/pkg/repo/index.go |
| 30 | +@@ -347,6 +347,10 @@ func loadIndex(data []byte, source string) (*IndexFile, error) { |
| 31 | + log.Printf("skipping loading invalid entry for chart %q from %s: empty entry", name, source) |
| 32 | + continue |
| 33 | + } |
| 34 | ++ // When metadata section missing, initialize with no data |
| 35 | ++ if cvs[idx].Metadata == nil { |
| 36 | ++ cvs[idx].Metadata = &chart.Metadata{} |
| 37 | ++ } |
| 38 | + if cvs[idx].APIVersion == "" { |
| 39 | + cvs[idx].APIVersion = chart.APIVersionV1 |
| 40 | + } |
| 41 | +-- |
| 42 | +2.34.1 |
| 43 | + |
0 commit comments