CVE-2026-77407: RabbitMQ amqp091-go plaintext credential exposure in PLAIN auth struct

CVE-2026-77407 · Severity: high · CVSS 4 · Published 2026-09-16

RabbitMQ's AMQP Go client library stores PLAIN authentication credentials (username and password) in plaintext within an exported, in-memory configuration field that persists for the lifetime of the connection. Any code with access to the connection object—including reflective loggers, monitoring tools, debugging utilities, or log aggregation frameworks—can read and expose these raw credentials to logs, external systems, or operators without direct authorization.

Technologies: github.com/rabbitmq/amqp091-go (Go), RabbitMQ Amqp091-Go. Vendors: Go, RabbitMQ.

Quick answers

Is CVE-2026-77407 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-77407 being exploited in the wild.
How severe is CVE-2026-77407?
High severity, with a CVSS score of 4, published 16 September 2026.
Which products and versions are affected?
github.com/rabbitmq/amqp091-go (Go) < 1.13.0, SEMVER:introduced=0,fixed=1.13.0.
Is there a fix for CVE-2026-77407?
Yes. github.com/rabbitmq/amqp091-go (Go): upgrade to 1.13.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-77407 attacked?
It is attacked from the adjacent network or with local access.
Am I affected by CVE-2026-77407?
Check whether you run github.com/rabbitmq/amqp091-go (Go) or RabbitMQ Amqp091-Go at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • github.com/rabbitmq/amqp091-go (Go): upgrade to 1.13.0 or later
    go get github.com/rabbitmq/amqp091-go@v1.13.0

Technical details

The vulnerability is a credential exposure flaw in the `amqp091-go` library's authentication handling. The `PlainAuth` struct defines `Username` and `Password` as publicly exported string fields, which are stored directly in the `Connection.Config.SASL` field and retained in-memory for the connection's lifetime. Any code path that accesses the `*Connection` object using Go's reflection capabilities—such as structured logging frameworks serializing state, APM agents capturing snapshots, or panic handlers dumping goroutine state—can retrieve the plaintext password without restriction. The attack does not require remote code execution; it leverages legitimate debugging, monitoring, or logging integrations to harvest credentials and transmit them to external log infrastructure where they may be accessible to unprivileged operators or log archive readers. No patch information is currently available in the advisory.

Affected products

  • RabbitMQ amqp091-go

Identifiers

  • CVE-2026-77407
  • GHSA-27gv-rfvv-22mv
  • GO-2026-6491

Timeline

  • 2026-09-17: disclosed

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.