Podatność w NATS Server (przed wersjami 2.14.3 i 2.12.12) umożliwia uwierzytelnionemu klientowi wywołanie awarii (crash) serwera poprzez wysłanie specjalnie spreparowanych wartości paginacji w żądaniach monitorowania połączeń. Jest to groźne, ponieważ może prowadzić do pełnej niedostępności usługi messagingowej w środowiskach chmurowych i brzegowych.
▸ Pokaż oryginał (EN)
NATS Server is a high-performance server for NATS.io, the cloud and edge native messaging system. Prior to 2.14.3 and 2.12.12, a client able to send account-scoped connection monitoring requests could crash the server by supplying Connz pagination Offset and Limit values that overflowed internal arithmetic before the response window was safely bounded. This issue is fixed in versions 2.14.3 and 2.12.12.
Podatność (CWE-190 — przepełnienie liczby całkowitej) występuje podczas przetwarzania parametrów paginacji Connz: Offset i Limit, w żądaniach monitorowania połączeń o zasięgu konta (account-scoped). Klient może dostarczyć wartości, które powodują przepełnienie wewnętrznych obliczeń arytmetycznych zanim okno odpowiedzi zostanie bezpiecznie ograniczone. Skutkuje to niekontrolowaną awarią procesu serwera.
Atakujący z uprawnieniami do wysyłania żądań monitorowania połączeń może zdalnie doprowadzić do całkowitej niedostępności serwera NATS (Denial of Service), przerywając wymianę wiadomości dla wszystkich klientów korzystających z danej instancji.
Należy zaktualizować NATS Server do wersji 2.14.3 lub 2.12.12, w których problem został naprawiony. Odpowiednie patche są dostępne w oficjalnym repozytorium GitHub projektu nats-io/nats-server.
NATS Server (nats-io/nats-server) w wersjach wcześniejszych niż 2.14.3 oraz wcześniejszych niż 2.12.12.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:HLinuxfoundation Nats Server
APPLinuxfoundation2.12.0 – 2.12.12 (bez)2.14.0 – 2.14.3 (bez)
Powiązane podatności
Path traversal w NATS nats-server umożliwiający nieautoryzowane działania zarządzania
Nieprawidłowa kontrola dostępu w JWT library w NATS nats-server
NATS Server: wyczerpanie pamięci przez niekompletne pakiety MQTT CONNECT
NATS Server: injection protokołu przez filtry subskrypcji MQTT
NATS Server — crash serwera przez nieuwierzytelniony węzeł leafnode