CVE-2026-80557

CRITICALPre-NVD 9.89.8
EchelonGraph scoreHIGH confidence

Score 9.8 from GitHub Security Advisory (severity: CRITICAL) published 2026-08-27. a secondary CVSS source baseline 9.8; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, secondary
Trending — 5 sources updated this week
9.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: 9.8Exploit: None knownExposed: 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:

libceph: fix OOB read in decode_watchers() via missing bounds check

ceph_start_decoding() validates that struct_len bytes remain in the buffer after the encoding header, but accepts struct_len=0 as valid: ceph_decode_need(p, end, 0, bad) always passes. When a malicious or compromised OSD sends an obj_list_watch_response_t reply with struct_len=0, ceph_start_decoding() returns success with p == end, leaving zero bytes guaranteed for subsequent reads.

The immediately following ceph_decode_32(p) in decode_watchers() has no preceding bounds check. With p == end this is a 4-byte read past the validated buffer boundary. The garbage value is then passed directly to kzalloc_objs() as the watcher count.

The sibling function decode_watcher() already uses the safe variants (ceph_decode_copy_safe, ceph_decode_64_safe, ceph_decode_skip_32) after its own ceph_start_decoding() call. decode_watchers() is the only site that uses the bare variant, confirming an oversight.

Fix by replacing ceph_decode_32(p) with ceph_decode_32_safe(p, end, *num_watchers, bad), consistent with the established pattern.

Attacker model: a malicious or compromised OSD in a multi-tenant Ceph deployment (e.g. cloud) can trigger this against any kernel client that calls CEPH_OSD_OP_LIST_WATCHERS, without any further privileges beyond OSD session establishment.

[ idryomov: trim changelog ]

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

Published

August 26, 2026

Last Modified

August 27, 2026

Advisory Details (8)

Auto-updated Aug 27, 2026
No patch confirmed yet.
generic

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

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

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

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

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

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

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

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

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/85479b7d65b4ebcb07fbbe57230976793974ab4a
generic

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/7130d94846dadbb97b6b7f4d78a3a7bba6e3daa1
generic

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/1c824e7c75bb4adf19553dd4ea944a5d83096be8
generic

libceph: fix OOB read in decode_watchers() via missing bounds check - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/00ead17c7de137a692edee59f2772e6af687e8eb

Vendor Advisories for CVE-2026-80557(1)

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

Data Freshness Timeline

(refreshed 32× in last 7d / 32× 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.

  1. 2026-08-30 04:06 UTCEG score recompute
  2. 2026-08-30 04:06 UTCGHSA enrichment
  3. 2026-08-30 01:22 UTCEPSS rescore
  4. 2026-08-30 00:06 UTCGHSA enrichment
  5. 2026-08-29 20:07 UTCGHSA enrichment
  6. 2026-08-29 16:08 UTCGHSA enrichment
  7. 2026-08-29 12:07 UTCGHSA enrichment
  8. 2026-08-29 07:58 UTCGHSA enrichment
  9. 2026-08-29 03:57 UTCGHSA enrichment
  10. 2026-08-28 23:58 UTCEG score recompute
  11. 2026-08-28 23:57 UTCGHSA enrichment
  12. 2026-08-28 21:42 UTCEPSS rescore
  13. 2026-08-28 18:09 UTCGHSA enrichment
  14. 2026-08-28 14:09 UTCGHSA enrichment
  15. 2026-08-28 10:04 UTCGHSA enrichment
  16. 2026-08-28 06:04 UTCGHSA enrichment
  17. 2026-08-28 02:04 UTCGHSA enrichment
  18. 2026-08-27 22:03 UTCGHSA enrichment
  19. 2026-08-27 18:04 UTCEG score recompute
  20. 2026-08-27 18:04 UTCGHSA enrichment
  21. 2026-08-27 14:25 UTCEPSS rescore
  22. 2026-08-27 13:33 UTCEG score recompute
  23. 2026-08-27 13:33 UTCGHSA enrichment
  24. 2026-08-27 13:00 UTCEG score recompute
  25. 2026-08-27 13:00 UTCGHSA enrichment
Show 7 more
  1. 2026-08-27 10:19 UTCEG score recompute
  2. 2026-08-27 10:19 UTCGHSA enrichment
  3. 2026-08-27 06:19 UTCEG score recompute 9.80
  4. 2026-08-27 06:11 UTCMITRE cvelistV5CVSS v3 → 9.8 · severity → CRITICAL
  5. 2026-08-26 15:43 UTCNVD update
  6. 2026-08-26 14:42 UTCEG score recompute
  7. 2026-08-26 14:41 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-80557?
CVE-2026-80557 is a critical vulnerability published on August 26, 2026. In the Linux kernel, the following vulnerability has been resolved: libceph: fix OOB read in decode_watchers() via missing bounds check cephstartdecoding() validates that struct_len bytes remain in the buffer after the encoding header, but accepts struct_len=0 as valid: cephdecodeneed(p, end, 0,…
When was CVE-2026-80557 disclosed?
CVE-2026-80557 was first published in the National Vulnerability Database on August 26, 2026, with the most recent update on August 27, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-80557 actively exploited?
CVE-2026-80557 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 58.0% of all scored CVEs.
What is the CVSS score of CVE-2026-80557?
CVE-2026-80557 has a CVSS v3 base score of 9.8 (NVD).
How do I remediate CVE-2026-80557?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-80557, 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-80557

Explore →

Is Your Infrastructure Affected by CVE-2026-80557?

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