CVE-2026-98420

Estado: RecibidaSin puntuar—
Gravedad—Sin puntuar
Probabilidad de explotación0.24 %mayor que el 14 % de las CVE
Explotación activaNono figura en el catálogo de CISA
Exploit públicoNo conocidosin código público localizado

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:

ksmbd: seguir la semántica de caducidad de sesiones SMB2

ksmbd_session_register() destruye sesiones válidas tras diez segundos de inactividad cada vez que un cliente inicia otro intercambio de SessionSetup. Esto confunde Session.IdleTime con Session.ExpirationTime. Windows puede crear sesiones autenticadas adicionales en una conexión existente, de modo que eliminar la sesión anterior invalida sus conexiones de árbol y hace que las unidades asignadas fallen con STATUS_NETWORK_NAME_DELETED.

Las reglas de caducidad de sesiones exigen que el servidor cambie una sesión válida a caducada solo después de que pase su tiempo de caducidad de credenciales.

Leer descripción completaMostrar menos

Una sesión válida o caducada, por lo demás, impide que su conexión sea depurada. Las conexiones que no han negociado un dialecto, que no tienen sesiones o que solo tienen sesiones InProgress se desconectan tras un tiempo de espera específico de la implementación. Use el valor de 45 segundos compatible con Windows y ejecute la comprobación de caducidad periódicamente tanto para TCP como para SMB Direct.

Mantenga el cero como tiempo de caducidad de credenciales infinito y cuente cada transición de Valid a Expired. Establezca las sesiones caducadas en InProgress cuando se reautentiquen. Si la autenticación falla, elimine la sesión de las tablas global y por conexión inmediatamente, incluidas las conexiones SMB3 multicanal.

Conserve la protección frente a intercambios abandonados con SessionId cero permitiendo solo una autenticación InProgress por conexión. Los intercambios adicionales fallan con STATUS_INSUFFICIENT_RESOURCES, y las sesiones InProgress obsoletas se eliminan tras el mismo tiempo de espera de configuración de 45 segundos. Esto limita la ruta original de agotamiento de memoria no autenticada sin desalojar las sesiones establecidas.

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

CVSS

NVD no ha asignado puntuación CVSS a esta CVE (habitual desde el cambio de política de abril de 2026).

Probabilidad de explotación (EPSS)

Probabilidad de explotación en los próximos 30 días
0.24 %
Percentil entre todas las CVEs puntuadas
14
Fecha de la puntuación
21/10/2026

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).

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.

Referencias

Mostrar las 2 referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-98420",
  "cveTags": [],
  "metrics": {},
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "ea174a91893956450510945a0c5d1a10b5323656",
              "lessThan": "c99ea7855124ca1428a1e59c2b4590aaef34eacf",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "ea174a91893956450510945a0c5d1a10b5323656",
              "lessThan": "d7fd1f98607f2cd358e583f9548bdf0173090a86",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "a6a9601ba995d0fec635324cb9fd8d14f9bea14e",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "1fc8a2b14ef5223f8e0b95faba2ee0a6e4d0f99d",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "750a2d772e9d9ff377fd32e3b6797bf2cd847a7a",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "6775ee7ef4b37c521aa4cf3730f54554c4875542",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "5.15.145",
              "lessThan": "5.16",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "6.1.29",
              "lessThan": "6.2",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "6.2.16",
              "lessThan": "6.3",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "6.3.2",
              "lessThan": "6.4",
              "versionType": "semver"
            }
          ],
          "programFiles": [
            "fs/smb/server/connection.c",
            "fs/smb/server/connection.h",
            "fs/smb/server/mgmt/user_session.c",
            "fs/smb/server/mgmt/user_session.h",
            "fs/smb/server/proc.c",
            "fs/smb/server/server.c",
            "fs/smb/server/smb2pdu.c",
            "fs/smb/server/smb2pdu.h",
            "fs/smb/server/stats.h"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.4"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "6.4",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "7.2.8",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "fs/smb/server/connection.c",
            "fs/smb/server/connection.h",
            "fs/smb/server/mgmt/user_session.c",
            "fs/smb/server/mgmt/user_session.h",
            "fs/smb/server/proc.c",
            "fs/smb/server/server.c",
            "fs/smb/server/smb2pdu.c",
            "fs/smb/server/smb2pdu.h",
            "fs/smb/server/stats.h"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-10-14T14:17:53.427",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/c99ea7855124ca1428a1e59c2b4590aaef34eacf",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/d7fd1f98607f2cd358e583f9548bdf0173090a86",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: follow SMB2 session expiration semantics\n\nksmbd_session_register() destroys valid sessions after ten seconds of\ninactivity whenever a client starts another SessionSetup exchange. This\nconfuses Session.IdleTime with Session.ExpirationTime. Windows can create\nadditional authenticated sessions on an existing connection, so deleting\nthe older session invalidates its tree connects and makes mapped drives\nfail with STATUS_NETWORK_NAME_DELETED.\n\nThe session expiration rules require the server to change a valid session\nto expired only after its credential expiration time passes. A valid or\nexpired session otherwise keeps its connection from being scavenged.\nConnections that have not negotiated a dialect, have no sessions, or have\nonly InProgress sessions are disconnected after an implementation-specific\ntimeout. Use the Windows-compatible 45 second value and run the expiration\ncheck periodically for both TCP and SMB Direct.\n\nKeep zero as an infinite credential expiration time, and count each\nValid-to-Expired transition. Set expired sessions to InProgress when they\nreauthenticate. If authentication fails, remove the session from the\nglobal and per-connection tables immediately, including SMB3 multichannel\nconnections.\n\nRetain protection against abandoned SessionId-zero exchanges by allowing\nonly one InProgress authentication per connection. Additional exchanges\nfail with STATUS_INSUFFICIENT_RESOURCES, and stale InProgress sessions are\nreaped after the same 45 second setup timeout. This bounds the original\nunauthenticated memory-exhaustion path without evicting established\nsessions."
    }
  ],
  "lastModified": "2026-10-19T10:18:47.533",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}