CVE-2025-71199
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
iio: adc: at91-sama5d2_adc: Fix potential use-after-free in sama5d2_adc driver
at91_adc_interrupt can call at91_adc_touch_data_handler function to start the work by schedule_work(&st->touch_st.workq).
If we remove the module which will call at91_adc_remove to make cleanup, it will free indio_dev through iio_device_unregister but quite a bit later. While the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:
CPU0 CPU1
| at91_adc_workq_handler
at91_adc_remove | iio_device_unregister(indio_dev) | //free indio_dev a bit later | | iio_push_to_buffers(indio_dev) | //use indio_dev
Fix it by ensuring that the work is canceled before proceeding with the cleanup in at91_adc_remove.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 23ec2774f1cc168b1f32a2e0ed2709cb473bb94e < 4c83dd62595ee7b7c9298a4d19a256b6647e7240 | affected |
| Linux | Linux | 23ec2774f1cc168b1f32a2e0ed2709cb473bb94e < fdc8c835c637a3473878d1e7438c77ab8928af63 | affected |
| Linux | Linux | 23ec2774f1cc168b1f32a2e0ed2709cb473bb94e < 919d176b05776c7ede79c36744c823a07d631617 | affected |
| Linux | Linux | 23ec2774f1cc168b1f32a2e0ed2709cb473bb94e < 9795fe80976f8c31cafda7d44edfc0f532d1f7c4 | affected |
| Linux | Linux | 23ec2774f1cc168b1f32a2e0ed2709cb473bb94e < d7b6fc224c7f5d6d8adcb18037138d3cfe2bbdfe | affected |
| Linux | Linux | 23ec2774f1cc168b1f32a2e0ed2709cb473bb94e < d890234a91570542c228a20f132ce74f9fedd904 | affected |
| Linux | Linux | 23ec2774f1cc168b1f32a2e0ed2709cb473bb94e < dbdb442218cd9d613adeab31a88ac973f22c4873 | affected |
| Linux | Linux | 4.19 | affected |
| Linux | Linux | 0 < 4.19 | unaffected |
| Linux | Linux | 5.10.249 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.199 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.162 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.122 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.68 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.8 <= 6.18.* | unaffected |
| Linux | Linux | 6.19 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/4c83dd62595ee7b7c9298a4d19a256b6647e7240
- https://git.kernel.org/stable/c/fdc8c835c637a3473878d1e7438c77ab8928af63
- https://git.kernel.org/stable/c/919d176b05776c7ede79c36744c823a07d631617
- https://git.kernel.org/stable/c/9795fe80976f8c31cafda7d44edfc0f532d1f7c4
- https://git.kernel.org/stable/c/d7b6fc224c7f5d6d8adcb18037138d3cfe2bbdfe
- https://git.kernel.org/stable/c/d890234a91570542c228a20f132ce74f9fedd904
- https://git.kernel.org/stable/c/dbdb442218cd9d613adeab31a88ac973f22c4873
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.