CVE-2026-31450

HIGHPre-NVD 8.88.8
EchelonGraph scoreMEDIUM confidence

Score 8.8 from GitHub Security Advisory (severity: HIGH) published 2026-04-22. NVD baseline CVSS 8.8; sources differ by 0.0.

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

No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.

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

ext4: publish jinode after initialization

ext4_inode_attach_jinode() publishes ei->jinode to concurrent users. It used to set ei->jinode before jbd2_journal_init_jbd_inode(), allowing a reader to observe a non-NULL jinode with i_vfs_inode still unset.

The fast commit flush path can then pass this jinode to jbd2_wait_inode_data(), which dereferences i_vfs_inode->i_mapping and may crash.

Below is the crash I observe:

BUG: unable to handle page fault for address: 000000010beb47f4
PGD 110e51067 P4D 110e51067 PUD 0
Oops: Oops: 0000 [#1] SMP NOPTI
CPU: 1 UID: 0 PID: 4850 Comm: fc_fsync_bench_ Not tainted 6.18.0-00764-g795a690c06a5 #1 PREEMPT(voluntary)
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Arch Linux 1.17.0-2-2 04/01/2014
RIP: 0010:xas_find_marked+0x3d/0x2e0
Code: e0 03 48 83 f8 02 0f 84 f0 01 00 00 48 8b 47 08 48 89 c3 48 39 c6 0f 82 fd 01 00 00 48 85 c9 74 3d 48 83 f9 03 77 63 4c 8b 0f <49> 8b 71 08 48 c7 47 18 00 00 00 00 48 89 f1 83 e1 03 48 83 f9 02
RSP: 0018:ffffbbee806e7bf0 EFLAGS: 00010246
RAX: 000000000010beb4 RBX: 000000000010beb4 RCX: 0000000000000003
RDX: 0000000000000001 RSI: 0000002000300000 RDI: ffffbbee806e7c10
RBP: 0000000000000001 R08: 0000002000300000 R09: 000000010beb47ec
R10: ffff9ea494590090 R11: 0000000000000000 R12: 0000002000300000
R13: ffffbbee806e7c90 R14: ffff9ea494513788 R15: ffffbbee806e7c88
FS: 00007fc2f9e3e6c0(0000) GS:ffff9ea6b1444000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000000010beb47f4 CR3: 0000000119ac5000 CR4: 0000000000750ef0
PKRU: 55555554
Call Trace:

filemap_get_folios_tag+0x87/0x2a0 __filemap_fdatawait_range+0x5f/0xd0 ? srso_alias_return_thunk+0x5/0xfbef5 ? __schedule+0x3e7/0x10c0 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? preempt_count_sub+0x5f/0x80 ? srso_alias_return_thunk+0x5/0xfbef5 ? cap_safe_nice+0x37/0x70 ? srso_alias_return_thunk+0x5/0xfbef5 ? preempt_count_sub+0x5f/0x80 ? srso_alias_return_thunk+0x5/0xfbef5 filemap_fdatawait_range_keep_errors+0x12/0x40 ext4_fc_commit+0x697/0x8b0 ? ext4_file_write_iter+0x64b/0x950 ? srso_alias_return_thunk+0x5/0xfbef5 ? preempt_count_sub+0x5f/0x80 ? srso_alias_return_thunk+0x5/0xfbef5 ? vfs_write+0x356/0x480 ? srso_alias_return_thunk+0x5/0xfbef5 ? preempt_count_sub+0x5f/0x80 ext4_sync_file+0xf7/0x370 do_fsync+0x3b/0x80 ? syscall_trace_enter+0x108/0x1d0 __x64_sys_fdatasync+0x16/0x20 do_syscall_64+0x62/0x2c0 entry_SYSCALL_64_after_hwframe+0x76/0x7e ...

Fix this by initializing the jbd2_inode first. Use smp_wmb() and WRITE_ONCE() to publish ei->jinode after initialization. Readers use READ_ONCE() to fetch the pointer.

CVSS v3
8.8
EG Score
8.8(medium)
EPSS
41.4%
KEV
Not listed

Published

April 22, 2026

Last Modified

July 14, 2026

Advisory Details (8)

Auto-updated May 2, 2026
No patch confirmed yet.
generic

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

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

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

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

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

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

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

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

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/4855a59e21789c79f003a9b5f4135c95a7495c6b
generic

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/33f486987af21531a7b18973d11795ede3da9ddd
generic

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

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

ext4: publish jinode after initialization - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/1aec30021edd410b986c156f195f3d23959a9d11

Vendor Advisories for CVE-2026-31450(2)

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

Weakness Classification(1)

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

Data Freshness Timeline

(refreshed 11× in last 7d / 43× 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 141 total refreshes for this CVE.

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

Frequently asked(5)

What is CVE-2026-31450?
CVE-2026-31450 is a high vulnerability published on April 22, 2026. In the Linux kernel, the following vulnerability has been resolved: ext4: publish jinode after initialization ext4inodeattach_jinode() publishes ei->jinode to concurrent users. It used to set ei->jinode before jbd2journalinitjbdinode(), allowing a reader to observe a non-NULL jinode with ivfsinode…
When was CVE-2026-31450 disclosed?
CVE-2026-31450 was first published in the National Vulnerability Database on April 22, 2026, with the most recent update on July 14, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-31450 actively exploited?
CVE-2026-31450 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 41.4% percentile likelihood of exploitation in the next 30 days — higher percentiles indicate greater predicted risk.
What is the CVSS score of CVE-2026-31450?
CVE-2026-31450 has a CVSS v3 base score of 8.8 (NVD).
How do I remediate CVE-2026-31450?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-31450, 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-31450

Explore →

Is Your Infrastructure Affected by CVE-2026-31450?

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