Aller au contenu
EXYS
Retour aux CVE

CVE-2026-98163

7, élevé

Linux Race Condition Vulnerability

CVSS
7, élevé élevée CVSS v3.1
EPSS, 30 prochains jours
0,1% supérieur à 1% des CVE notées
Exploitation
Aucune preuve publique
Publiée
26 sept. 2026il y a 21 jours

Description

In the Linux kernel, the following vulnerability has been resolved: cgroup: Avoid iteration of dying tasks with zero refcount The commit 260fbcb92bbea ("cgroup: Move dying_tasks cleanup from cgroup_task_release() to cgroup_task_free()") extended the lifetime of tasks on the dying_tasks list. The iterators have provision to go through dying_tasks because of dying threadgroup leaders or explicit CSS_TASK_ITER_WITH_DEAD, however, it was expected that such tasks can obtain a new reference (that is possible before cgroup_task_release()/put_task_struct_rcu_user()). The tasks after cgroup_task_release() and before cgroup_task_free() are subject to race when they may or may not have ->usage count > 0. The race window is between css_task_iter_next() invocations when css_set_lock is released and we may arrive at a new ->task_pos. The iterator should not attempt to resurrect tasks whose ->usage count dropped to zero. (When that happens, __put_task_struct_rcu_cb() is already imminent and the returned task_struct would could be used after free.) As for the fix, we cannot simply check the signal->live count of a task on the dying list because that won't distinguish regular zombies waiting to be reaped from RCU remnant tasks that are going to be free'd. Therefore add an extra check to rule out ->usage==0 tasks from any iteration. The repeat: loop in css_task_iter_advance() doesn't consider ->usage count, so add a new loop to css_task_iter_next() to skip de-used tasks on the dying_list. Rough illustration of the possible race R (reader of cgroup.procs) T (thread) L (group leader) --------------------------------- -------------------------------- -------------------------------- L exits, signal->live > 0 cgroup_task_dead(L) css_set_skip_task_iters() // skips only cset->tasks list_add_tail(&L->cg_list, &cset->dying_tasks) css_task_iter_next() take css_set_lock css_task_iter_advance() leader && signal->live != 0 => it->task_pos = &L->cg_list release css_set_lock T exits --signal->live == 0 cgroup_task_dead(T) // css_set_lock release_task(T) cgroup_task_release(T) release_task(L) // zap_leader cgroup_task_release(L) put_task_struct_rcu_user(L) ...RCU... put_task_struct(L) L->usage = 0 /* L still on dying_tasks */ ...RCU... __put_task_struct(L) css_task_iter_next() // another iteration take css_set_lock it->task_pos = &L->cg_list get_task_struct(L) => addition on 0 drop css_set_lock cgroup_task_free(L) css_set_skip_task_iters() // dying skip comes too late free_task(L) cgroup_procs_show() task_pid_vnr(L)

Détails

Éditeur
Linux
Produit
Linux
Faiblesse
CWE-362 (s'ouvre dans un nouvel onglet)
Statut
Modifiée
Mise à jour
7 oct. 2026
Attribuée par
416baaa9-dc9f-4396-8d5f-8c081fb06d67

CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

Références 2

Le type est déduit des étiquettes de NVD lorsqu'elles existent, sinon de la forme de l'URL : considérez-le comme un indice.

Même éditeur parmi les CVE de notre base ; cela n'implique aucun lien connu entre ces failles.

  • CVE-2026-53362 Linux Kernel Unspecified Vulnerability KEV EPSS 0,7% 7,8, élevé
  • CVE-2026-53266 Linux Kernel Out-of-Bounds Write Vulnerability KEV EPSS 0,8% 8,8, élevé
  • CVE-2026-31431 Linux Kernel Incorrect Resource Transfer Between Spheres Vulnerability KEV EPSS 3% 7,8, élevé
  • CVE-2025-39964 Linux Kernel Race Condition Vulnerability KEV EPSS 1% 5,5, moyen
  • CVE-2025-39682 Linux Kernel Improper Check for Unusual or Exceptional Conditions Vulnerability KEV EPSS 3% 9,8, critique
  • CVE-2025-38352 Linux Kernel Time-of-Check Time-of-Use (TOCTOU) Race Condition Vulnerability KEV EPSS 1% 7,8, élevé
  • CVE-2024-53197 Linux Kernel Out-of-Bounds Access Vulnerability KEV EPSS 4% 7,8, élevé
  • CVE-2024-53150 Linux Kernel Out-of-Bounds Read Vulnerability KEV EPSS 1% 7,1, élevé

Au-delà de cette page

CVE-2026-98163 est-elle présente sur votre réseau ?

Cette page vous dit à quel point CVE-2026-98163 est dangereuse de manière générale. Savoir si elle se trouve sur l'un de vos appareils, seul un scan de votre propre réseau peut le dire. C'est ce que font nos systèmes, chaque jour, pour les entreprises que nous protégeons.

  • EXYS7600 OCELOT

    La trouver avant les attaquants

    Ocelot analyse votre réseau de manière planifiée et signale chaque vulnérabilité trouvée avec son identifiant CVE, son score CVSS et le nombre de vos hôtes touchés. Chaque résultat, comme CVE-2026-98163, est accompagné de la liste des appareils à corriger.

    Découvrir EXYS7600 OCELOT
  • EXYS7950 KONDRA

    La détecter si elle est exploitée

    Tant que le correctif n'est pas installé, Kondra surveille le réseau, les événements et les terminaux en temps réel. Il tient l'inventaire des logiciels installés sur chaque terminal, et ses règles de détection d'anomalies signalent ce que fait un attaquant une fois dans le réseau.

    Découvrir EXYS7950 KONDRA
Vérifier votre exposition

Compilé à partir de l'API NVD 2.0, du catalogue Known Exploited Vulnerabilities de la CISA et de FIRST EPSS. Les scores correspondent à notre dernière collecte du 17 oct. 2026, pas à l'état actuel des sources.