CVE-2023-53484
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
lib: cpu_rmap: Avoid use after free on rmap->obj array entries
When calling irq_set_affinity_notifier() with NULL at the notify argument, it will cause freeing of the glue pointer in the corresponding array entry but will leave the pointer in the array. A subsequent call to free_irq_cpu_rmap() will try to free this entry again leading to possible use after free.
Fix that by setting NULL to the array entry and checking that we have non-zero at the array entry when iterating over the array in free_irq_cpu_rmap().
The current code does not suffer from this since there are no cases where irq_set_affinity_notifier(irq, NULL) (note the NULL passed for the notify arg) is called, followed by a call to free_irq_cpu_rmap() so we don't hit and issue. Subsequent patches in this series excersize this flow, hence the required fix.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < 981f339d2905b6a92ef59358158b326493aecac5 | affected |
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < d1308bd0b24cb1d78fa2747d5fa3e055cc628a48 | affected |
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < cc2d2b3dbfb0ba57bc027fb7e1121250c50e4000 | affected |
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < f748e15253833b771acbede14ea98f50831ac289 | affected |
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < c6ed54dd90698dc0744d669524cc1c122ded8a16 | affected |
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < c9115f49cf260d24d8b5f2d9a4b63cb31a627bb4 | affected |
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < 67bca5f1d644f4e79b694abd8052a177de81c37f | affected |
| Linux | Linux | 896f97ea95c1d29c0520ee0766b66b7f64cb967c < 4e0473f1060aa49621d40a113afde24818101d37 | affected |
| Linux | Linux | 3.8 | affected |
| Linux | Linux | 0 < 3.8 | unaffected |
| Linux | Linux | 4.14.316 <= 4.14.* | unaffected |
| Linux | Linux | 4.19.284 <= 4.19.* | unaffected |
| Linux | Linux | 5.4.244 <= 5.4.* | unaffected |
| Linux | Linux | 5.10.181 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.113 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.30 <= 6.1.* | unaffected |
| Linux | Linux | 6.3.4 <= 6.3.* | unaffected |
| Linux | Linux | 6.4 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/981f339d2905b6a92ef59358158b326493aecac5
- https://git.kernel.org/stable/c/d1308bd0b24cb1d78fa2747d5fa3e055cc628a48
- https://git.kernel.org/stable/c/cc2d2b3dbfb0ba57bc027fb7e1121250c50e4000
- https://git.kernel.org/stable/c/f748e15253833b771acbede14ea98f50831ac289
- https://git.kernel.org/stable/c/c6ed54dd90698dc0744d669524cc1c122ded8a16
- https://git.kernel.org/stable/c/c9115f49cf260d24d8b5f2d9a4b63cb31a627bb4
- https://git.kernel.org/stable/c/67bca5f1d644f4e79b694abd8052a177de81c37f
- https://git.kernel.org/stable/c/4e0473f1060aa49621d40a113afde24818101d37
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.