From mboxrd@z Thu Jan 1 00:00:00 1970 From: AL-KERNEL To: kernel-cve@kernelcve.org Subject: [CVE-2026-98303][MODERATE REGULAR] ipv4: icmp: reject RTN_UNREACHABLE input routes in icmp_route_lookup [ Upstream Date: Fri, 09 Oct 2026 03:31:50 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-AL-KERNEL-CVE: CVE-2026-98303 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: 4 X-AL-KERNEL-ActionableScore-Lower: 1 X-AL-KERNEL-Commit: 06083cea4a3b95f5ebc85312f97d7086e6c9e782 List-Id: CVE: CVE-2026-98303 Priority: MODERATE REGULAR AL-KERNEL base severity: MODERATE KPANIC flag: NO Patch: ipv4: icmp: reject RTN_UNREACHABLE input routes in icmp_route_lookup [ Upstream Commit: 06083cea4a3b95f5ebc85312f97d7086e6c9e782 Upstream patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=06083cea4a3b95f5ebc85312f97d7086e6c9e782 Original CVE announcement: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98303 Analysis date: Fri, 09 Oct 2026 03:31:50 -0400 ActionableScore: 4 ActionableScore lower bound: 1 Actionable bucket: Borderline / manual review recommended Manual review required: YES Summary: No one-sentence report phrase was found. ====================================================================== ABOUT THIS REPORT ====================================================================== The original Linux kernel CVE announcement for CVE-2026-98303 is available here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98303 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: YES A detailed explanation of the methodology and priority rules is included at the end of this message. ====================================================================== AL-KERNEL CLASSIFICATION RESULT ====================================================================== CVE-2026-98303 MODERATE https://www.kernelcve.org/list/?q=CVE-2026-98303 CHECK WITH IMPACT FROM ORIG NN IMPORTANT | AEGIS IMPACT MODERATE AEGIS_AS=2 LEGACY=MODERATE RESULT=SAME (legacy and Aegis reconciliation agree; DECISION: both MODERATE) Maybe valid. Check manually. Hints by AL-KERNEL: The best (paranoid) CVSS is 'AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H';*CWE-20;CWE-670;CWE-754;Other CVSS 'AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:L';BEST CVSS score: '5.3';DESCR 'IPv4 ICMP reverse route lookup can return an RTN_UNREACHABLE input route whose output callback is ip_rt_bug and then incorrectly use that route for output. A crafted packet that causes ICMP generation with an unreachable or spoofed source address may reach this path when forwarding or route lookup cannot build a valid return route. The demonstrated reproducer uses a TUN interface and normally requires local administrative network privileges. A network trigger is still plausible when an attacker can deliver suitable packets through an affected forwarding or interface context. For the CVSS the PR:N value is used in the paranoid score because this network scenario does not require an authenticated account or local code execution on the target. Attack complexity remains high because route configuration, source filtering, forwarding state, and ICMP generation must align. The normal effect is a WARN_ON_ONCE and failed output operation. On systems configured with panic_on_warn the same condition can crash the kernel and cause denial of service. No UAF, OOB access, stale pointer, information disclosure, or write primitive is supported by the analyzed code, so confidentiality and integrity remain unaffected.';YES REQUIRES MANUAL CHECK; ,and ActionableScore result is Borderline / manual review recommended (with actual score 3) MAYBE REMOTE OOB RACE NETWORK PACKET LOWERED_FROM_HIGH_BASED_ON_GUESSCVSS DECREASED_TO_MODERATEREG_BASED_ON_ACTIONABLESCORELESSTHAN4 - - checked ====================================================================== ACTIONABLESCORE ANALYSIS ====================================================================== ActionableScore=4 ActionableScoreLower=1 PrimitiveClass=CLASS_C RealUAF=NO HostAdminRequired=UNKNOWN NamespaceScopedPrivilege=UNKNOWN ImportantCandidate=NO ManualReview=RECOMMENDED AutoDowngradeAllowed=YES 1. ActionableScore * Raw conservative score: 1 * Conservative score: 1 * Raw paranoid score: 4 * Paranoid score: 4 * No floor or cap applied. * Final recommended bucket: **Borderline / manual review recommended**:: 2. Signal breakdown Conservative signals: * +1 Common networking packet-processing path. The defect is reached through IPv4 receive, ICMP generation, reverse route lookup, and route output. * No corruption points. The returned `rtable` is valid but semantically unsuitable for output. * No crash point. The demonstrated consequence is `WARN_ON_ONCE`, which contributes zero without a fatal configuration. * No privilege penalty. The TUN reproducer suggests privileged setup, but host-admin privilege for every possible trigger is not established. Paranoid additions: * +2 Direct network reachability. The call chain starts from received IPv4 traffic, and a packet with an unreachable or spoofed source can plausibly reach the reverse-route path without local code execution when routing conditions permit it. * +1 Conditional strong DoS. With `panic_on_warn`, the demonstrated warning can terminate the kernel. * No additional availability point because the panic is the same consequence. * No confidentiality or integrity points because no disclosure, write primitive, UAF, OOB access, or object corruption is established. * B5-R does not apply. There is no heap OOB write, retry-accumulated index, corrupted descriptor, or later consumption of corrupted heap state. * No race penalty. The relevant `RTN_UNREACHABLE` case is explicitly described as not resulting from a race. 3. Reachability analysis The demonstrated syzkaller path injects traffic through TUN, which generally requires network-management capability or prior provisioning. The supplied evidence does not establish whether the complete TUN setup is available through an attacker-created namespace, so namespace-scoped privilege remains unknown. A separate packet-originated path is technically plausible because the vulnerable operation is reached from `ip_rcv` and ICMP response generation. It depends on the target accepting a suitable packet and failing to construct a forwarding route, for example when forwarding is disabled. Source validation, routing policy, ICMP behavior, and interface exposure affect reliability. The evidence therefore does not prove that host administration is always required, but it also does not conclusively establish an ordinary remote trigger in all deployments. No special hardware, retry loop, or difficult race is required. 4. Primitive and severity interpretation The exact primitive is use of an `RTN_UNREACHABLE` input route as an output route. Its `dst.output` callback is `ip_rt_bug`, so later output processing reaches `WARN_ON_ONCE`. This is invalid-state consumption, not stale-object use. The route object remains live, there is no second lifetime operation, and no memory outside the object is read or written. Accordingly, this is CLASS_C rather than CLASS_A or CLASS_B. The demonstrated consequence is a warning and failed output. Kernel panic is conditional on `panic_on_warn`. No useful primitive remains after excluding that warning or panic. ImportantCandidate is therefore NO, and automatic downgrade is allowed. Manual review remains recommended because unauthenticated packet reachability is plausible but not fully resolved by the supplied reproducer. 5. One-sentence report phrase An IPv4 packet can cause ICMP reverse lookup to return an unreachable input route for output, reaching `ip_rt_bug` and producing a warning or a conditional kernel panic without establishing memory corruption. 6. Manual review recommendation MANUAL CHECK RECOMMENDED Confirm whether external interfaces can reach the path with attacker-controlled source addresses and whether `panic_on_warn` is enabled. 7. Call-site confidence Call-site confidence: high ====================================================================== UPSTREAM PATCH SUMMARY ====================================================================== Patch: ipv4: icmp: reject RTN_UNREACHABLE input routes in icmp_route_lookup [ Upstream Commit: 06083cea4a3b95f5ebc85312f97d7086e6c9e782 Upstream URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=06083cea4a3b95f5ebc85312f97d7086e6c9e782 Changed files: net/ipv4/route.c net/ipv4/icmp.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=06083cea4a3b95f5ebc85312f97d7086e6c9e782 ====================================================================== DETAILED REPORT METHODOLOGY ====================================================================== The original Linux kernel CVE announcement for CVE-2026-98303 can be found here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98303 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:L/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:L The Best / paranoid CVSS vector: AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H The Best / paranoid CVSS score: 5.3 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: 1 Paranoid ActionableScore: 4 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).