From mboxrd@z Thu Jan 1 00:00:00 1970 From: AL-KERNEL To: kernel-cve@kernelcve.org Subject: [CVE-2026-98185][MODERATE REGULAR] wifi: mwifiex: validate scan response extents Date: Thu, 08 Oct 2026 10:57:32 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-AL-KERNEL-CVE: CVE-2026-98185 X-AL-KERNEL-Priority: MODERATE REGULAR X-AL-KERNEL-Severity: MODERATE REGULAR X-AL-KERNEL-Base-Severity: MODERATE X-AL-KERNEL-KPANIC: NO X-AL-KERNEL-ActionableScore: 2 X-AL-KERNEL-ActionableScore-Lower: unknown X-AL-KERNEL-Commit: 25217c5f6ce0bf3004f80c129464cd35fe9a420f List-Id: CVE: CVE-2026-98185 Priority: MODERATE REGULAR AL-KERNEL base severity: MODERATE KPANIC flag: NO Patch: wifi: mwifiex: validate scan response extents Commit: 25217c5f6ce0bf3004f80c129464cd35fe9a420f Upstream patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=25217c5f6ce0bf3004f80c129464cd35fe9a420f Original CVE announcement: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98185 Analysis date: Thu, 08 Oct 2026 10:57:32 -0400 ActionableScore: 2 ActionableScore lower bound: unknown Actionable bucket: Ordinary Moderate Manual review required: NO Summary: No one-sentence report phrase was found. ====================================================================== ABOUT THIS REPORT ====================================================================== The original Linux kernel CVE announcement for CVE-2026-98185 is available here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98185 The original announcement does not normally provide a security severity estimate, CVSS assessment, or enough information to determine whether the reported kernel bug represents a practically relevant security issue. This report was generated by AL-KERNEL, an AI-assisted Linux kernel vulnerability analysis system developed by Alexander Larkin. It combines an autonomous classifier with LLM-assisted technical analysis and a separate ActionableScore mechanism. The purpose of this report is to prioritize Linux kernel CVEs before manual review, identify cases that require prompt investigation, and support automatic closure of issues that are unlikely to have meaningful security impact. Published priority for this report: MODERATE REGULAR Manual review required: NO A detailed explanation of the methodology and priority rules is included at the end of this message. ====================================================================== AL-KERNEL CLASSIFICATION RESULT ====================================================================== CVE-2026-98185 MODERATE https://www.kernelcve.org/list/?q=CVE-2026-98185 CHECK WITH IMPACT FROM ORIG NN MODERATE | AEGIS IMPACT MODERATE_KPANIC AEGIS_AS=2 LEGACY=MODERATE RESULT=DIFF (legacy and Aegis reconciliation differ; DECISION: legacy MODERATE vs Aegis MODERATE_KPANIC) Maybe valid. Check manually. Hints by AL-KERNEL: The best (paranoid) CVSS is 'AV:A/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:H';CWE-125;CWE-191;*CWE-20;Other CVSS 'AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H';BEST CVSS score: '5.9';DESCR 'An out of bounds read can occur in the mwifiex WiFi scan response path because the driver derives the TLV buffer length by subtracting fixed response fields and firmware supplied BSS data length without validating that both extents fit inside resp size. A short scan response or an oversized BSS length can underflow the calculated length and make the TLV parser read beyond the command response. For the CVSS the PR:N because an attacker does not need local access if malformed wireless scan data can be propagated by the affected firmware. The attack vector is adjacent wireless access rather than general Internet access. Reliable triggering depends on firmware behavior and may require a crafted beacon or probe response during scanning. Impact is at least denial of service through an invalid kernel memory read. The paranoid score includes limited confidentiality impact because an out of bounds read exists, but the patch does not establish an out of bounds write, privilege escalation, or a proven information disclosure path.';YES REQUIRES MANUAL CHECK; ,and ActionableScore result is Ordinary Moderate (with actual score 2) MAYBE REMOTE OOB SIMPLEFIX NETWORK DECREASED_TO_MODERATEREG_BASED_ON_ACTIONABLESCORELESSTHAN4 - - checked ====================================================================== ACTIONABLESCORE ANALYSIS ====================================================================== ActionableScore=2 PrimitiveClass=CLASS_C RealUAF=NO HostAdminRequired=UNKNOWN NamespaceScopedPrivilege=UNKNOWN ImportantCandidate=NO ManualReview=RECOMMENDED AutoDowngradeAllowed=YES 1. ActionableScore * Raw conservative score: 2 * Conservative score: 2 * Raw paranoid score: 2 * Paranoid score: 2 * Final recommended bucket: **Ordinary Moderate**:: No floor or cap was applied. 2. Signal breakdown * +1 Firmware-mediated external influence. The vulnerable response fields, including BSS descriptor length, originate from the WiFi firmware scan-response path. This is not direct remote network reachability because firmware mediation is material. * +1 Weak invalid-read concern. An unchecked subtraction can underflow tlv_buf_size and permit the TLV parser to walk beyond the logical command response extent. Important non-awarded signals: * No real UAF, stale object, refcount misuse, repeated release, or lifetime mutation is established. * No out-of-bounds write, controlled overwrite, controlled reclaim, type confusion, or arbitrary kernel read/write is demonstrated. * No kernel crash is directly demonstrated by the patch. The stated consequence is parser traversal beyond the command response, which may result in a fault or invalid parsing but does not prove a reliable host crash. * No confidentiality point is awarded. The patch establishes an invalid read path but does not establish copying of out-of-bounds bytes to userspace, the network, firmware, or another observable output. * No integrity point is awarded. No attacker-controlled write or security-relevant state modification is shown. * No direct remote reachability point is awarded. A nearby WiFi attacker may only influence the vulnerable path if the particular mwifiex firmware converts malformed beacon or probe-response data into a malformed scan response. * No local unprivileged trigger point is awarded. The supplied context does not prove that an ordinary local user can force scanning and reach the complete vulnerable firmware-response sequence. * No reliable kernel crash or separate availability point is awarded because neither is established independently. 3. Reachability analysis The immediate input is a firmware command response consumed by the mwifiex driver. The commit identifies a firmware-provided BSS length and a malformed or short scan response as the prerequisite. A potentially relevant attacker model is an adjacent WiFi attacker transmitting malformed beacon or probe-response frames while the device is scanning. However, the complete chain is unresolved because the supplied patch does not establish that affected Marvell firmware propagates attacker-controlled management-frame lengths into the malformed command response fields required by the bug. This is not a direct Internet-reachable network path. Firmware processing is an essential mediation layer. No host administrator privilege is proven necessary, but below-host-admin reachability is also not proven for the complete trigger. Therefore HostAdminRequired and NamespaceScopedPrivilege are UNKNOWN. No namespace-specific capability check, sysctl prerequisite, boot option, special device provisioning, or attacker-controlled object-lifetime sequence is visible in the supplied context. The issue requires affected mwifiex hardware and firmware, but hardware specificity alone is not scored as a rare-hardware penalty. 4. Primitive and severity interpretation The patch fixes an integer-underflow-driven out-of-bounds parsing condition. A short response or oversized BSS descriptor length can make tlv_buf_size wrap, causing the TLV parser to inspect data beyond the declared command-response extent. This is not a UAF and does not involve active structured stale-object reuse, cleanup lifetime handling, object replacement, refcount mutation, or a second release operation. The established primitive is an invalid read or invalid parser extent, with no demonstrated disclosure or write primitive. The appropriate classification is CLASS_C because the established behavior is invalid-state parsing and possible crash or driver malfunction without an independently useful corruption primitive. The issue may be operationally relevant for affected wireless devices, but the available evidence does not support Important classification, privilege escalation, or a strong memory-corruption conclusion. ImportantCandidate is NO because meaningful exploitation leverage beyond invalid parsing and possible denial of service is not established. AutoDowngradeAllowed is YES because there is no demonstrated UAF, controlled corruption, authorization bypass, ownership violation, or unresolved repeated lifetime mutation. 5. One-sentence report phrase An unchecked scan-response length calculation in the mwifiex driver can underflow the TLV parsing extent and cause parsing beyond the declared firmware response, with possible driver failure or denial of service if malformed scan data reaches the affected firmware path. 6. Manual review recommendation MANUAL CHECK RECOMMENDED Verify the affected mwifiex firmware behavior and the downstream TLV parser to determine whether malformed nearby WiFi management frames can produce the required malformed firmware response and whether parsing exceeds the actual allocation rather than only the logical response length. 7. Call-site confidence Call-site confidence: medium ====================================================================== UPSTREAM PATCH SUMMARY ====================================================================== Patch: wifi: mwifiex: validate scan response extents Commit: 25217c5f6ce0bf3004f80c129464cd35fe9a420f Upstream URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=25217c5f6ce0bf3004f80c129464cd35fe9a420f Commit description: mwifiex_ret_802_11_scan() subtracts the fixed response fields and the firmware-provided BSS length from resp->size without first proving that either extent fits. A short response or oversized BSS length can therefore underflow tlv_buf_size and make the TLV parser walk beyond the command response. Compute the fixed extent from the selected normal or background scan response. Validate that the fixed fields and BSS data fit before deriving the TLV extent and entering the parser. Fixes: 5e6e3a9 ("wireless: mwifiex: initial commit for Marvell mwifiex driver") Cc: stable@vger.kernel.org Assisted-by: Codex:gpt-5 Signed-off-by: Pengpeng Hou Link: https://patch.msgid.link/20260815135227.50392-1-pengpeng@iscas.ac.cn Signed-off-by: Johannes Berg Signed-off-by: Greg Kroah-Hartman Changed files: drivers/net/wireless/marvell/mwifiex/scan.c Diff excerpt: Not included in this email. See the upstream URL for the full patch. Full patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=25217c5f6ce0bf3004f80c129464cd35fe9a420f ====================================================================== DETAILED REPORT METHODOLOGY ====================================================================== The original Linux kernel CVE announcement for CVE-2026-98185 can be found here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98185 The original CVE announcement normally does not include a security-level estimate. In particular, it may not contain a CVSS assessment, an impact level, or enough information to determine whether the reported bug is a practically relevant security issue. One purpose of this parallel CVE list is to provide that missing technical and prioritization information. The original goal of the AL-KERNEL project was to prioritize Linux kernel CVE analysis automatically before manual review. The system can also help identify non-security issues that may be suitable for automatic closure. This report was generated by AL-KERNEL, an AI-assisted Linux kernel vulnerability analysis system developed by Alexander Larkin. The first analysis stage combines an autonomous classifier with additional LLM-based analysis. The autonomous classifier runs locally on a CPU and is based on a backpropagation neural network. Together, these mechanisms produce a technical vulnerability description, identify likely weakness types, estimate CVSS severity, and provide input for ActionableScore. Two CVSS estimates are retained because incomplete kernel vulnerability information often permits more than one defensible interpretation: Conservative CVSS vector: AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H The Best / paranoid CVSS vector: AV:A/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:H The Best / paranoid CVSS score: 5.9 The conservative vector represents a lower-impact interpretation. The Best/paranoid vector intentionally represents a plausible upper-bound interpretation and should not automatically be treated as demonstrated real-world impact. CVSS may also need to be adjusted for a particular Linux deployment, because actual reachability, privileges, enabled kernel configuration, hardware, namespaces, exposed device nodes, and other environmental conditions can differ significantly between systems. A separate ActionableScore mechanism evaluates practical remediation urgency. Its analysis may include reachability, attack prerequisites, subsystem exposure, memory-corruption characteristics, denial-of-service reliability, and possible confidentiality, integrity, or privilege-escalation impact. Conservative ActionableScore: unknown Paranoid ActionableScore: 2 The final base severity is taken directly from the second tab-separated field of the AL-KERNEL classification result. ActionableScore does not replace or independently override that final AL-KERNEL decision, and if ActionableScore adjusted impact level of ALKERNEL, then you would see self-readable flags above like INCREASED_TO_HIGH_BASED_ON_ACTIONABLESCOREHIGHEREQTHAN7. For an AL-KERNEL result of MODERATE, this report uses the following additional presentation split: ActionableScore below 5 -> MODERATE REGULAR ActionableScore 5 or more -> MODERATE 7.0 The distinction between MODERATE REGULAR and MODERATE 7.0 makes it possible to identify Moderate issues that should receive manual analysis and fixes before lower-priority MODERATE REGULAR issues. In many cases, MODERATE REGULAR fixes may wait for a later rebase or routine update. There is one override in which MODERATE REGULAR becomes MODERATE 7.0 even when the ActionableScore is below 5. When the AL-KERNEL result contains the KPANIC flag, a MODERATE result is always presented as MODERATE 7.0. The KPANIC flag selected with few regexps without usage of AI at all, so it helps to detect cases when Kernel Crash happens and similar (to filter False-Negative results from the LLM usage). KPANIC indicates that a reliable kernel crash, kernel panic, or similarly serious kernel availability impact was identified by the classification workflow. AL-KERNEL base severity for this report: MODERATE KPANIC detected for this report: NO Published priority for this report (same as in Subject): MODERATE REGULAR These results are intended to support engineering triage. They are machine-generated estimates, and cases marked for manual review should be validated by a human security engineer before final disposition. For more info read docs linked from here: https://kernelcve.org/ (and you can submit you own patch there to generate such a report for non-existant CVE-id yet). Note that in many cases this AI tool selects higher severity, than real is (means you can expect Importants instead of Moderate 7.0 or Moderates 7.0 instead of regular Moderates). If you see such cases, please use reply email interface to add additional manual analyses info to this particular CVE. And please, please, let me know when you see Lows instead of Importants or Important instead of Low (because particular for such cases I need to tune this AI tool to make it better for this one and next similar). My contact email for such notifications is alexanjelausa@gmail.com (and both send reply to CVE record itself too and see "reply" button below for howto reply).