blob: 5751485c1fc485e0fa9aa449b923a67deb2ff791 [file] [log] [blame]
id: GO-2022-0523
modules:
- module: std
versions:
- fixed: 1.17.12
- introduced: 1.18.0-0
fixed: 1.18.4
vulnerable_at: 1.18.3
packages:
- package: encoding/xml
symbols:
- Decoder.DecodeElement
- Decoder.unmarshal
- Decoder.unmarshalPath
summary: Stack exhaustion when unmarshaling certain documents in encoding/xml
description: |-
Unmarshaling an XML document into a Go struct which has a nested field that uses
the 'any' field tag can panic due to stack exhaustion.
published: 2022-07-20T20:52:06Z
references:
- fix: https://go.dev/cl/417061
- fix: https://go.googlesource.com/go/+/c4c1993fd2a5b26fe45c09592af6d3388a3b2e08
- report: https://go.dev/issue/53611
- web: https://groups.google.com/g/golang-announce/c/nqrv9fbR0zE
cve_metadata:
id: CVE-2022-30633
cwe: 'CWE-674: Uncontrolled Recursion'
description: |-
Uncontrolled recursion in Unmarshal in encoding/xml before Go 1.17.12 and Go
1.18.4 allows an attacker to cause a panic due to stack exhaustion via
unmarshalling an XML document into a Go struct which has a nested field that
uses the 'any' field tag.