« Volver al listado

CVE-2026-107715

Estado: AplazadaMedia (6.8)—

La biblioteca Mechanize se utiliza para automatizar la interacción con sitios web. En versiones anteriores a la 2.14.1, Mechanize envía cabeceras de credenciales proporcionadas por el llamante a un host diferente tras una redirección HTTP. Mechanize#request_headers= vuelve a aplicarse mediante Mechanize::HTTP::Agent#request_add_headers incluso después de que Mechanize::HTTP::Agent#response_redirect elimine las cabeceras por solicitud, y las listas de cabeceras protegidas omiten Proxy-Authorization y Cookie2.

Leer descripción completaMostrar menos

Un atacante que controle un destino de redirección puede capturar tokens portadores o cookies de sesión proporcionados mediante request_headers= o el argumento de cabeceras por solicitud, mientras que Mechanize#cookie_jar y Mechanize::HTTP::AuthStore no están afectados. Este problema está corregido en la versión 2.14.1.

Traducción automática del texto original de NVD (en inglés).

CVSS

Probabilidad de explotación (EPSS)

EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).

🎯 Técnicas ATT&CK

Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.

Vulnerabilidad de fuga de credenciales en biblioteca HTTP por redirección maliciosa sin validación de destino (AV:N, CWE-200/522). Atacante remoto captura tokens/cookies en encabezados hacia host controlado.

Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.

🛡️ Mitigaciones ATT&CK que cubren estas técnicas

Tecnologías afectadas (1)

⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.

CWE

Referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-107715",
  "cveTags": [],
  "metrics": {
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "id": "CVE-2026-107715",
          "role": "CISA Coordinator",
          "options": [
            {
              "exploitation": "poc"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "version": "2.0.3",
          "timestamp": "2026-10-09T13:22:03.491703Z"
        }
      }
    ],
    "cvssMetricV31": [
      {
        "type": "Secondary",
        "source": "security-advisories@github.com",
        "cvssData": {
          "scope": "CHANGED",
          "version": "3.1",
          "baseScore": 6.8,
          "attackVector": "NETWORK",
          "baseSeverity": "MEDIUM",
          "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N",
          "integrityImpact": "NONE",
          "userInteraction": "NONE",
          "attackComplexity": "HIGH",
          "availabilityImpact": "NONE",
          "privilegesRequired": "NONE",
          "confidentialityImpact": "HIGH"
        },
        "impactScore": 4,
        "exploitabilityScore": 2.2
      }
    ]
  },
  "affected": [
    {
      "source": "security-advisories@github.com",
      "affectedData": [
        {
          "vendor": "sparklemotion",
          "product": "mechanize",
          "versions": [
            {
              "status": "affected",
              "version": "< 2.15.0"
            }
          ]
        }
      ]
    }
  ],
  "published": "2026-10-08T22:17:27.163",
  "references": [
    {
      "url": "https://github.com/sparklemotion/mechanize/commit/02a1235842d6eda8d4a5a3d8f13aba2cecf52e4f",
      "source": "security-advisories@github.com"
    },
    {
      "url": "https://github.com/sparklemotion/mechanize/commit/94e0902867296be804f36eccbb47acf7d5018745",
      "source": "security-advisories@github.com"
    },
    {
      "url": "https://github.com/sparklemotion/mechanize/commit/ac49abf2869297d83c3b11bbfb8b18e63b588c95",
      "source": "security-advisories@github.com"
    },
    {
      "url": "https://github.com/sparklemotion/mechanize/pull/676",
      "source": "security-advisories@github.com"
    },
    {
      "url": "https://github.com/sparklemotion/mechanize/releases/tag/v2.14.1",
      "source": "security-advisories@github.com"
    },
    {
      "url": "https://github.com/sparklemotion/mechanize/security/advisories/GHSA-2mwr-xjcg-37j7",
      "source": "security-advisories@github.com"
    },
    {
      "url": "https://github.com/sparklemotion/mechanize/security/advisories/GHSA-2mwr-xjcg-37j7",
      "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
    }
  ],
  "vulnStatus": "Deferred",
  "weaknesses": [
    {
      "type": "Secondary",
      "source": "security-advisories@github.com",
      "description": [
        {
          "lang": "en",
          "value": "CWE-200"
        },
        {
          "lang": "en",
          "value": "CWE-522"
        }
      ]
    }
  ],
  "descriptions": [
    {
      "lang": "en",
      "value": "The Mechanize library is used for automating interaction with websites. Prior to 2.14.1, Mechanize sends caller-supplied credential headers to a different host after an HTTP redirect. Mechanize#request_headers= is reapplied by Mechanize::HTTP::Agent#request_add_headers even after Mechanize::HTTP::Agent#response_redirect strips per-request headers, and the protected header lists omit Proxy-Authorization and Cookie2. An attacker who controls a redirect target can capture bearer tokens or session cookies supplied through request_headers= or the per-request headers argument, while Mechanize#cookie_jar and Mechanize::HTTP::AuthStore are not affected. This issue is fixed in version 2.14.1."
    }
  ],
  "lastModified": "2026-10-09T16:40:29.800",
  "sourceIdentifier": "security-advisories@github.com"
}