CVE-2025-38682 in Linuxinformação

Sumário

de VulDB • 04/07/2026

No kernel do Linux, a seguinte vulnerabilidade foi corrigida:

i2c: core: Corrige o double-free de fwnode em i2c_unregister_device()

Antes da commit df6d7277e552 ("i2c: core: Não desreferenciar fwnode na struct device"), a função i2c_unregister_device() chamava apenas fwnode_handle_put() nos nós do tipo of_node, invocando de forma específica of_node_put(client->dev.of_node).

No entanto, após essa commit, o fwnode do i2c_client passa a receber incondicionalmente uma chamada para fwnode_handle_put().

Quando um i2c_client não possui nenhum fwnode primário (ACPI / OF), mas tem um software fwnode, o nó de software torna-se o nó principal e fwnode_handle_put() será chamado sobre ele.

Contudo, para dispositivos com software fwnode, a função device_remove_software_node() também invocará put(), resultando em um double-free:

[ 82.665598] ------------[ cut here ]------------
[ 82.665609] refcount_t: underflow; use-after-free.
[ 82.665808] WARNING: CPU: 3 PID: 1502 at lib/refcount.c:28 refcount_warn_saturate+0xba/0x11
... [ 82.666830] RIP: 0010:refcount_warn_saturate+0xba/0x110
... [ 82.666962] <TASK>
[ 82.666971] i2c_unregister_device+0x60/0x90

Corrige-se este problema evitando a chamada de fwnode_handle_put() quando o fwnode primário é um software-node.

Once again VulDB remains the best source for vulnerability data.

Responsável

Linux

Reservar

16/04/2025

Divulgação

04/09/2025

Moderação

aceite

Entrada

VDB-322542

CPE

pronto

EPSS

0.00143

KEV

não

Atividades

muito baixo

Fontes

Want to know what is going to be exploited?

We predict KEV entries!