CVE-2025-39713
Description
In the Linux kernel, the following vulnerability has been resolved: media: rainshadow-cec: fix TOCTOU race condition in rain_interrupt() In the interrupt handler rain_interrupt(), the buffer full check on rain->buf_len is performed before acquiring rain->buf_lock. This creates a Time-of-Check to Time-of-Use (TOCTOU) race condition, as rain->buf_len is concurrently accessed and modified in the work handler rain_irq_work_handler() under the same lock. Multiple interrupt invocations can race, with each reading buf_len before it becomes full and then proceeding. This can lead to both interrupts attempting to write to the buffer, incrementing buf_len beyond its capacity (DATA_SIZE) and causing a buffer overflow. Fix this bug by moving the spin_lock() to before the buffer full check. This ensures that the check and the subsequent buffer modification are performed atomically, preventing the race condition. An corresponding spin_unlock() is added to the overflow path to correctly release the lock. This possible bug was found by an experimental static analysis tool developed by our team.
How to fix
- linux linux_kernel5.4.297, 5.10.241, 5.15.190, 6.1.149, 6.6.103, 6.12.44, 6.16.4 or later
- git.kernel.org/stable/c/1c2769dc80255824542ea5a4ff1a07dcdeb1603f
- git.kernel.org/stable/c/2964dbe631fd21ad7873b1752b895548d3c12496
- git.kernel.org/stable/c/3c3e33b7edca7a2d6a96801f287f9faeb684d655
- git.kernel.org/stable/c/6aaef1a75985865d8c6c5b65fb54152060faba48
- git.kernel.org/stable/c/7af160aea26c7dc9e6734d19306128cce156ec40
- git.kernel.org/stable/c/ed905fe7cba03cf22ae0b84cf1b73cd1c070423a
- git.kernel.org/stable/c/fbc81e78d75bf28972bc22b1599559557b1a1b83
- git.kernel.org/stable/c/ff9dd3db6cd4c6b54a2ecbc58151bea4ec63bc59
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| linux linux_kernel | 4.12 ≤ v < 5.4.297, 5.5 ≤ v < 5.10.241, 5.11 ≤ v < 5.15.190, 5.16 ≤ v < 6.1.149, 6.2 ≤ v < 6.6.103, 6.7 ≤ v < 6.12.44, 6.13 ≤ v < 6.16.4 | 5.4.297, 5.10.241, 5.15.190, 6.1.149, 6.6.103, 6.12.44, 6.16.4 |
| debian debian_linux | 11.0 | — |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.