CVE-2025-38488

HIGHNVD 7.87.8—
EchelonGraph scoreMEDIUM confidence

Score 7.8 from GitHub Security Advisory (severity: HIGH) published 2025-07-28. NVD baseline CVSS 7.8; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, nvd
7.8EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 1%CVSS: 7.8Exploit: None knownExposed: 0

A fix is available — apply it.

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

smb: client: fix use-after-free in crypt_message when using async crypto

The CVE-2024-50047 fix removed asynchronous crypto handling from crypt_message(), assuming all crypto operations are synchronous. However, when hardware crypto accelerators are used, this can cause use-after-free crashes:

crypt_message() // Allocate the creq buffer containing the req creq = smb2_get_aead_req(..., &req);

// Async encryption returns -EINPROGRESS immediately rc = enc ? crypto_aead_encrypt(req) : crypto_aead_decrypt(req);

// Free creq while async operation is still in progress kvfree_sensitive(creq, ...);

Hardware crypto modules often implement async AEAD operations for performance. When crypto_aead_encrypt/decrypt() returns -EINPROGRESS, the operation completes asynchronously. Without crypto_wait_req(), the function immediately frees the request buffer, leading to crashes when the driver later accesses the freed memory.

This results in a use-after-free condition when the hardware crypto driver later accesses the freed request structure, leading to kernel crashes with NULL pointer dereferences.

The issue occurs because crypto_alloc_aead() with mask=0 doesn't guarantee synchronous operation. Even without CRYPTO_ALG_ASYNC in the mask, async implementations can be selected.

Fix by restoring the async crypto handling:

  • DECLARE_CRYPTO_WAIT(wait) for completion tracking
  • aead_request_set_callback() for async completion notification
  • crypto_wait_req() to wait for operation completion

This ensures the request buffer isn't freed until the crypto operation completes, whether synchronous or asynchronous, while preserving the CVE-2024-50047 fix.

CVSS v3
7.8
EG Score
7.8(medium)
EG Risk
40(Track)
EG Risk 40/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
Severity78% × 45%
Exploitation1% × 40%
Automatability30% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
1%
EPSS %ILE
49%
KEV
Not listed

Published

July 28, 2025

Last Modified

August 5, 2026

Advisory Details (9)

Auto-updated Jul 30, 2026
Patch available.
generic Patch Available

[SECURITY] [DLA 4328-1] linux-6.1 security update

https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
generic Patch Available

[SECURITY] [DLA 4327-1] linux security update

https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
generic

smb: client: fix use-after-free in crypt_message when using async crypto - kernel/git/stable/linux.git - Linux kernel stable tree

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

smb: client: fix use-after-free in crypt_message when using async crypto - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/9a1d3e8d40f151c2d5a5f40c410e6e433f62f438
generic

smb: client: fix use-after-free in crypt_message when using async crypto - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/8ac90f6824fc44d2e55a82503ddfc95defb19ae0
generic

smb: client: fix use-after-free in crypt_message when using async crypto - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/6550b2bef095d0dd2d2c8390d2ea4c3837028833
generic

smb: client: fix use-after-free in crypt_message when using async crypto - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/5d047b12f86cc3b9fde1171c02d9bccf4dba0632
generic

smb: client: fix use-after-free in crypt_message when using async crypto - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/2a76bc2b24ed889a689fb1c9015307bf16aafb5b
generic

smb: client: fix use-after-free in crypt_message when using async crypto - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/15a0a5de49507062bc3be4014a403d8cea5533de

Patch Availability(31)

Vendor / EcosystemFixed in / PatchReleasedSource
ubuntulinux-tools-realtime-hwe-24.04-edge (6.14.0-1016.16~24.04.1) @ noble2026-07-30ubuntu
ubuntulinux-tools-oem-6.14 (6.14.0-1016.16) @ noble2026-07-30ubuntu
ubuntulinux-tools-oracle-edge (6.14.0-1017.17~24.04.1) @ noble2026-07-30ubuntu
ubuntulinux-tools-realtime-5.15 (5.15.0.1096.100) @ jammy2026-07-30ubuntu
ubuntulinux-tools-gkeop-5.15 (5.15.0.1080.79) @ jammy2026-07-30ubuntu
ubuntulinux-tools-azure-fips-5.15 (5.15.0.1101.86) @ jammy2026-07-30ubuntu
ubuntulinux-tools-kvm-5.15 (5.15.0.1089.85) @ jammy2026-07-30ubuntu
ubuntulinux-tools-azure-lts-22.04 (5.15.0.1101.99) @ jammy2026-07-30ubuntu
ubuntulinux-tools-gcp-fips-5.15 (5.15.0.1097.87) @ jammy2026-07-30ubuntu
ubuntulinux-tools-raspi-6.14 (6.14.0-1018.18) @ plucky2026-07-30ubuntu
ubuntulinux-tools-azure-6.14 (6.14.0-1017.17) @ plucky2026-07-30ubuntu
ubuntulinux-tools-raspi-nolpae (5.15.0.1091.89) @ jammy2026-07-30ubuntu
ubuntulinux-tools-realtime-6.8.1 (6.8.1-1041.42) @ noble2026-07-30ubuntu
ubuntulinux-virtual-6.8 (6.8.0-100.100) @ noble2026-07-30ubuntu
ubuntulinux-tools-gcp-fips-6.8 (6.8.0-1047.50+fips1) @ noble2026-07-30ubuntu
ubuntulinux-tools-gke-64k-6.8 (6.8.0-1043.48) @ noble2026-07-30ubuntu
ubuntulinux-tools-azure-edge (6.8.0-1051.57~22.04.1) @ jammy2026-07-30ubuntu
ubuntulinux-tools-oracle-lts-24.04 (6.8.0-1043.44) @ noble2026-07-30ubuntu
ubuntulinux-tools-nvidia-lowlatency-64k-6.8 (6.8.0-1046.49.1) @ noble2026-07-30ubuntu
ubuntulinux-tools-gcp-edge (6.8.0-1047.50~22.04.2) @ jammy2026-07-30ubuntu
ubuntulinux-tools-lowlatency-hwe-20.04-edge (6.8.0-100.100.1) @ noble2026-07-30ubuntu
ubuntulinux-tools-azure-lts-24.04 (6.8.0-1046.52) @ noble2026-07-30ubuntu
ubuntulinux-tools-fips-6.8 (6.8.0-100.100+fips1) @ noble2026-07-30ubuntu
ubuntulinux-tools-realtime-hwe-22.04 (6.8.1-1041.42~22.04.1) @ jammy2026-07-30ubuntu
ubuntulinux-xilinx-zynqmp (6.8.0.1023.24) @ noble2026-07-30ubuntu
ubuntulinux-tools-ibm-edge (6.8.0-1044.44~22.04.1) @ jammy2026-07-30ubuntu
ubuntulinux (6.17.0-1) @ questing2026-07-30ubuntu
ubuntulinux-virtual-hwe-24.04-edge (6.14.0-36.36) @ plucky2026-07-30ubuntu
ubuntulinux-tools-azure-edge (5.15.0.1102.111~20.04.1) @ focal2026-07-30ubuntu
ubuntulinux-virtual-hwe-22.04-edge (6.8.0-100.100~22.04.1) @ jammy2026-07-30ubuntu
linuxKernel @ 5.10.241—osv

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.

Affected Packages

(5 across 4 ecosystems)
Debian:11(2)
PackageVulnerable rangeFixed inDependents
linux5.10.103-1 ... 5.10.92-2 (46 versions)5.10.244-1—
linux-6.16.1.106-3~deb11u1 ... 6.1.148-1~deb11u1 (11 versions)6.1.153-1~deb11u1—
Debian:12(1)
PackageVulnerable rangeFixed inDependents
linux6.1.106-1 ... 6.1.99-1 (41 versions)6.1.147-1—
Debian:13(1)
PackageVulnerable rangeFixed inDependents
linux6.12.38-16.12.41-1—
Debian:14(1)
PackageVulnerable rangeFixed inDependents
linux6.12.100-1 ... 6.16~rc7-1~exp1 (62 versions)6.16.3-1—

Weakness Classification(1)

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

All Vendor Advisories

(25)

Every vendor that published an advisory referencing this CVE — pulled from our cve_vendor_advisories aggregation. Click any row for the vendor's original advisory page.

Data Freshness Timeline

(refreshed 4× in last 7d / 25× 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 150 total refreshes for this CVE.

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

Related CVEs are temporarily unavailable — the same-product, same-vendor and same-CWE lists could not be loaded just now. That is not a sign that none exist; please retry shortly.

Frequently asked(5)

What is CVE-2025-38488?
CVE-2025-38488 is a high vulnerability published on July 28, 2025. In the Linux kernel, the following vulnerability has been resolved: smb: client: fix use-after-free in crypt_message when using async crypto The CVE-2024-50047 fix removed asynchronous crypto handling from crypt_message(), assuming all crypto operations are synchronous. However, when hardware…
When was CVE-2025-38488 disclosed?
CVE-2025-38488 was first published in the National Vulnerability Database on July 28, 2025, with the most recent update on August 5, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2025-38488 actively exploited?
CVE-2025-38488 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 1% probability of exploitation in the next 30 days, which ranks it in the top 51.3% of all scored CVEs.
What is the CVSS score of CVE-2025-38488?
CVE-2025-38488 has a CVSS v3 base score of 7.8 (NVD).
How do I remediate CVE-2025-38488?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2025-38488, 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

See which npm, PyPI, Go, and Maven packages are affected by CVE-2025-38488

Explore →

Is Your Infrastructure Affected by CVE-2025-38488?

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