GO-2022-1167

Source
https://pkg.go.dev/vuln/GO-2022-1167
Import Source
https://vuln.go.dev/ID/GO-2022-1167.json
JSON Data
https://api.osv.dev/v1/vulns/GO-2022-1167
Aliases
Published
2022-12-14T18:06:02Z
Modified
2024-05-20T16:03:47Z
Summary
Denial of service in string value parsing in helm.sh/helm/v3
Details

Applications that use the strvals package in the Helm SDK to parse user supplied input can suffer a Denial of Service when that input causes an error that cannot be recovered from.

The strvals package contains a parser that turns strings into Go structures. For example, the Helm client has command line flags like --set, --set-string, and others that enable the user to pass in strings that are merged into the values. The strvals package converts these strings into structures Go can work with. Some string inputs can cause can cause a stack overflow to be created causing a stack overflow error. Stack overflow errors cannot be recovered from.

The Helm Client will panic with input to --set, --set-string, and other value setting flags that causes a stack overflow. Helm is not a long running service so the error will not affect future uses of the Helm client.

References
Credits
    • Ada Logics in a fuzzing audit sponsored by CNCF

Affected packages

Go / helm.sh/helm/v3

Package

Name
helm.sh/helm/v3
View open source insights on deps.dev
Purl
pkg:golang/helm.sh/helm/v3

Affected ranges

Type
SEMVER
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.10.3

Ecosystem specific

{
    "imports": [
        {
            "path": "helm.sh/helm/v3/pkg/strvals",
            "symbols": [
                "Parse",
                "ParseFile",
                "ParseInto",
                "ParseIntoFile",
                "ParseIntoString",
                "ParseJSON",
                "ParseString",
                "ToYAML",
                "parser.key"
            ]
        }
    ]
}