CVE-2026-68173

HIGHPre-NVD 7.17.1
EchelonGraph scoreHIGH confidence

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

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, secondary
Trending — 3 sources updated this week
7.1EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0%CVSS: 7.1Exploit: 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:

ublk: wait on ublk_dev_ready() instead of ub->completion

ub->completion is only re-armed by a successful START_USER_RECOVERY. If the ublk server sends END_USER_RECOVERY without one - e.g. its START failed with -EBUSY and the error was ignored - the wait is satisfied by the stale completion of the previous recovery cycle, and the device is marked LIVE and the requeue list kicked while the FETCH stream is still running and ubq->canceling is still set. The kick redispatches a previously requeued request, __ublk_queue_rq_common() sees ->canceling and parks it again via __ublk_abort_rq(), and after the last FETCH clears ->canceling nothing ever kicks the requeue list again: the request is stranded there while holding its tag. If it is the flush machinery's flush_rq, every subsequent fsync piles up in uninterruptible sleep and teardown hangs on tag draining. This matches a report of a lost PREFLUSH with ext4 on top of ublk after daemon crash recovery.

ub->completion is an edge-triggered latch used as a proxy for the level condition "every queue has fetched all I/O commands", which can regress (F_BATCH's UNPREP, daemon death) and whose re-arm can be skipped. Drop it and wait on the real condition instead: the new helper ublk_wait_dev_ready_and_lock() waits on ublk_dev_ready() via wait_var_event_interruptible(), woken from ublk_mark_io_ready(), then re-checks it under ub->mutex, waiting again on regression, and returns with the mutex held and readiness guaranteed.

Readiness becomes true in the same ub->mutex critical section that clears the last queue's ->canceling, so END_USER_RECOVERY marks the device LIVE and kicks the requeue list strictly after ->canceling clears. The wait stays interruptible, so a server whose daemon died can still be signalled out. For ublk_ctrl_start_dev() this replaces the fail-fast -EINVAL on an F_BATCH ready->UNPREP regression with waiting until the device is ready again.

CVSS v3
7.1
EG Score
7.1(high)
EG Risk
37(Track)
EG Risk 37/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
Severity71% × 45%
Exploitation0% × 40%
Automatability30% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
0%
EPSS %ILE
5%
KEV
Not listed

Published

August 10, 2026

Last Modified

August 17, 2026

Advisory Details (3)

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

ublk: wait on ublk_dev_ready() instead of ub->completion - kernel/git/stable/linux.git - Linux kernel stable tree

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

ublk: wait on ublk_dev_ready() instead of ub->completion - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/7dd26adf7e7d482af524e3a0cca4a81ef7c159d0
generic

ublk: wait on ublk_dev_ready() instead of ub->completion - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/432a9b2780c0a01caf547bd1fc2fcf28aeb8d173

Vendor Advisories for CVE-2026-68173(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 29× in last 7d / 41× 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-20 22:56 UTCEPSS rescore
  2. 2026-08-20 22:49 UTCGHSA enrichment
  3. 2026-08-20 10:15 UTCGHSA enrichment
  4. 2026-08-19 21:41 UTCEG score recompute
  5. 2026-08-19 21:41 UTCGHSA enrichment
  6. 2026-08-19 17:04 UTCEPSS rescore
  7. 2026-08-19 09:06 UTCGHSA enrichment
  8. 2026-08-18 20:28 UTCEG score recompute
  9. 2026-08-18 20:28 UTCGHSA enrichment
  10. 2026-08-18 13:48 UTCEPSS rescore
  11. 2026-08-18 07:54 UTCGHSA enrichment
  12. 2026-08-17 19:20 UTCEG score recompute
  13. 2026-08-17 19:20 UTCGHSA enrichment
  14. 2026-08-17 13:47 UTCEPSS rescore
  15. 2026-08-17 05:40 UTCEG score recompute
  16. 2026-08-17 05:40 UTCGHSA enrichment
  17. 2026-08-17 05:10 UTCEG score recompute
  18. 2026-08-17 05:10 UTCGHSA enrichment
  19. 2026-08-17 02:57 UTCEG score recompute
  20. 2026-08-17 02:57 UTCGHSA enrichment
  21. 2026-08-16 14:56 UTCEPSS rescore
  22. 2026-08-16 14:22 UTCGHSA enrichment
  23. 2026-08-16 01:48 UTCGHSA enrichment
  24. 2026-08-15 13:14 UTCEG score recompute
  25. 2026-08-15 13:14 UTCGHSA enrichment
Show 16 more
  1. 2026-08-15 01:30 UTCEPSS rescore
  2. 2026-08-15 00:39 UTCGHSA enrichment
  3. 2026-08-14 12:04 UTCEG score recompute
  4. 2026-08-14 12:04 UTCGHSA enrichment
  5. 2026-08-13 23:30 UTCEG score recompute
  6. 2026-08-13 23:30 UTCGHSA enrichment
  7. 2026-08-13 22:45 UTCEG score recompute 7.10
  8. 2026-08-13 22:45 UTCGHSA enrichment
  9. 2026-08-13 22:44 UTCMITRE cvelistV5CVSS v3 → 7.1 · severity → HIGH
  10. 2026-08-13 22:00 UTCEPSS rescore
  11. 2026-08-13 19:37 UTCEG score recompute
  12. 2026-08-13 19:37 UTCGHSA enrichment
  13. 2026-08-12 13:51 UTCEPSS rescore
  14. 2026-08-10 13:24 UTCNVD update
  15. 2026-08-10 12:20 UTCEG score recompute
  16. 2026-08-10 12:17 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-68173?
CVE-2026-68173 is a high vulnerability published on August 10, 2026. In the Linux kernel, the following vulnerability has been resolved: ublk: wait on ublkdevready() instead of ub->completion ub->completion is only re-armed by a successful STARTUSERRECOVERY. If the ublk server sends ENDUSERRECOVERY without one - e.g. its START failed with -EBUSY and the error was…
When was CVE-2026-68173 disclosed?
CVE-2026-68173 was first published in the National Vulnerability Database on August 10, 2026, with the most recent update on August 17, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-68173 actively exploited?
CVE-2026-68173 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 94.6% of all scored CVEs.
What is the CVSS score of CVE-2026-68173?
CVE-2026-68173 has a CVSS v3 base score of 7.1 (NVD).
How do I remediate CVE-2026-68173?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-68173, 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-68173

Explore →

Is Your Infrastructure Affected by CVE-2026-68173?

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