CVE-2023-52849 in Linuxinformation

Résumé

par VulDB • 25/05/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

cxl/mem : Correction de l'ordre d'arrêt

Ira signale que la suppression de cxl_mock_mem provoque un plantage avec la trace suivante :

BUG: kernel NULL pointer dereference, address: 0000000000000044 [..]
RIP: 0010:cxl_region_decode_reset+0x7f/0x180 [cxl_core]
[..]
Call Trace: cxl_region_detach+0xe8/0x210 [cxl_core]
cxl_decoder_kill_region+0x27/0x40 [cxl_core]
cxld_unregister+0x29/0x40 [cxl_core]
devres_release_all+0xb8/0x110 device_unbind_cleanup+0xe/0x70 device_release_driver_internal+0x1d2/0x210 bus_remove_device+0xd7/0x150 device_del+0x155/0x3e0 device_unregister+0x13/0x60 devm_release_action+0x4d/0x90 ? __pfx_unregister_port+0x10/0x10 [cxl_core]
delete_endpoint+0x121/0x130 [cxl_core]
devres_release_all+0xb8/0x110 device_unbind_cleanup+0xe/0x70 device_release_driver_internal+0x1d2/0x210 bus_remove_device+0xd7/0x150 device_del+0x155/0x3e0 ? lock_release+0x142/0x290 cdev_device_del+0x15/0x50 cxl_memdev_unregister+0x54/0x70 [cxl_core]

Ce plantage est dû à l'effacement du contexte du pilote de cxl_memdev (@cxlds) avant que le sous-système n'ait terminé de l'utiliser. Cela est finalement dû à la destruction de la ou des régions dont ce memdev est membre, qui s'attendent à pouvoir déréférencer @cxlds, comme ici :

static int cxl_region_decode_reset(struct cxl_region *cxlr, int count) ... if (cxlds->rcd) goto endpoint_reset; ...

La correction consiste à maintenir le contexte du pilote valide jusqu'à la désinscription du périphérique memdev, et par conséquent jusqu'à ce que toute la pile des dépendances associées soit démantelée.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Réserver

21/05/2024

Divulgation

21/05/2024

Modérer

accepté

Entrée

VDB-265635

CPE

prêt

EPSS

0.00236

KEV

non

Activités

très faible

Sources

Interested in the pricing of exploits?

See the underground prices here!