CVE-2024-38616: wifi: carl9170: re-fix fortified-memset warning
In the Linux kernel, the following vulnerability has been resolved:
wifi: carl9170: re-fix fortified-memset warning
The carl9170txrelease() function sometimes triggers a fortified-memset warning in my randconfig builds:
In file included from include/linux/string.h:254, from drivers/net/wireless/ath/carl9170/tx.c:40: In function 'fortifymemsetchk', inlined from 'carl9170txrelease' at drivers/net/wireless/ath/carl9170/tx.c:283:2, inlined from 'krefput' at include/linux/kref.h:65:3, inlined from 'carl9170txputskb' at drivers/net/wireless/ath/carl9170/tx.c:342:9: include/linux/fortify-string.h:493:25: error: call to 'writeoverflowfield' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use structgroup()? [-Werror=attribute-warning] 493 | writeoverflowfield(psizefield, size);
Kees previously tried to avoid this by using memsetafter(), but it seems this does not fully address the problem. I noticed that the memsetafter() here is done on a different part of the union (status) than the original cast was from (ratedriverdata), which may confuse the compiler.
Unfortunately, the memsetafter() trick does not work on driverrates[] because that is part of an anonymous struct, and I could not get structgroup() to do this either. Using two separate memset() calls on the two members does address the warning though.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2024-38616?
CVE-2024-38616 is considered to have a moderate severity level due to potential issues with memory handling in the Linux kernel.
How do I fix CVE-2024-38616?
To fix CVE-2024-38616, upgrade to the updated kernel versions 5.10.223-1, 5.10.226-1, 6.1.123-1, 6.1.119-1, 6.12.10-1, or 6.12.11-1.
Can CVE-2024-38616 be exploited remotely?
CVE-2024-38616 is not directly exploitable remotely as it primarily impacts the kernel and requires local access to exploit.
What versions of the Linux kernel are affected by CVE-2024-38616?
The affected Linux kernel versions include those prior to updates identified in CVE-2024-38616, specifically prior to 5.10.223-1, 5.10.226-1, 6.1.123-1, and others listed in the advisory.
Is there a workaround for CVE-2024-38616 if I cannot update my kernel?
Currently, there are no documented workarounds for CVE-2024-38616, so applying the kernel update is the recommended approach.