CVE-2024-26712
CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
powerpc/kasan: Fix addr error caused by page alignment
In kasan_init_region, when k_start is not page aligned, at the begin of
for loop, k_cur = k_start & PAGE_MASK is less than k_start, and then
va = block + k_cur - k_start is less than block, the addr va is invalid,
because the memory address space from va to block is not alloced by
memblock_alloc, which will not be reserved by memblock_reserve later, it
will be used by other places.
As a result, memory overwriting occurs.
for example: int __init __weak kasan_init_region(void start, size_t size) { […] / if say block(dcd97000) k_start(feef7400) k_end(feeff3fe) / block = memblock_alloc(k_end - k_start, PAGE_SIZE); […] for (k_cur = k_start & PAGE_MASK; k_cur < k_end; k_cur += PAGE_SIZE) { / at the begin of for loop * block(dcd97000) va(dcd96c00) k_cur(feef7000) k_start(feef7400) * va(dcd96c00) is less than block(dcd97000), va is invalid */ void *va = block + k_cur - k_start; […] } […] }
Therefore, page alignment is performed on k_start before memblock_alloc() to ensure the validity of the VA address.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 663c0c9496a69f80011205ba3194049bcafd681d < 230e89b5ad0a33f530a2a976b3e5e4385cb27882 | affected |
| Linux | Linux | 663c0c9496a69f80011205ba3194049bcafd681d < 2738e0aa2fb24a7ab9c878d912dc2b239738c6c6 | affected |
| Linux | Linux | 663c0c9496a69f80011205ba3194049bcafd681d < 0c09912dd8387e228afcc5e34ac5d79b1e3a1058 | affected |
| Linux | Linux | 663c0c9496a69f80011205ba3194049bcafd681d < 0516c06b19dc64807c10e01bb99b552bdf2d7dbe | affected |
| Linux | Linux | 663c0c9496a69f80011205ba3194049bcafd681d < 70ef2ba1f4286b2b73675aeb424b590c92d57b25 | affected |
| Linux | Linux | 663c0c9496a69f80011205ba3194049bcafd681d < 4a7aee96200ad281a5cc4cf5c7a2e2a49d2b97b0 | affected |
| Linux | Linux | 5ce93076d8ee2a0fac3ad4adbd2e91b6197146db | affected |
| Linux | Linux | 5.3.6 < 5.4 | affected |
| Linux | Linux | 5.4 | affected |
| Linux | Linux | 0 < 5.4 | unaffected |
| Linux | Linux | 5.10.210 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.149 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.79 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.18 <= 6.6.* | unaffected |
| Linux | Linux | 6.7.6 <= 6.7.* | unaffected |
| Linux | Linux | 6.8 <= * | unaffected |
Weaknesses
ADP Enrichment
CISA ADP Vulnrichment
- SSVC:
- Exploitation: none
- Automatable: no
- Technical Impact: partial
CVE Program Container
Additional References
- https://git.kernel.org/stable/c/230e89b5ad0a33f530a2a976b3e5e4385cb27882
- https://git.kernel.org/stable/c/2738e0aa2fb24a7ab9c878d912dc2b239738c6c6
- https://git.kernel.org/stable/c/0c09912dd8387e228afcc5e34ac5d79b1e3a1058
- https://git.kernel.org/stable/c/0516c06b19dc64807c10e01bb99b552bdf2d7dbe
- https://git.kernel.org/stable/c/70ef2ba1f4286b2b73675aeb424b590c92d57b25
- https://git.kernel.org/stable/c/4a7aee96200ad281a5cc4cf5c7a2e2a49d2b97b0
- https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html
References
- https://git.kernel.org/stable/c/230e89b5ad0a33f530a2a976b3e5e4385cb27882
- https://git.kernel.org/stable/c/2738e0aa2fb24a7ab9c878d912dc2b239738c6c6
- https://git.kernel.org/stable/c/0c09912dd8387e228afcc5e34ac5d79b1e3a1058
- https://git.kernel.org/stable/c/0516c06b19dc64807c10e01bb99b552bdf2d7dbe
- https://git.kernel.org/stable/c/70ef2ba1f4286b2b73675aeb424b590c92d57b25
- https://git.kernel.org/stable/c/4a7aee96200ad281a5cc4cf5c7a2e2a49d2b97b0
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.