CVE-2026-61837
ŚrednieCVSS 6.3Streszczenie
RabbitMQ w wersjach od 4.0.0 do 4.3.3, 4.2.9, 4.1.14 i 4.0.23 ma podatność w AMQP 1.0, gdzie endpoint GET /bindings w zarządzaniu ujawnia pełną topologię bindingów każdemu uwierzytelnionemu użytkownikowi AMQP bez sprawdzania uprawnień do zasobów. W przeciwieństwie do innych operacji w tym samym module, GET /bindings nie sprawdza uprawnień i zwraca listę bindingów bez zmian.
Ocena ryzyka
Każdy uwierzytelniony użytkownik AMQP 1.0, nawet bez tagów zarządzania, może wyliczyć pełną topologię routingu wirtualnego hosta, co narusza poufność i może ułatwić dalsze ataki.
Rekomendacja
Zaktualizuj RabbitMQ do wersji 4.3.3, 4.2.9, 4.1.14 lub 4.0.23, aby naprawić podatność.
Inne podatności w RabbitMQ
Zobacz wszystkie- CVE-2026-67421Średnie
W RabbitMQ Management, gdy włączony jest interfejs OAuth, powód błędu autoryzacji AMQP zawierający nazwę kolejki kontrolowaną przez atakującego jest renderowany jako HTML. Nazwa kolejki z elementem base może przekierować automatyczne odświeżanie, a przez CORS atakujący może przechwycić nagłówek Authorization administratora.
- CVE-2026-67420Niskie
RabbitMQ w wersjach od 3.13.0 do 3.13.19, 4.0.24, 4.1.15, 4.2.10 i 4.3.5 zawiera podatność, w której odświeżenie poświadczeń OAuth utrzymuje wygasłe tagi runtime. Kiedy istniejące połączenie AMQP odświeża token OAuth z uprawnieniem impersonator na token z tą samą nazwą użytkownika, ale bez tego uprawnienia, tag 'impersonator' pozostaje w połączeniu. Dzięki temu połączenie (w tym nowo otwarte kanały) może dalej publikować wiadomości z obcym AMQP userid, mimo że powinno to być już odwołane.
- CVE-2026-67419Wysokie
Podatność w RabbitMQ przed wersją 4.3.5. Uwierzytelniony użytkownik, który może powiązać kolejkę z wymianą tematyczną i publikować do niej, może użyć kolejnych segmentów # w kluczu powiązania, co powoduje, że oba matchery tematyczne przetwarzają te same stany bez memoizacji. Skutkuje to duplikowaniem miejsc docelowych przed deduplikacją, co prowadzi do kombinatorycznego obciążenia CPU i pamięci, zakłócając routing dla wszystkich dzierżawców.
- CVE-2026-67415Średnie
Parser parametrów Shovel w RabbitMQ konwertuje wartości parametrów kontrolowane przez atakującego na atomy Erlanga, które nie podlegają garbage collection, przed ich ograniczeniem lub sprawdzeniem dozwolonej listy. Atakujący może wyczerpać tablicę atomów węzła i spowodować odmowę usługi, a złośliwe parametry są trwale zapisywane i ponownie parsowane po restarcie.
- CVE-2026-67413Średnie
Wtyczka rabbitmq_jms_topic_exchange w RabbitMQ przyjmuje kontrolowane przez klienta wyrażenie rjms_erlang_selector, którego ewaluator LIKE rozwija wildcardy do nakładających się fragmentów PCRE wykonywanych bez limitów dopasowania lub rekurencji. Uwierzytelniony najemca może wyczerpać CPU brokera i spowodować odmowę usługi.
- CVE-2026-67412Średnie
Federation upstream w RabbitMQ pomija autoryzację vhost, umożliwiając dostęp do wiadomości między vhostami. Policy maker na jednym vhost może czytać i usuwać wiadomości z innego vhosta, do którego nie ma uprawnień, a przy domyślnym trybie ack wiadomości źródłowe są konsumowane, a nie kopiowane.
- CVE-2026-67411Średnie
Natywny MQTT i MQTT over WebSocket za zaufanym frontendem PROXY Protocol w RabbitMQ mogą utracić adres klienta pochodzący z proxy przed sprawdzeniem loopback_users, przez co adres frontend-broker jest traktowany jako loopback. Atakujący z ważnymi poświadczeniami dla konta ograniczonego do loopback może obejść ograniczenie adresu źródłowego.
- CVE-2026-67407Średnie
Niekompletna poprawka CVE-2026-44838 w RabbitMQ: funkcja escaperegexchar/1 nie escapuje znaku -, co umożliwia obejście uprawnień do tematów MQTT. Gdy szablon uprawnień umieszcza {clientid} wewnątrz klasy znaków [...], nisko uprzywilejowany użytkownik MQTT może rozszerzyć autoryzację tematów.
- CVE-2026-67406Średnie
Shovel w RabbitMQ nie formatuje stanu logowanego przez crash reporter, co może pozostawić niezaszyfrowane poświadczenia w pliku zrzutu awarii. Gdy procesy worker Shovel ulegają awarii, OTP SASL zapisuje pełny stan procesu, w tym jawnotekstowe hasła i URI AMQP, do logu błędów.
- CVE-2026-67242Średnie
W RabbitMQ OAuth2 guard isinteger(Exp) pomija sprawdzanie wygaśnięcia tokenu dla wykładniczej wartości exp typu float. Gdy IdP wysyła exp jako float, zarówno sprawdzenie przy logowaniu, jak i timer rozłączenia są pomijane, przez co wygasły token jest akceptowany, a połączenia nigdy nie wygasają.
Oryginalny opis (angielski, źródło NVD)
RabbitMQ is a messaging and streaming broker. From 4.0.0 until 4.3.3, 4.2.9, 4.1.14, and 4.0.23, AMQP 1.0 management GET /bindings exposes full binding topology to any authenticated AMQP user without resource/management permission checks. the AMQP 1.0 HTTP-over-AMQP management endpoint GET /bindings (the rabbitamqpmanagement handler) enumerates bindings between an arbitrary source exchange and destination queue/exchange in the caller's virtual host without performing any resource-level permission check. Unlike every sibling operation in the same module (which call checkresourceaccess / bindingchecks), the GET handler ignores the authenticated User and returns the binding list unchanged. As a result, any authenticated AMQP 1.0 client that can open a management link pair , including users with no management/monitoring/policymaker/administrator tag , can enumerate the complete binding topology (source exchanges, destination queues/exchanges, routing keys, and binding arguments) of the virtual host they can access. The equivalent HTTP management API (GET /api/bindings) Confidentiality impact: a non-management AMQP 1.0 user can enumerate the complete routing topology of any virtual host it can connect to , every (source exchange, destination queue/exchange, routing key, binding arguments) This issue is fixed in versions 4.3.3, 4.2.9, 4.1.14, and 4.0.23.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

