ZeroHour

CVE-2026-77405

large

Weak TLS negotiation in RabbitMQ amqp091-go Go AMQP client (CWE-326)

CVSS 4.0
9.4 critical
EPSS
Published
()
Modified
AI analysis

Prior to version 1.13.0, the tlsConfigFromURI function in uri.go of RabbitMQ's amqp091-go library builds tls.Config objects without setting MinVersion to tls.VersionTLS12. When an application connects through an amqps URI on a build whose Go runtime defaults still permit TLS 1.0 or TLS 1.1, the AMQP-over-TLS connection can negotiate an obsolete protocol version. A network attacker able to influence TLS negotiation against such a legacy build can weaken transport protection, exposing AMQP message contents and broker credentials to reduced confidentiality and integrity. Only applications embedding this Go client library under those conditions are affected; the flaw is fixed in version 1.13.0. No public proof-of-concept or in-the-wild exploitation is known, and the issue is not listed in CISA KEV, though its CVSS 4.0 score of 9.4 is critical (with high attack complexity and a prerequisite vulnerable configuration).

What to do: Upgrade amqp091-go to version 1.13.0 or later. As an interim mitigation, explicitly set tls.Config MinVersion to tls.VersionTLS12 (or higher) in application code and build with a Go toolchain whose TLS defaults already enforce TLS 1.2+. Audit whether your services connect via amqps URIs that rely on tlsConfigFromURI, since those are the affected code paths.

Affected
RabbitMQ amqp091-go (Go AMQP 0.9.1 client library)all versions prior to 1.13.0
Estimated exposure
largetens of thousands of Go applications/services import this official RabbitMQ client; the actually vulnerable subset (those using amqps URIs on Go runtimes whose… — amqp091-go is the canonical, widely imported Go client for RabbitMQ, which is broadly deployed as a message broker, but exploitation additionally requires an amqps connection and a legacy Go runtime that permits TLS 1.0/1.1 by default, so…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

RabbitMQ amqp091-go is a Go AMQP 0.9.1 client. Prior to 1.13.0, tlsConfigFromURI in uri.go creates tls.Config values without setting MinVersion to tls.VersionTLS12. Builds using a Go runtime whose default permits TLS 1.0 or TLS 1.1 can therefore negotiate an obsolete protocol version when connecting through an amqps URI. A network attacker able to influence TLS negotiation with such a legacy build may weaken transport protection for AMQP messages and credentials. This issue is fixed in version 1.13.0.

Weakness
CWE-326
Vector
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:H/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.