« Volver al listado

CVE-2026-107275

Estado: Pendiente de análisisMedia (6.8)—

@fastify/jwt es un plugin de JSON Web Token para el framework web Fastify. En versiones anteriores a 10.2.3, un intervalo de tiempo pasado a expiresIn, notBefore o maxAge que el analizador del plugin no puede leer, como un intervalo compuesto, una unidad de mes, una duración ISO 8601, una coma decimal o un valor con espacios en blanco alrededor, se descarta silenciosamente en lugar de rechazarse.

Leer descripción completaMostrar menos

En la ruta de firma, esto produce un token sin reclamación de expiración que nunca caduca, y en la ruta de verificación deja de aplicarse un maxAge configurado, de modo que se acepta un token que debería rechazarse por su antigüedad. El problema está corregido en @fastify/jwt 10.2.3, y los usuarios deberían actualizar a 10.2.3 o posterior. Como solución alternativa, pase estas opciones como un número de segundos, o verifique que cualquier cadena de intervalo de tiempo se analiza como un valor finito antes de confiar en ella.

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.

Acceso remoto con privilegios (PR:L) a servicio web Fastify. Impacto: tokens JWT sin expiración permiten autenticación persistente y secuestro de identidad.

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-107275",
  "cveTags": [],
  "metrics": {
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "id": "CVE-2026-107275",
          "role": "CISA Coordinator",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "version": "2.0.3",
          "timestamp": "2026-10-08T14:21:14.347462Z"
        }
      }
    ],
    "cvssMetricV31": [
      {
        "type": "Secondary",
        "source": "ce714d77-add3-4f53-aff5-83d477b104bb",
        "cvssData": {
          "scope": "UNCHANGED",
          "version": "3.1",
          "baseScore": 6.8,
          "attackVector": "NETWORK",
          "baseSeverity": "MEDIUM",
          "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N",
          "integrityImpact": "HIGH",
          "userInteraction": "NONE",
          "attackComplexity": "HIGH",
          "availabilityImpact": "NONE",
          "privilegesRequired": "LOW",
          "confidentialityImpact": "HIGH"
        },
        "impactScore": 5.2,
        "exploitabilityScore": 1.6
      }
    ]
  },
  "affected": [
    {
      "source": "ce714d77-add3-4f53-aff5-83d477b104bb",
      "affectedData": [
        {
          "vendor": "@fastify/jwt",
          "product": "@fastify/jwt",
          "versions": [
            {
              "status": "affected",
              "version": "0",
              "lessThan": "10.2.3",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "10.2.3",
              "versionType": "semver"
            }
          ],
          "packageURL": "pkg:npm/@fastify/jwt",
          "defaultStatus": "unaffected"
        }
      ]
    }
  ],
  "published": "2026-10-08T12:17:14.553",
  "references": [
    {
      "url": "https://cna.openjsf.org/security-advisories.html",
      "source": "ce714d77-add3-4f53-aff5-83d477b104bb"
    },
    {
      "url": "https://github.com/fastify/fastify-jwt/security/advisories/GHSA-9x4w-r9p5-5h7m",
      "source": "ce714d77-add3-4f53-aff5-83d477b104bb"
    }
  ],
  "vulnStatus": "Awaiting Analysis",
  "weaknesses": [
    {
      "type": "Secondary",
      "source": "ce714d77-add3-4f53-aff5-83d477b104bb",
      "description": [
        {
          "lang": "en",
          "value": "CWE-390"
        },
        {
          "lang": "en",
          "value": "CWE-613"
        },
        {
          "lang": "en",
          "value": "CWE-754"
        }
      ]
    }
  ],
  "descriptions": [
    {
      "lang": "en",
      "value": "@fastify/jwt is a JSON Web Token plugin for the Fastify web framework. In versions before 10.2.3, a time span passed to expiresIn, notBefore, or maxAge that the plugin's parser cannot read, such as a compound span, a month unit, an ISO 8601 duration, a decimal comma, or a value with surrounding whitespace, is silently dropped instead of refused. On the signing path this produces a token with no expiration claim that never expires, and on the verification path a configured maxAge stops being enforced, so a token that should be rejected for age is accepted. The issue is fixed in @fastify/jwt 10.2.3, and users should upgrade to 10.2.3 or later. As a workaround, pass these options as a number of seconds, or verify that any time-span string parses to a finite value before relying on it."
    }
  ],
  "lastModified": "2026-10-08T20:49:23.240",
  "sourceIdentifier": "ce714d77-add3-4f53-aff5-83d477b104bb"
}