CVE-2022-48988

Vulnérabilité élevée dans Linux (Linux)

CVSS 7.8 · Élevée
EPSS 0.2%
Linux•Linux•Versions : <35963b31821920908e397146502066f6b032c917, 0, 4.14.302, 5.10.159, <0ed074317b835caa6c03bcfa8f133365324673dc, 4.19.269, <=5.10.*, <=4.14.*, <aad8bbd17a1d586005feb9226c2e9cfce1432e13, <=6.0.*, 6.0.13, <=5.4.*, <=4.19.*, 5.15.83, <b77600e26fd48727a95ffd50ba1e937efb548125, 6.1, 3.14, 5.4.227, <3.14, <=*, 347c4a8747104a945ecced358944e42879176ca5, <=5.15.*, <f1f7f36cf682fa59db15e2089039a2eeb58ff2ad, <e1ae97624ecf400ea56c238bff23e5cd139df0b8, <4a7ba45b1a435e7097ca0f79a847d0949d0eb088

Description

In the Linux kernel, the following vulnerability has been resolved: memcg: fix possible use-after-free in memcg_write_event_control() memcg_write_event_control() accesses the dentry->d_name of the specified control fd to route the write call. As a cgroup interface file can't be renamed, it's safe to access d_name as long as the specified file is a regular cgroup file. Also, as these cgroup interface files can't be removed before the directory, it's safe to access the parent too. Prior to 347c4a874710 ("memcg: remove cgroup_event->cft"), there was a call to __file_cft() which verified that the specified file is a regular cgroupfs file before further accesses. The cftype pointer returned from __file_cft() was no longer necessary and the commit inadvertently dropped the file type check with it allowing any file to slip through. With the invarients broken, the d_name and parent accesses can now race against renames and removals of arbitrary files and cause use-after-free's. Fix the bug by resurrecting the file type check in __file_cft(). Now that cgroupfs is implemented through kernfs, checking the file operations needs to go through a layer of indirection. Instead, let's check the superblock and dentry type.

Gravité et risque d'exploitation

CVE-2022-48988 obtient un score CVSS de 7.8/10, soit une gravité élevée. Selon le modèle EPSS, la probabilité qu'elle soit exploitée dans les 30 prochains jours est de 0.24 %, ce qui la place devant 14.6 % des CVE référencées.

Que faire ?

  • Vérifiez si Linux (versions <35963b31821920908e397146502066f6b032c917, 0, 4.14.302, 5.10.159, <0ed074317b835caa6c03bcfa8f133365324673dc, 4.19.269, <=5.10.*, <=4.14.*, <aad8bbd17a1d586005feb9226c2e9cfce1432e13, <=6.0.*, 6.0.13, <=5.4.*, <=4.19.*, 5.15.83, <b77600e26fd48727a95ffd50ba1e937efb548125, 6.1, 3.14, 5.4.227, <3.14, <=*, 347c4a8747104a945ecced358944e42879176ca5, <=5.15.*, <f1f7f36cf682fa59db15e2089039a2eeb58ff2ad, <e1ae97624ecf400ea56c238bff23e5cd139df0b8, <4a7ba45b1a435e7097ca0f79a847d0949d0eb088) est présent sur votre parc.
  • Appliquez le correctif ou la version corrigée indiqués dans les références de l'éditeur.
  • À défaut de correctif, limitez l'exposition (filtrage réseau, désactivation du composant).
  • Automatisez la détection : les agents CVE Heimdall (gratuits, open source) corrèlent l'inventaire de vos serveurs avec la base CVE.

Références