CVE-2022-28131: Stack exhaustion from deeply nested XML documents in encoding/xml

Published Jul 12, 2022
·
Updated

A flaw was found in golang encoding/xml. When calling Decoder, Skip while parsing a deeply nested XML document, a panic can occur due to stack exhaustion and allows an attacker to impact system availability.

Other sources

Calling Decoder.Skip when parsing a deeply nested XML document 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 Decoder.Skip 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

Stack exhaustion from deeply nested XML documents in encoding/xml

Microsoft

Uncontrolled recursion in Decoder.Skip 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 a deeply nested XML document.

Affected Software

23 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
debian/golang-1.15<=1.15.15-1~deb11u4
Golang Go<1.17.12
Golang Go>=1.18.0<1.18.4
Fedoraproject Fedora=35
NetApp Cloud Insights Telegraf
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
redhat/golang<1.18.4
1.18.4
redhat/golang<1.17.12
1.17.12
Microsoft cbl2 golang 1.18.5-1
Microsoft cm1 golang 1.18.5-1

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 redhat/golang to a version that resolves this vulnerability.

    Fixed in 1.18.4
  10. Upgrade

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

    Fixed in 1.17.12
  11. Upgrade

    Upgrade golang/encoding/xml to a version that resolves this vulnerability.

    Fixed in 1.17.12
  12. Upgrade

    Upgrade golang/encoding/xml 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:40 PM
DescriptionSeverityAffected Software
Aug 9, 2022
CVE Published
via MITRE·12:00 AM
Data Sourced
via MITRE·12:00 AM
DescriptionWeakness
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 CVE-2022-28131?

CVE-2022-28131 is a vulnerability in Golang Go that allows a remote attacker to cause a denial of service (DoS) by exploiting an uncontrolled recursion flaw in Decoder.Skip in encoding/xml.

2

How does CVE-2022-28131 impact Golang Go?

CVE-2022-28131 can lead to a panic in Golang Go, causing a DoS condition.

3

What is the severity of CVE-2022-28131?

CVE-2022-28131 has a severity level of high with a score of 7.3.

4

Which versions of Golang Go are affected by CVE-2022-28131?

Versions of Golang Go before 1.18.4 and 1.17.12 are affected by CVE-2022-28131.

5

How can I fix CVE-2022-28131 in Golang Go?

To fix CVE-2022-28131, update Golang Go to version 1.18.4 or 1.17.12, which contain the necessary security patches.

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