{"id":"CVE-2026-98190","revision":"52300088216347a99f3c0de1c798d3f3","records":[{"revision":"52300088216347a99f3c0de1c798d3f3","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-98190","aliases":[],"title":"wifi: wilc1000: fix out-of-bounds read in P2P public action frames","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: wilc1000: fix out-of-bounds read in P2P public action frames\n\nwilc_wfi_p2p_rx() and mgmt_tx() start parsing a frame once\nieee80211_is_public_action() returns true. That helper only verifies the\nframe is long enough for the action category field, that is\noffsetofend(struct ieee80211_mgmt, u.action.category), 25 bytes. Both\nfunctions then read the P2P public action header up to oui_subtype at\noffset 30 and pass \"size - ie_offset\" to cfg80211_find_vendor_ie(), where\nie_offset is offsetof(struct ieee80211_mgmt, u) + sizeof(*d), i.e. 32.\n\nA public action frame of 25 to 31 bytes passes the check but is shorter\nthan that 32 byte header, so oui_subtype can be read out of bounds, and\nbecause the length is unsigned, \"size - ie_offset\" underflows to a value\nclose to 4 GiB. cfg80211_find_vendor_ie() takes an unsigned int length,\nso even the size_t subtraction in mgmt_tx() is truncated to the same\nvalue. It then walks far past the buffer searching for a vendor element\nuntil it reaches unmapped memory.\n\nIn the receive path the frame arrives over the air and needs no\nassociation, so a nearby unauthenticated device can crash the host while\nit is in P2P listen. Reject frames shorter than the P2P public action\nheader in both paths before dereferencing it.","state":0,"publishedAt":"2026-10-06T08:44:31.52+00:00","modifiedAt":"2026-10-19T09:15:21.647+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"drivers/net/wireless/microchip/wilc1000/cfg80211.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"e98ad9f4c59f2e836f8d971b57763a4277680422\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"f0c46f8111a479b97b8ab17747c528cade6257f1\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"a5b827dad8a3037cef04d0240d1c2acb1557101e\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"491df93b10d76aebaf6aa4bb05a6ba897f4fccfb\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"cc2ee642ebeac8699b671ddb6d5955a785e5ff43\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"68b786691ce24c5c94e28811db243e573c50f9c1\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"6fbe76eb2796d2aee45cc6a2dd16e85d3cc96304\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"4fb8b5aa2a1126783ae00bae544d6f3c519408ef\",\n                            \"lessThan\": \"ba6cb7c0868a412c2eb68e8efd5aa38bfb258a14\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"drivers/net/wireless/microchip/wilc1000/cfg80211.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"5.7\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"5.7\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.271\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.222\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.189\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.158\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.112\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.54\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2.8\",\n                            \"lessThanOrEqual\": \"7.2.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.3\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[],"references":["https://git.kernel.org/stable/c/e98ad9f4c59f2e836f8d971b57763a4277680422","https://git.kernel.org/stable/c/f0c46f8111a479b97b8ab17747c528cade6257f1","https://git.kernel.org/stable/c/a5b827dad8a3037cef04d0240d1c2acb1557101e","https://git.kernel.org/stable/c/491df93b10d76aebaf6aa4bb05a6ba897f4fccfb","https://git.kernel.org/stable/c/cc2ee642ebeac8699b671ddb6d5955a785e5ff43","https://git.kernel.org/stable/c/68b786691ce24c5c94e28811db243e573c50f9c1","https://git.kernel.org/stable/c/6fbe76eb2796d2aee45cc6a2dd16e85d3cc96304","https://git.kernel.org/stable/c/ba6cb7c0868a412c2eb68e8efd5aa38bfb258a14"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-98190","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-98190","identifiers":["CVE-2026-98190"]},"retained":false,"historicalAffected":[]}],"coverage":[]}