RabbitMQ amqp091-go is a Go AMQP 0.9.1 client. Prior to 1.13.0, readField in read.go reads the length of an AMQP byte-array field with type tag x into a signed int32 and passes the value directly to make when allocating the field buffer. A malicious or compromised broker can encode a value such as 0xFFFFFFFF, which becomes -1 and causes a len out of range runtime panic. The panic escapes the network reader goroutine and terminates the client process, including during connection.start server properties or message header table parsing. This issue is fixed in version 1.13.0.
When converting from one data type to another, such as long to integer, data can be omitted or translated in a way that produces unexpected values. If the resulting values are used in a sensitive context, then dangerous behaviors may occur.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Red Hat Hardened Images | RedHat | opentelemetry-collector-contrib-main-0.161.0-0.1.hum1 | * |
| Red Hat Quay 3.10 | RedHat | quay/quay-rhel8:1791462428 | * |
| Red Hat Quay 3.12 | RedHat | quay/quay-rhel8:1791314514 | * |
| Red Hat Quay 3.9 | RedHat | quay/quay-rhel8:1790808443 | * |