Medium severity · published Sep 5, 2025
CVE-2025-39713
media: rainshadow-cec: fix TOCTOU race condition in rain_interrupt()
4.7
CVSS
0.1%
EPSS
No
On KEV
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.
CVSS vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Attack vector
Local
Complexity
High
Privileges
Low
User interaction
None
Confidentiality
None
Integrity
None
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.1% · higher than 3% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
KE
Kernel · Linux
4.12 before 5.4.297; 5.5 before 5.10.241; 5.11 before 5.15.190; 5.16 before 6.1.149; 6.2 before 6.6.103; 6.7 before 6.12.44; +1 more · source: NVD
LI
Linux · Linux
0f314f6c2e77beb1a232be21dd6be4e1849ba5ac before 2964dbe631fd21ad7873b1752b895548d3c12496; 0f314f6c2e77beb1a232be21dd6be4e1849ba5ac before 6aaef1a75985865d8c6c5b65fb54152060faba48; 0f314f6c2e77beb1a232be21dd6be4e1849ba5ac before fbc81e78d75bf28972bc22b1599559557b1a1b83; 0f314f6c2e77beb1a232be21dd6be4e1849ba5ac before 3c3e33b7edca7a2d6a96801f287f9faeb684d655; 0f314f6c2e77beb1a232be21dd6be4e1849ba5ac before 1c2769dc80255824542ea5a4ff1a07dcdeb1603f; 0f314f6c2e77beb1a232be21dd6be4e1849ba5ac before ed905fe7cba03cf22ae0b84cf1b73cd1c070423a; +3 more · source: vendor
DL
Debian Linux · Debian
11.0 · source: NVD
SC
SIMATIC CN 4100 · Siemens
before V5.0 · source: CISA