CVE-2022-30633: Stack exhaustion when unmarshaling certain documents in encoding/xml

Published Jul 12, 2022
·
Updated

A flaw was found in golang. Calling Unmarshal on an XML document into a Go struct, which has a nested field that uses the "any" field tag, can cause a panic due to stack exhaustion.

Other sources

Calling Unmarshal on a XML document into a Go struct which has a nested field that uses the any field tag can cause a panic due to stack exhaustion.

Red Hat

Golang Go is vulnerable to a denial of service, caused by an uncontrolled recursion flaw in Unmarshal in encoding/xml due to stack exhaustion. By parsing a specially-crafted XML document, a remote attacker could exploit this vulnerability to cause a panic.

IBM

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.

Affected Software

20 affected componentsFixes available
redhat/skupper-cli<0:1.0.2-2.el8
0:1.0.2-2.el8
redhat/openshift-serverless-clients<0:1.3.1-4.el8
0:1.3.1-4.el8
redhat/go-toolset<1.17-golang-0:1.17.12-1.el7_9
1.17-golang-0:1.17.12-1.el7_9
redhat/grafana<0:7.5.15-3.el8
0:7.5.15-3.el8
redhat/golang<0:1.17.12-1.el9_0
0:1.17.12-1.el9_0
redhat/grafana<0:7.5.15-3.el9
0:7.5.15-3.el9
redhat/kubevirt<0:4.12.0-1057.el7
0:4.12.0-1057.el7
redhat/kubevirt<0:4.12.0-1057.el8
0:4.12.0-1057.el8
redhat/golang<1.18.4
1.18.4
redhat/golang<1.17.12
1.17.12
debian/golang-1.15<=1.15.15-1~deb11u4
debian/golang-1.19
1.19.8-2
Golang Go<1.17.12
Golang Go>=1.18.0<1.18.4
IBM Data Virtualization on Cloud Pak for Data<=3.0
IBM Watson Query on Cloud Pak for Data<=2.2
IBM Watson Query on Cloud Pak for Data<=2.1
IBM Watson Query on Cloud Pak for Data<=2.0
IBM Data Virtualization on Cloud Pak for Data<=1.8
IBM Data Virtualization on Cloud Pak for Data<=1.7

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade redhat/skupper-cli to a version that resolves this vulnerability.

    Fixed in 0:1.0.2-2.el8
  2. Upgrade

    Upgrade redhat/openshift-serverless-clients to a version that resolves this vulnerability.

    Fixed in 0:1.3.1-4.el8
  3. Upgrade

    Upgrade redhat/go-toolset to a version that resolves this vulnerability.

    Fixed in 1.17-golang-0:1.17.12-1.el7_9
  4. Upgrade

    Upgrade redhat/grafana to a version that resolves this vulnerability.

    Fixed in 0:7.5.15-3.el8
  5. Upgrade

    Upgrade redhat/golang to a version that resolves this vulnerability.

    Fixed in 0:1.17.12-1.el9_0
  6. Upgrade

    Upgrade redhat/grafana to a version that resolves this vulnerability.

    Fixed in 0:7.5.15-3.el9
  7. Upgrade

    Upgrade redhat/kubevirt to a version that resolves this vulnerability.

    Fixed in 0:4.12.0-1057.el7
  8. Upgrade

    Upgrade redhat/kubevirt to a version that resolves this vulnerability.

    Fixed in 0:4.12.0-1057.el8
  9. Upgrade

    Upgrade debian/golang-1.19 to a version that resolves this vulnerability.

    Fixed in 1.19.8-2
  10. Upgrade

    Upgrade redhat/golang to a version that resolves this vulnerability.

    Fixed in 1.18.4
  11. Upgrade

    Upgrade redhat/golang to a version that resolves this vulnerability.

    Fixed in 1.17.12
  12. Upgrade

    Upgrade golang to a version that resolves this vulnerability.

    Fixed in 1.17.12
  13. Upgrade

    Upgrade golang to a version that resolves this vulnerability.

    Fixed in 1.18.4

Event History

Jul 12, 2022
CVE Published
12:00 AM
Jul 14, 2022
Data Sourced
via Red Hat·09:42 PM
DescriptionSeverityAffected Software
Aug 9, 2022
CVE Published
via MITRE·08:16 PM
Data Sourced
via MITRE·08:16 PM
DescriptionWeakness
Aug 10, 2022
Data Sourced
via NVD·08:15 PM
RemedyDescriptionSeverityWeaknessAffected Software
Oct 10, 2024
Data Sourced
via Ubuntu·01:15 PM
RemedyDescriptionSeverityAffected Software
Data Sourced
via Launchpad·01:16 PM
Description
Aug 15, 2025
Data Sourced
via IBM·03:29 PM
DescriptionAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the vulnerability ID for this flaw?

The vulnerability ID for this flaw is CVE-2022-30633.

2

What is the severity of CVE-2022-30633?

CVE-2022-30633 has a severity keyword of 'high' and a severity value of 7.

3

How does CVE-2022-30633 exploit the vulnerability?

CVE-2022-30633 exploits the vulnerability through uncontrolled recursion in the Unmarshal function in encoding/xml.

4

Which software versions are affected by CVE-2022-30633?

Versions before Go 1.17.12 and Go 1.18.4 of the golang package are affected by CVE-2022-30633.

5

How can I fix CVE-2022-30633?

To fix CVE-2022-30633, update the golang package to version 1.17.12 or 1.18.4.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203