W NATS Server wykryto podatność typu injection (CWE-74), pozwalającą klientowi MQTT na wstrzyknięcie znaków sterujących protokołu do filtrów subskrypcji. Znaki te były następnie przesyłane jako dane protokołu NATS do połączeń route lub leafnode, co umożliwia atakującemu wykonanie niezamierzonych operacji protokołu NATS.
▸ Pokaż oryginał (EN)
NATS Server is a high-performance server for NATS.io, the cloud and edge native messaging system. Prior to 2.14.1 and 2.12.9, an MQTT client could include protocol control characters in subscription filters that were later forwarded as NATS protocol data to route or leafnode connections, corrupting the forwarded protocol stream and allowing injection of unintended NATS protocol operations. This issue is fixed in versions 2.14.1 and 2.12.9.
Klient MQTT może umieścić znaki kontrolne protokołu w filtrach subskrypcji wysyłanych do serwera. NATS Server nie weryfikuje poprawnie tych danych przed ich przekazaniem do połączeń route lub leafnode. Powoduje to uszkodzenie przesyłanego strumienia protokołu NATS i umożliwia wstrzyknięcie niezamierzonych operacji protokołu, które są interpretowane przez odbierające węzły jako legalne polecenia.
Uwierzytelniony zdalny atakujący może wstrzyknąć niezamierzone operacje protokołu NATS do strumienia komunikacji między węzłami, potencjalnie uzyskując nieautoryzowany dostęp do poufnych danych przesyłanych w klastrze oraz modyfikując ograniczonym zakresie jego zachowanie.
Należy zaktualizować NATS Server do wersji 2.14.1 lub 2.12.9, w których problem został naprawiony. Patche dostępne są w repozytorium projektu na GitHub.
NATS Server (nats-io/nats-server) w wersjach wcześniejszych niż 2.14.1 oraz wcześniejszych niż 2.12.9
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:NLinuxfoundation Nats Server
APPLinuxfoundation< 2.12.92.14.0 – 2.14.1 (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: przepełnienie arytmetyczne w paginacji Connz prowadzi do crash serwera
NATS Server: wyczerpanie pamięci przez niekompletne pakiety MQTT CONNECT
NATS Server — crash serwera przez nieuwierzytelniony węzeł leafnode