CVE-2022-48817 in Linuxinformation

Résumé

par VulDB • 30/05/2026

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

net: dsa: ar9331: enregistrer le mdiobus sous devres

Comme expliqué dans les commits : 74b6d7d13307 ("net: dsa: realtek: register the MDIO bus under devres") 5135e96a3dd2 ("net: dsa: don't allocate the slave_mii_bus using devres")

mdiobus_free() provoquera un panic lorsqu'il est appelé depuis devm_mdiobus_free() <- devres_release_all() <- __device_release_driver(), et que le mdiobus n'a pas été précédemment désenregistré.

L'ar9331 est un périphérique MDIO, donc l'ensemble initial de contraintes que j'avais pensé causer ce problème (bus I2C ou SPI qui appellent ->remove sur ->shutdown) ne s'applique pas. Mais il y en a une autre qui s'applique ici.

Si le maître DSA lui-même se trouve sur un bus qui appelle ->remove depuis ->shutdown (comme dpaa2-eth, qui est sur le bus fsl-mc), il existe un lien de périphérique entre le commutateur et le maître DSA, et device_links_unbind_consumers() désliera le pilote du commutateur ar9331 lors de l'arrêt.

Le même traitement doit donc être appliqué à tous les pilotes de commutateur DSA, à savoir : soit utiliser devres pour l'allocation et l'enregistrement du mdiobus, soit ne pas utiliser devres du tout.

Le pilote ar9331 n'a pas une structure de code complexe pour la suppression du mdiobus, il suffit donc de remplacer of_mdiobus_register par la variante devres afin d'être entièrement basé sur devres et de s'assurer que nous ne libérons pas un bus encore enregistré.

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

Responsable

Linux

Réserver

16/07/2024

Divulgation

16/07/2024

Modérer

accepté

Entrée

VDB-271619

CPE

prêt

EPSS

0.00268

KEV

non

Activités

très faible

Sources

Interested in the pricing of exploits?

See the underground prices here!