wifi: mac80211: fix mbss changed flags corruption on 32 bit systems (Linux Linux)

CVE-2024-57899
HIGH 7.6

At a glance

Source
NVD
EPSS
EPSS 0.32 % · percentile 25 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: fix mbss changed flags corruption on 32 bit systems On 32-bit systems, the size of an unsigned long is 4 bytes, while a u64 is 8 bytes. Therefore, when using or_each_set_bit(bit, &bits, sizeof(changed) * BITS_PER_BYTE), the code is incorrectly searching for a bit in a 32-bit variable that is expected to be 64 bits in size, leading to incorrect bit finding. Solution: Ensure that the size of the bits variable is correctly adjusted for each architecture. Call Trace: ? show_regs+0x54/0x58 ? __warn+0x6b/0xd4 ? ieee80211_link_info_change_notify+0xcc/0xd4 [mac80211] ? report_bug+0x113/0x150 ? exc_overflow+0x30/0x30 ? handle_bug+0x27/0x44 ? exc_invalid_op+0x18/0x50 ? handle_exception+0xf6/0xf6 ? exc_overflow+0x30/0x30 ? ieee80211_link_info_change_notify+0xcc/0xd4 [mac80211] ? exc_overflow+0x30/0x30 ? ieee80211_link_info_change_notify+0xcc/0xd4 [mac80211] ? ieee80211_mesh_work+0xff/0x260 [mac80211] ? cfg80211_wiphy_work+0x72/0x98 [cfg80211] ? process_one_work+0xf1/0x1fc ? worker_thread+0x2c0/0x3b4 ? kthread+0xc7/0xf0 ? mod_delayed_work_on+0x4c/0x4c ? kthread_complete_and_exit+0x14/0x14 ? ret_from_fork+0x24/0x38 ? kthread_complete_and_exit+0x14/0x14 ? ret_from_fork_asm+0xf/0x14 ? entry_INT80_32+0xf0/0xf0 [restore no-op path for no changes]

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.6CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:HLinux
CVSS 3.1HIGH 7.6CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected 15ddba5f43114c1fd9cd83676e04a9e1acf8e37f < 86772872f9f5097cd03d0e1c6813238bd38c250b ; affected 15ddba5f43114c1fd9cd83676e04a9e1acf8e37f < 36b739637d7042843f9df57212ecee6ed6e0d4b2 ; affected 15ddba5f43114c1fd9cd83676e04a9e1acf8e37f < 49dba1ded8dd5a6a12748631403240b2ab245c34
Linux · Linuxaffected 6.5 ; unaffected 0 < 6.5 ; unaffected 6.6.70 ≤ 6.6.* ; unaffected 6.12.9 ≤ 6.12.* ; unaffected 6.13 ≤ *

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD