> CVE-2026-14367 [LOW]

« BACK_TO_HOME
PUBLISHED
2026-08-31 19:16
MODIFIED
2026-08-31 19:16
CVSS_SCORE V3
3.1
EPSS (Prob. Exploit)
0.10%
Top 99.1%
DATA SOURCES:
NVD đź”— 2026-08-31 CWE MITRE đź”— 2026-09-01 FIRST EPSS đź”— 2026-10-18 OSV đź”— 2026-10-26

> DESCRIPTION

The I3C IBI subsystem in drivers/i3c/i3c_ibi_workq.c hands out statically-allocated work nodes through a free-list i3c_ibi_work_nodes_free implemented as a plain sys_slist_t, which provides no synchronization. The allocation helpers (i3c_ibi_work_enqueue, i3c_ibi_work_enqueue_target_irq, i3c_ibi_work_enqueue_hotjoin, i3c_ibi_work_enqueue_controller_request, i3c_ibi_work_enqueue_cb) called sys_slist_get() directly from ISR context, while the workqueue handler i3c_ibi_work_handler() returned nodes with sys_slist_append() from the workqueue thread, with no lock on either side. Because sys_slist_get() and sys_slist_append() are neither atomic nor interrupt-safe, an IBI interrupt that fires while the workqueue thread is mid-append (or a truly parallel access under CONFIG_SMP) races on the shared list. This corrupts the list linkage: a node may be handed to two consumers, a node may be lost, or the head/tail pointers may be left inconsistent so sys_slist_get() returns a stale or garbage pointer. In the double-hand-out case the subsequent memcpy(ibi_node, ibi_work, sizeof(*ibi_node)) overwrites a node still in flight; a garbage pointer turns the same memcpy into an out-of-bounds write. The race is driven by I3C bus traffic — IBIs, hot-joins, and controller-role requests originate from target devices on the bus, and I3C supports hot-joining devices. An attacker controlling an I3C peripheral on the board's chip-to-chip bus can generate high-frequency interrupts timed to collide with the free operation. Exploitation requires physical access to the bus and winning a narrow timing window; the most realistic impact is a crash or hang (denial of service), with memory corruption possible but hard to control. The fix wraps all free-list sys_slist_get()/sys_slist_append() operations in the new ibi_work_alloc()/ibi_work_free() helpers, each guarded by a k_spinlock (ibi_work_lock), closing the race across ISR and thread contexts.

> AFFECTED_PRODUCTS

ℹ️ Aucun produit affecté n'a encore été publié par NVD pour cette CVE.

> CVSS V3 METRICS

CVSS_VECTOR
CVSS:3.1/AV:P/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L
EXPLOITABILITY
0.5
IMPACT
2.5

> MÉTRIQUES CVSS DÉTAILLÉES

CVSS:3.1/AV:P/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L
Métrique Valeur Interprétation
AV (Vecteur d'Attaque)
Attack Vector
Physical (P)
Exploit nécessite un accès physique à l'appareil
AC (Complexité d'Attaque)
Attack Complexity
High (H)
Conditions spécifiques doivent être réunies pour exploiter
PR (Privilèges Requis)
Privileges Required
None (N)
Aucune authentification requise
UI (Interaction Utilisateur)
User Interaction
None (N)
Aucune interaction utilisateur nécessaire
S (Périmètre)
Scope
Unchanged (U)
Impact reste dans le périmètre du composant compromis
C (Impact Confidentialité)
Confidentiality Impact
None (N)
Aucune divulgation d'informations
I (Impact Intégrité)
Integrity Impact
Low (L)
Modification limitée des données possible
A (Impact Disponibilité)
Availability Impact
Low (L)
Interruption partielle du service possible

> RÉSUMÉ DES IMPACTS

Confidentialité
None
Aucune divulgation d'informations
Intégrité
Low
Modification limitée des données possible
Disponibilité
Low
Interruption partielle du service possible

> WEAKNESSES

CWE-362

> CWE DETAILED DESCRIPTIONS

CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') - The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently.

> OSV (GOOGLE OPEN SOURCE VULNERABILITIES)

I3C IBI work-node free-list data race between ISR and workqueue thread

AFFECTED PACKAGES:
Unknown / Unknown
48 versions affected
ALIASES:
GHSA-gfj5-gcxv-9jqm

> HISTORIQUE DES MODIFICATIONS

Première apparition
31/08/2026 19:16
Source: NVD
📊 ENRICHISSEMENT 01/09/2026 06:02
CWE
Champ modifié: Description CWE
Ancienne valeur:
N/A
Nouvelle valeur:
CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') - The product contains a concurrent code sequence that requires temporary, exclusive access to a sh...
Total des modifications: 1 Dernière mise à jour: 1 month ago

> REFERENCES

https://github.com/zephyrproject-rtos/zephyr/commit/e87e7e2ac7c5ded0af3fb5934518...
https://github.com/zephyrproject-rtos/zephyr/security/advisories/GHSA-gfj5-gcxv-...
« BACK_TO_HOME