Severity
Details
- CVSS score
- 6.4
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
Overview
About vulnerability
Background
NATS.io is a high performance open source pub-sub distributed communication technology, built for the cloud, on-premise, IoT, and edge computing.
The nats-server allows hub/spoke topologies using “leafnode” connections by other nats-servers. NATS messages can have headers.
Problem Description
The nats-server offers a Nats-Request-Info: message header, providing information about a request. This is supposed to provide enough information to allow for account/user identification, such that NATS clients could make their own decisions on how to trust a message, provided that they trust the nats-server as a broker.
A leafnode connecting to a nats-server is not fully trusted unless the system account is bridged too. Thus identity claims should not have propagated unchecked.
Thus NATS clients relying upon the Nats-Request-Info: header could be spoofed.
Does not directly affect the nats-server itself, but the CVSS Confidentiality and Integrity scores are based upon what a hypothetical client might choose to do with this NATS header.
Affected Versions
Any version before v2.12.6 or v2.11.15
Workarounds
None.
Details
- Affected product:
- Grafana , Loki , MinIO , benmathews/bench , centrifugal/centrifuge , github.com/benmathews/bench , github.com/centrifugal/centrifuge , github.com/go-kit/kit , github.com/grpc-ecosystem/go-grpc-middleware , github.com/hashicorp/raft-wal , github.com/influxdata/telegraf , github.com/nats-io/nats-server , github.com/nats-io/nats-streaming-server , github.com/prometheus/client_golang , github.com/prometheus/common , go-kit/kit , grafana/tempo , grpc-ecosystem/go-grpc-middleware , hashicorp/raft-wal , heroku/x , influxdata/telegraf , nats-io/nats-server , nats-io/nats-streaming-server , prometheus/client_golang , prometheus/common , spf13/cobra , spf13/viper
- Affected packages:
- github.com/nats-io/nats-server @ 2.1.4 (+39 more)