CVE-2025-38013: wifi: mac80211: Set n_channels after allocating struct cfg80211_scan_request

Published Jun 18, 2025
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

wifi: mac80211: Set nchannels after allocating struct cfg80211scanrequest

Make sure that nchannels is set after allocating the struct cfg80211registereddevice::intscanreq member. Seen with syzkaller:

UBSAN: array-index-out-of-bounds in net/mac80211/scan.c:1208:5 index 0 is out of range for type 'struct ieee80211channel [] countedby(nchannels)' (aka 'struct ieee80211channel []')

This was missed in the initial conversions because I failed to locate the allocation likely due to the "sizeof(void )" not matching the "channels" array type.

Affected Software

10 affected components
Linux Linux kernel
Linux Linux kernel>=6.6<6.6.92
Linux Linux kernel>=6.7<6.12.30
Linux Linux kernel>=6.13<6.14.8
Linux Linux kernel=6.15-rc1
Linux Linux kernel=6.15-rc2
Linux Linux kernel=6.15-rc3
Linux Linux kernel=6.15-rc4
Linux Linux kernel=6.15-rc5
Linux Linux kernel=6.15-rc6

Event History

Jun 18, 2025
CVE Published
via MITRE·09:28 AM
Data Sourced
via MITRE·09:28 AM
Description
Data Sourced
via NVD·10:15 AM
RemedyDescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What systems are exposed to this issue?

Systems running the Linux kernel with the affected mac80211 Wi-Fi scanning code are exposed. The issue is in the kernel's Wi-Fi subsystem rather than in a userspace application.

2

What level of access would an attacker need?

The CVSS vector indicates that local access and low privileges are required. No user interaction is required.

3

What is the likely impact of successful exploitation?

The issue is an out-of-bounds read in mac80211 scan handling. The supplied CVSS assessment rates confidentiality, integrity, and availability impact as high.

4

How can I tell whether a system has encountered the issue?

A triggered condition may produce a UBSAN array-index-out-of-bounds report in net/mac80211/scan.c at line 1208, involving index 0 and the channels array counted by n_channels.

5

What should be done to remediate it?

Apply the available Linux kernel patch. The fix ensures n_channels is set only after allocation of the cfg80211_registered_device::int_scan_req scan-request structure.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203