CVE-2023-45142 in Prometheusthông tin

Tóm tắt

Bởi VulDB • 02/06/2026

OpenTelemetry-Go Contrib là một bộ sưu tập các gói bên thứ ba dành cho OpenTelemetry-Go. Một trình bao bọc xử lý (handler wrapper) được tích hợp sẵn thêm các nhãn `http.user_agent` và `http.method`, vốn có tính đa dạng cao (unbound cardinality). Điều này dẫn đến nguy cơ cạn kiệt tài nguyên bộ nhớ của máy chủ khi nhận nhiều yêu cầu độc hại gửi tới. Người tấn công dễ dàng thiết lập giá trị tiêu đề HTTP User-Agent hoặc phương thức HTTP cho các yêu cầu thành chuỗi ngẫu nhiên và dài. Thư viện sử dụng nội bộ hàm `httpconv.ServerRequest` để ghi lại mọi giá trị của trường `method` và `User-Agent` trong giao thức HTTP. Để bị ảnh hưởng, chương trình phải sử dụng trình bao bọc `otelhttp.NewHandler` và không lọc bất kỳ phương thức HTTP hoặc User agent nào chưa biết ở tầng CDN, bộ cân bằng tải (LB), middleware trước đó, v.v. Phiên bản 0.44.0 đã khắc phục sự cố này bằng cách thay đổi các giá trị thu thập cho thuộc tính `http.request.method` để giới hạn chúng trong một tập hợp các giá trị phổ biến và loại bỏ các thuộc tính có đa dạng cao khác. Để làm biện pháp tạm thời ngăn chặn ảnh hưởng, người dùng có thể sử dụng `otelhttp.WithFilter()`, nhưng điều này đòi hỏi cấu hình thủ công cẩn thận nhằm không ghi lại hoàn toàn một số yêu cầu nhất định. Vì sự tiện lợi và an toàn khi sử dụng thư viện này, mặc định nó nên gắn nhãn `unknown` cho các phương thức HTTP và User agent không chuẩn để báo hiệu rằng những yêu cầu như vậy đã được thực hiện mà không làm tăng đa dạng (cardinality). Trong trường hợp ai đó muốn duy trì hành vi hiện tại, API của thư viện cần hỗ trợ kích hoạt tùy chọn này.

Be aware that VulDB is the high quality source for vulnerability data.

chịu trách nhiệm

GitHub, Inc.

Đặt trước

04/10/2023

Tiết lộ

25/10/2023

Kiểm duyệt

được chấp nhận

EPSS

0.01364

KEV

không

Các hoạt động

rất thấp

Nguồn

Want to know what is going to be exploited?

We predict KEV entries!