CVE-2026-31610

MEDIUMNVD 5.55.5
EchelonGraph scoreMEDIUM confidence

Score 5.5 from GitHub Security Advisory published 2026-04-24. NVD baseline CVSS 5.5; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, nvd
Trending — 5 sources updated this week
5.5EG
EchelonGraph verdictMonitorLow exploitation likelihood right now — keep watching.
  • Lower severity and no public exploit yet
CISA-KEV: Not listedEPSS PROB: 0%CVSS: 5.5Exploit: None knownExposed: 0

A fix is available — apply it.

In the Linux kernel, the following vulnerability has been resolved:

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc

The kernel ASN.1 BER decoder calls action callbacks incrementally as it walks the input. When ksmbd_decode_negTokenInit() reaches the mechToken [2] OCTET STRING element, ksmbd_neg_token_alloc() allocates conn->mechToken immediately via kmemdup_nul(). If a later element in the same blob is malformed, then the decoder will return nonzero after the allocation is already live. This could happen if mechListMIC [3] overrunse the enclosing SEQUENCE.

decode_negotiation_token() then sets conn->use_spnego = false because both the negTokenInit and negTokenTarg grammars failed. The cleanup at the bottom of smb2_sess_setup() is gated on use_spnego:

if (conn->use_spnego && conn->mechToken) { kfree(conn->mechToken); conn->mechToken = NULL; }

so the kfree is skipped, causing the mechToken to never be freed.

This codepath is reachable pre-authentication, so untrusted clients can cause slow memory leaks on a server without even being properly authenticated.

Fix this up by not checking check for use_spnego, as it's not required, so the memory will always be properly freed. At the same time, always free the memory in ksmbd_conn_free() incase some other failure path forgot to free it.

CVSS v3
5.5
EG Score
5.5(medium)
EG Risk
29(Track)
EG Risk 29/100SSVC: Track

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity55% × 45%
Exploitation0% × 40%
Automatability30% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
0%
EPSS %ILE
3%
KEV
Not listed

Published

April 24, 2026

Last Modified

July 24, 2026

Advisory Details (8)

Auto-updated Jul 24, 2026
No patch confirmed yet.
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/dd577cb55588ec3fbc66af3621280306601c4192
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/dd53414e301beb915fe672dc4c4a51bafb917604
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/bd4a7fb04f06f419b0e93d8b52fe32067eb312d1
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/ae9cdb29efed20ffdee9ff3b0bb72fb369c353da
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/ad0057fb91218914d6c98268718ceb9d59b388e1
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/745a535461bbb90a56d9357573c9f97a5c12abe1
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/6c8c44e6553b9f072f62d9875e567766eb293162
generic

ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/269c800a7a7e363459291885b35f7bc72e231ed6

Vendor Advisories for CVE-2026-31610(2)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Patch Availability(16)

Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Additional Vendor Advisories

(15)

Data Freshness Timeline

(refreshed 16× in last 7d / 48× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

Showing the most recent 100 of 140 total refreshes for this CVE.

  1. 2026-07-26 14:54 UTCEPSS rescore
  2. 2026-07-26 14:54 UTCEPSS rescore
  3. 2026-07-26 08:35 UTCEG score recompute
  4. 2026-07-26 08:35 UTCVendor advisory
  5. 2026-07-26 08:34 UTCGHSA enrichment
  6. 2026-07-24 16:11 UTCNVD updateCVSS v3 → 5.5 · severity → MEDIUM
  7. 2026-07-24 14:17 UTCEPSS rescore
  8. 2026-07-23 14:18 UTCEPSS rescore
  9. 2026-07-23 14:18 UTCEPSS rescore
  10. 2026-07-23 03:08 UTCEG score recompute
  11. 2026-07-22 14:08 UTCEPSS rescore
  12. 2026-07-22 14:08 UTCEPSS rescore
  13. 2026-07-21 15:24 UTCEPSS rescore
  14. 2026-07-21 15:24 UTCEPSS rescore
  15. 2026-07-20 17:08 UTCEPSS rescore
  16. 2026-07-20 17:08 UTCEPSS rescore
  17. 2026-07-19 23:08 UTCOSV refresh
  18. 2026-07-19 14:31 UTCEPSS rescore
  19. 2026-07-19 14:31 UTCEPSS rescore
  20. 2026-07-19 02:29 UTCEPSS rescore
  21. 2026-07-18 10:04 UTCEPSS rescore
  22. 2026-07-18 10:04 UTCEPSS rescore
  23. 2026-07-16 17:03 UTCEPSS rescore
  24. 2026-07-16 17:03 UTCEPSS rescore
  25. 2026-07-15 16:57 UTCEPSS rescore
Show 75 more
  1. 2026-07-15 16:57 UTCEPSS rescore
  2. 2026-07-15 02:00 UTCEPSS rescore
  3. 2026-07-15 02:00 UTCEPSS rescore
  4. 2026-07-13 22:30 UTCEPSS rescore
  5. 2026-07-13 06:13 UTCEPSS rescore
  6. 2026-07-13 06:13 UTCEPSS rescore
  7. 2026-07-12 05:46 UTCEPSS rescore
  8. 2026-07-11 08:27 UTCEPSS rescore
  9. 2026-07-09 19:10 UTCEPSS rescore
  10. 2026-07-08 15:15 UTCEPSS rescore
  11. 2026-07-07 13:46 UTCEPSS rescore
  12. 2026-07-06 02:23 UTCEPSS rescore
  13. 2026-07-06 02:23 UTCEPSS rescore
  14. 2026-07-05 02:30 UTCEPSS rescore
  15. 2026-07-04 06:31 UTCEPSS rescore
  16. 2026-07-01 15:06 UTCEPSS rescore
  17. 2026-06-30 23:22 UTCEPSS rescore
  18. 2026-06-29 14:06 UTCEPSS rescore
  19. 2026-06-29 14:06 UTCEPSS rescore
  20. 2026-06-28 14:07 UTCEPSS rescore
  21. 2026-06-28 14:07 UTCEPSS rescore
  22. 2026-06-28 04:56 UTCEPSS rescore
  23. 2026-06-28 04:56 UTCEPSS rescore
  24. 2026-06-27 03:08 UTCEPSS rescore
  25. 2026-06-25 13:49 UTCEPSS rescore
  26. 2026-06-25 13:49 UTCEPSS rescore
  27. 2026-06-24 14:05 UTCEPSS rescore
  28. 2026-06-23 21:33 UTCEPSS rescore
  29. 2026-06-23 21:33 UTCEPSS rescore
  30. 2026-06-22 14:25 UTCEPSS rescore
  31. 2026-06-22 14:25 UTCEPSS rescore
  32. 2026-06-21 14:56 UTCEPSS rescore
  33. 2026-06-21 14:56 UTCEPSS rescore
  34. 2026-06-19 19:25 UTCEPSS rescore
  35. 2026-06-19 19:25 UTCEPSS rescore
  36. 2026-06-18 17:52 UTCEPSS rescore
  37. 2026-06-18 17:52 UTCEPSS rescore
  38. 2026-06-17 17:53 UTCEPSS rescore
  39. 2026-06-16 17:52 UTCEPSS rescore
  40. 2026-06-15 17:49 UTCEPSS rescore
  41. 2026-06-14 23:28 UTCMITRE cvelistV5
  42. 2026-06-14 23:18 UTCEPSS rescore
  43. 2026-06-14 11:53 UTCVendor advisory
  44. 2026-06-14 11:53 UTCGHSA enrichment
  45. 2026-06-13 23:00 UTCEPSS rescore
  46. 2026-06-12 23:12 UTCEPSS rescore
  47. 2026-06-12 23:12 UTCEPSS rescore
  48. 2026-06-11 14:02 UTCVendor advisory
  49. 2026-06-11 14:02 UTCGHSA enrichment
  50. 2026-06-11 14:00 UTCEPSS rescore
  51. 2026-06-10 22:18 UTCEPSS rescore
  52. 2026-06-10 13:22 UTCEPSS rescore
  53. 2026-06-10 02:09 UTCVendor advisory
  54. 2026-06-10 02:09 UTCGHSA enrichment
  55. 2026-06-09 00:48 UTCVendor advisory
  56. 2026-06-09 00:48 UTCGHSA enrichment
  57. 2026-06-08 14:17 UTCEPSS rescore
  58. 2026-06-08 14:17 UTCEPSS rescore
  59. 2026-06-07 21:40 UTCVendor advisory
  60. 2026-06-07 21:40 UTCGHSA enrichment
  61. 2026-06-07 15:25 UTCEPSS rescore
  62. 2026-06-07 15:25 UTCEPSS rescore
  63. 2026-06-07 15:25 UTCEPSS rescore
  64. 2026-06-06 20:18 UTCVendor advisory
  65. 2026-06-06 20:18 UTCGHSA enrichment
  66. 2026-06-05 22:47 UTCEPSS rescore
  67. 2026-06-05 22:47 UTCEPSS rescore
  68. 2026-06-05 18:56 UTCVendor advisory
  69. 2026-06-05 18:56 UTCGHSA enrichment
  70. 2026-06-05 06:10 UTCEPSS rescore
  71. 2026-06-05 06:10 UTCEPSS rescore
  72. 2026-06-04 17:33 UTCVendor advisory
  73. 2026-06-04 17:33 UTCGHSA enrichment
  74. 2026-06-04 13:12 UTCEPSS rescore
  75. 2026-06-04 13:12 UTCEPSS rescore

Frequently asked(5)

What is CVE-2026-31610?
CVE-2026-31610 is a medium vulnerability published on April 24, 2026. In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix mechToken leak when SPNEGO decode fails after token alloc The kernel ASN.1 BER decoder calls action callbacks incrementally as it walks the input. When ksmbddecodenegTokenInit() reaches the mechToken [2] OCTET STRING…
When was CVE-2026-31610 disclosed?
CVE-2026-31610 was first published in the National Vulnerability Database on April 24, 2026, with the most recent update on July 24, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-31610 actively exploited?
CVE-2026-31610 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0% probability of exploitation in the next 30 days, which ranks it in the top 96.5% of all scored CVEs.
What is the CVSS score of CVE-2026-31610?
CVE-2026-31610 has a CVSS v3 base score of 5.5 (NVD).
How do I remediate CVE-2026-31610?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-31610, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-31610

Explore →

Is Your Infrastructure Affected by CVE-2026-31610?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.