CVE-2023-39322: Memory exhaustion in QUIC connection handling in crypto/tls

Published Sep 6, 2023
·
Updated

Golang Go is vulnerable to a denial of service, caused by an uncontrolled resource consumption flaw when reading post-handshake messages. By sending a specially crafted request, a remote attacker could exploit this vulnerability to cause unbounded memory growth, and results in a denial of service condition.

Other sources

Once the TLS handshake completes, QUICConn.HandleData buffers data and passes it to handlePostHandshakeMessage every time the buffer contains a complete message. The size check is wrong, however, so it can pass along a partial message, triggering a panic when handlePostHandshakeMessage tries to read the remainder of the message.

In addition, HandleData doesn't limit the amount of data it can buffer. It should reject messages larger than maxHandshake.

Red Hat

QUIC connections do not set an upper bound on the amount of data buffered when reading post-handshake messages, allowing a malicious QUIC connection to cause unbounded memory growth. With fix, connections now consistently reject messages larger than 65KiB in size.

MITRE

Affected Software

4 affected componentsFixes available
IBM Planning Analytics on Cloud Pak for Data<=4.0
Golang Go>=1.21.0<1.21.1
redhat/golang<1.20.8
1.20.8
redhat/golang<1.21.1
1.21.1

Remediation

Event History

Sep 6, 2023
Data Sourced
via Red Hat·08:24 PM
DescriptionSeverityAffected Software
Sep 8, 2023
CVE Published
04:13 PM
Data Sourced
04:13 PM
DescriptionWeakness

Parent advisories

This vulnerability appears in the following advisories.

Frequently Asked Questions

1

What is CVE-2023-39322?

CVE-2023-39322 is a vulnerability that allows a malicious QUIC connection to cause unbounded memory growth by not setting an upper bound on the amount of data buffered when reading post-handshake messages.

2

How does CVE-2023-39322 affect Golang Go?

CVE-2023-39322 affects Golang Go versions 1.21.0 up to but not including 1.21.1.

3

What is the severity of CVE-2023-39322?

CVE-2023-39322 has a severity rating of 7.5 (high).

4

How can CVE-2023-39322 be fixed?

CVE-2023-39322 can be fixed by updating Golang Go to version 1.21.1 or higher.

5

What is the CWE of CVE-2023-39322?

CVE-2023-39322 has CWE (Common Weakness Enumeration) vulnerabilities 770 and 400.

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