wifi: wilc1000: validate assoc response length before subtracting header (Linux Linux)

CVE-2026-68196
HIGH 8.3

At a glance

Source
NVD
EPSS
EPSS 0.41 % · percentile 36 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Received

Description

In the Linux kernel, the following vulnerability has been resolved: wifi: wilc1000: validate assoc response length before subtracting header wilc_parse_assoc_resp_info() computes the trailing IE length as ies_len = buffer_len - sizeof(*res); without first checking that buffer_len is at least sizeof(struct wilc_assoc_resp) (6 bytes). buffer_len is the length reported for a received association response (host_int_parse_assoc_resp_info() passes hif_drv->assoc_resp / assoc_resp_info_len straight in) and must be validated before the driver accesses the fixed header. For a frame shorter than the 6-byte fixed header, the subtraction wraps. For a four-byte response the result is truncated to a u16 ies_len of 65534, so kmemdup() then attempts to copy 65534 bytes starting at buffer + sizeof(*res), beyond the valid association-response data (CWE-125). A response shorter than four bytes can also cause an out-of-bounds read of res->status_code at offsets 2 and 3. Reject frames too short to hold the fixed header before touching the header or computing ies_len. Also set the connection status to a failure on this path: the caller falls through to a "conn_info->status == WLAN_STATUS_SUCCESS" check after the parser returns, so leaving the status untouched could let a malformed short response be treated as a successful association.

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 8.3CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:HLinux
CVSS 3.1HIGH 8.3CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)

European references

CERT-FR advisories

Affected products

ProductVersions
Linux · Linuxaffected c5c77ba18ea66aa05441c71e38473efb787705a4 < d79b92417f33424ff23dad76716ed8f2cefb1083 ; affected c5c77ba18ea66aa05441c71e38473efb787705a4 < b81d0ea9e1daa215b3da68c1f4f6fb07940c2f6a ; affected c5c77ba18ea66aa05441c71e38473efb787705a4 < 8d50acf5420de0c4da99c2d634731c9d3164a755 ; affected c5c77ba18ea66aa05441c71e38473efb787705a4 < 584c8954ad55f8b09b475be6db710fe40ceb988c ; affected c5c77ba18ea66aa05441c71e38473efb787705a4 < 4d410320e8ae5933e651660c9fadc1d380309e23 ; affected c5c77ba18ea66aa05441c71e38473efb787705a4 < e511e93abd6eeedcd5b3c55516241f414fbde64a
Linux · Linuxaffected 4.2 ; unaffected 0 < 4.2 ; unaffected 5.10.265 ≤ 5.10.* ; unaffected 5.15.216 ≤ 5.15.* ; unaffected 6.1.183 ≤ 6.1.* ; unaffected 6.6.148 ≤ 6.6.*

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