Vulnerabilidad en OpenTelemetry-Go Contrib (CVE-2023-47108)
Severidad:
ALTA
Type:
No Disponible / Otro tipo
Fecha de publicación:
10/11/2023
Última modificación:
20/11/2023
Descripción
OpenTelemetry-Go Contrib es una colección de paquetes de terceros para OpenTelemetry-Go. Antes de la versión 0.46.0, grpc Unary Server Interceptor agrega etiquetas `net.peer.sock.addr` y `net.peer.sock.port` que tienen cardinalidad independiente. Conduce al posible agotamiento de la memoria del servidor cuando se envían muchas solicitudes maliciosas. Un atacante puede inundar fácilmente la dirección y el puerto del par para solicitudes. La versión 0.46.0 contiene una solución para este problema. Como workaround para dejar de verse afectado, se puede utilizar una vista que elimine los atributos. La otra posibilidad es deshabilitar la instrumentación de métricas de grpc pasando la opción `otelgrpc.WithMeterProvider` con `noop.NewMeterProvider`.
Impacto
Puntuación base 3.x
7.50
Severidad 3.x
ALTA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:opentelemetry:opentelemetry:*:*:*:*:*:go:*:* | 0.46.0 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://github.com/open-telemetry/opentelemetry-go-contrib/blob/9d4eb7e7706038b07d33f83f76afbe13f53d171d/instrumentation/google.golang.org/grpc/otelgrpc/interceptor.go#L327
- https://github.com/open-telemetry/opentelemetry-go-contrib/blob/instrumentation/google.golang.org/grpc/otelgrpc/v0.45.0/instrumentation/google.golang.org/grpc/otelgrpc/config.go#L138
- https://github.com/open-telemetry/opentelemetry-go-contrib/commit/b44dfc9092b157625a5815cb437583cee663333b
- https://github.com/open-telemetry/opentelemetry-go-contrib/pull/4322
- https://github.com/open-telemetry/opentelemetry-go-contrib/security/advisories/GHSA-8pgv-569h-w5rw
- https://pkg.go.dev/go.opentelemetry.io/otel/metric/noop#NewMeterProvider