From mboxrd@z Thu Jan 1 00:00:00 1970 From: AL-KERNEL To: kernel-cve@kernelcve.org Subject: [CVE-2026-98318][IMPORTANT] smb: client: validate absolute native symlink targets before NT fixups [ Upstream Date: Fri, 09 Oct 2026 23:39:59 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-AL-KERNEL-CVE: CVE-2026-98318 X-AL-KERNEL-Priority: IMPORTANT X-AL-KERNEL-Severity: IMPORTANT X-AL-KERNEL-Base-Severity: IMPORTANT X-AL-KERNEL-KPANIC: YES X-AL-KERNEL-ActionableScore: 6 X-AL-KERNEL-ActionableScore-Lower: 5 X-AL-KERNEL-Commit: 6913ff607c2bc8694193e1fcc40bf16d75f35f16 List-Id: CVE: CVE-2026-98318 Priority: IMPORTANT AL-KERNEL base severity: IMPORTANT KPANIC flag: YES Patch: smb: client: validate absolute native symlink targets before NT fixups [ Upstream Commit: 6913ff607c2bc8694193e1fcc40bf16d75f35f16 Upstream patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=6913ff607c2bc8694193e1fcc40bf16d75f35f16 Original CVE announcement: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98318 Analysis date: Fri, 09 Oct 2026 23:39:59 -0400 ActionableScore: 6 ActionableScore lower bound: 5 Actionable bucket: Actionable Moderate / Strong Important candidate requiring manual review Manual review required: YES Summary: No one-sentence report phrase was found. ====================================================================== ABOUT THIS REPORT ====================================================================== The original Linux kernel CVE announcement for CVE-2026-98318 is available here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98318 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: IMPORTANT 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-98318 IMPORTANT https://www.kernelcve.org/list/?q=CVE-2026-98318 CHECK WITH IMPACT FROM ORIG NN MODERATE | AEGIS IMPACT MODERATE_KPANIC AEGIS_AS=4 LEGACY=IMPORTANT RESULT=DIFF (independent Legacy and Aegis differ; FINAL: IMPORTANT, Aegis: MODERATE_KPANIC) Maybe valid. Check manually. Hints by AL-KERNEL: The best (paranoid) CVSS is 'AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H';*CWE-787;CWE-191;*CWE-20;CWE-125;Other CVSS 'AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:H';BEST CVSS score: '7.8';DESCR 'The SMB client native symlink creation path assumes that every absolute target contains a valid NT drive prefix. With symlinkroot unset, a short target such as /ab can reach fixed offset writes beyond the allocated sym and path buffers. The same target causes the u16 print length to underflow to 65534, after which memcpy copies 65534 bytes into a buffer of about 24 bytes. This provides concrete kernel heap out of bounds read and write behavior and can cause a kernel crash. It may also permit local privilege escalation if the heap corruption can be shaped into a controlled primitive. For the CVSS the PR:L value is used because an unprivileged local user with write access to the mounted SMB share can reach the vulnerable symlink creation path without administrative capabilities. The issue is not directly network reachable from arbitrary SMB packets based on this code path. Impact is at least local denial of service and may include high confidentiality and integrity impact due to concrete kernel memory corruption.';YES REQUIRES MANUAL CHECK; ,and ActionableScore result is Actionable Moderate / Strong Important candidate requiring manual review (with actual score 6) MAYBE OOB DISK SERVERTOCLIENT LINUS KPANIC KPANIC INCREASED_TO_HIGH_BASED_ON_GUESSCVSS DECREASED_TO_MODERATE7_BASED_ON_FALSEPOSCHECKOFDH V28_LEGACY_CLASSA_HEAP_OOB_IMPORTANT_REVIEW_PRESERVE MANUAL_REVIEW_REQUIRED - - checked ====================================================================== ACTIONABLESCORE ANALYSIS ====================================================================== ActionableScore=6 ActionableScoreLower=5 PrimitiveClass=CLASS_A RealUAF=NO HostAdminRequired=NO NamespaceScopedPrivilege=NO ImportantCandidate=YES ManualReview=REQUIRED AutoDowngradeAllowed=NO RequiresHostUID0=NO AuthorizationDecisionBypass=NO ProtectedResourceImpact=NONE B4PendingReview=NO B4PendingConfirmed=NO 1. ActionableScore * Raw conservative score: 5 * Conservative score: 5 * Raw paranoid score: 6 * Paranoid score: 6 * No floor or cap was applied. * Final recommended bucket: **Actionable Moderate / Strong Important candidate requiring manual review**:: 2. Signal breakdown Conservative signals: * +2 Strong corruption primitive. A caller-controlled short absolute symlink target causes confirmed slab or heap out-of-bounds writes. This includes fixed-offset writes through `sym[5]` and `path[5]`, followed by a 65534-byte `memcpy()` into an approximately 24-byte destination. * +1 Local unprivileged trigger. The commit explicitly states that a user with write access to an existing mounted share can trigger the defect with default settings. * +1 Local high-control kernel API. The caller controls the symlink target contents and length that determine the invalid prefix handling and `u16` length underflow. * +1 Reliable kernel crash or strong DoS. A 65534-byte heap copy into a small allocation provides a technically direct path to extensive heap corruption and a kernel fault. Paranoid-only signal: * +1 Broad realistic exposure. SMB client mounts are broadly deployed, and the vulnerable state uses the default unset `symlinkroot` configuration. This is retained only in the paranoid score because native SMB symlink creation is narrower than ordinary file I/O. Not awarded: * B5-R was not awarded. The corruption is caused by missing prefix validation and integer underflow, not by an offset accumulating across retries. * No controlled target, arbitrary write, controlled reclaim, callback overwrite, or named adjacent victim is established. * No separate LPE or confidentiality bonus was awarded. Privilege escalation remains plausible but unproven. * No additional availability point was awarded because it would duplicate the same heap-corruption crash. * Remote reachability was not awarded. The established trigger is a local filesystem operation on an already mounted SMB share. * No authorization-bypass, B3-PENDING shared-backing, or B4-PENDING signal applies. * No negative privilege penalty applies because below-host-admin triggering is explicitly established. * No race or timing penalty applies because the malformed target deterministically reaches the vulnerable arithmetic. 3. Reachability analysis An ordinary local user with write permission on a mounted SMB share can invoke the native symlink creation path and supply a short absolute target such as `/ab`. The attacker does not require host UID 0 or host-administrator capabilities for the vulnerable filesystem operation. A mounted writable SMB share is a prior deployment prerequisite, potentially configured by another actor, but it is not a privilege required from the attacker after access has been granted. No capability or namespace-scoped privilege is needed for the established trigger, so the complete path is below host-admin and is not dependent on namespace capability semantics. The evidence does not establish direct triggering by arbitrary remote SMB traffic or by a malicious server alone. No special hardware, boot option, race, retry sequence, or OOM behavior is required. 4. Primitive and severity interpretation The exact primitive is a confirmed kernel heap out-of-bounds write caused by invalid assumptions about the `\\??\\X:` prefix and a `u16` subtraction underflow. Two fixed-offset writes exceed short allocations. The subsequent underflow changes `plen` to 65534 and causes a large copy into an approximately 24-byte heap buffer. This is active heap corruption rather than a read-only overrun, validation-only defect, stale pointer, or UAF. It is classified as CLASS_A because an attacker-influenced filesystem input directly causes multiple kernel heap writes outside allocated objects. The classification does not imply arbitrary write or proven code execution. The demonstrated consequence is extensive heap corruption with a realistic kernel crash. The theoretical worst case includes corruption of adjacent slab objects and local privilege escalation, but the supplied evidence does not identify the adjacent victim, provide controlled destination selection, or demonstrate a completed escalation chain. ImportantCandidate is YES because concrete below-host-admin kernel heap corruption must not be automatically reduced to an ordinary crash-only issue. AutoDowngradeAllowed is NO because doing so would discard a confirmed attacker-triggerable write primitive whose exploitation leverage remains unresolved. 5. One-sentence report phrase A local user with write access to a mounted SMB share can provide a short absolute native symlink target that underflows the UTF-16 length and causes multiple kernel heap out-of-bounds writes, including a 65534-byte copy into a small allocation. 6. Manual review recommendation MANUAL CHECK REQUIRED The patch establishes attacker-triggerable kernel heap corruption below host-admin privilege, while adjacent-object impact and privilege-escalation feasibility remain unresolved. 7. Call-site confidence Call-site confidence: high ====================================================================== UPSTREAM PATCH SUMMARY ====================================================================== Patch: smb: client: validate absolute native symlink targets before NT fixups [ Upstream Commit: 6913ff607c2bc8694193e1fcc40bf16d75f35f16 Upstream URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=6913ff607c2bc8694193e1fcc40bf16d75f35f16 Changed files: fs/smb/client/reparse.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=6913ff607c2bc8694193e1fcc40bf16d75f35f16 ====================================================================== DETAILED REPORT METHODOLOGY ====================================================================== The original Linux kernel CVE announcement for CVE-2026-98318 can be found here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-98318 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:L/UI:N/S:U/C:L/I:L/A:H The Best / paranoid CVSS vector: AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H The Best / paranoid CVSS score: 7.8 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: 5 Paranoid ActionableScore: 6 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: IMPORTANT KPANIC detected for this report: YES Published priority for this report (same as in Subject): IMPORTANT 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).