CyberSecBulletin
CVE-2026-63941NVD status: Analyzed

Linux: Missing Authorization

CVE-2026-63941 is a high-severity missing authorization vulnerability in Linux, with a CVSS 3.1 base score of 8.8 out of 10. It can be exploited with local access to the system by an attacker with a low-privileged account, without any action from a user. The record lists versions 2090c1a2368339eab0e14dcde12fdf6a5ea6359d, 742a9b5ccd8c46caf983ca90c94f855466968e34, 83726330748981372bde86ed5411d7b306612991 as the first without the flaw, so updating Linux to one of those releases or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.15% chance of exploitation within 30 days, which is low compared with other CVEs.

Next patch cycle

High severity with no evidence of exploitation so far.

What to do

  1. Update Linux to 2090c1a2368339eab0e14dcde12fdf6a5ea6359d or 742a9b5ccd8c46caf983ca90c94f855466968e34 or 83726330748981372bde86ed5411d7b306612991, whichever matches your release line, or a later version.
  2. Update Linux Kernel to 6.18.57 or 7.0.12, whichever matches your release line, or a later version.

Affected products and versions

VendorProductAffected versionsFixed in
LinuxLinuxb3d29a8230998b36afecf494b199211d26052785 up to, but not including, 2090c1a2368339eab0e14dcde12fdf6a5ea6359d; b3d29a8230998b36afecf494b199211d26052785 up to, but not including, 742a9b5ccd8c46caf983ca90c94f855466968e34; b3d29a8230998b36afecf494b199211d26052785 up to, but not including, 83726330748981372bde86ed5411d7b306612991; 6.112090c1a2368339eab0e14dcde12fdf6a5ea6359d, 742a9b5ccd8c46caf983ca90c94f855466968e34, 83726330748981372bde86ed5411d7b306612991
LinuxLinux Kernel6.11 up to, but not including, 6.18.57; 6.19 up to, but not including, 7.0.12; 7.16.18.57, 7.0.12

Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.

How the severity score breaks down

Attack vector
LocalThe attacker needs local access or must trick a user into running something.
Attack complexity
LowNo special conditions are needed; the attack works reliably.
Privileges required
LowA basic user account is enough.
User interaction
NoneNo action by a victim is required.
Scope
ChangedThe attack can reach beyond the vulnerable component into other systems.
Confidentiality
HighAll data handled by the component can be read.
Integrity
HighData or code can be modified at will.
Availability
HighThe component can be taken down completely.

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H. Scored by CNA.

Official description

In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: Correctly cap ZCR_EL2 provided by a guest hypervisor ZCR_EL2 can be updated by a VHE guest hypervisor either using ZCR_EL2 (which traps) or ZCR_EL1 (which does not trap). KVM handles both in different way: - on ZCR_EL2 trap, ZCR_EL2.LEN is immediately capped at the VM's own VL limit. This has the potential to break existing SW that relies on the full LEN field to be stateful. - on ZCR_EL1 access, we do absolutely nothing. On restoring the SVE context for an L2 guest, we directly restore the guest hypervisor's view of ZCR_EL2 into the physical ZCR_EL2. If the guest's view of the register was updated using the ZCR_EL2 accessor, the value has already been sanitised (with the caveat mentioned above). But if the guest used ZCR_EL1, the raw value is written into the HW, and the L2 guest can now access VLs that it shouldn't. Fix all the above by moving the VL capping to the restore points, ensuring that: - the HW is always programmed with a capped value, irrespective of the accessor being used, - the ZCR_EL2.LEN field is always completely stateful, irrespective of the accessor being used. Additionally, move ZCR_EL2 to be a sanitised register, ensuring that only the LEN field is actually stateful. This requires some creative construction of the RES0 mask, as the sysreg generation script does not yet generate RAZ/WI fields. [maz: rewrote commit message, tidy up access_zcr_el2()]

Source: the CVE record as published by its numbering authority, via NVD and CVE.org.

The underlying weakness: Missing Authorization

The product does not perform an authorization check when an actor attempts to access a resource or perform an action.

How developers prevent this class of flaw

  • Divide the product into anonymous, normal, privileged, and administrative areas. Reduce the attack surface by carefully mapping roles with data and functionality. Use role-based access control (RBAC) to enforce the roles at the appropriate boundaries. Note that this approach may not protect against horizontal authorization, i.e., it will not protect a user from attacking others with the same role.
  • Ensure that access control checks are performed related to the business logic. These checks may be different than the access control checks that are applied to more generic resources such as files, connections, processes, memory, and database records. For example, a database may restrict access for medical records to a specific database user, but each record might only be intended to be accessible to the patient and the patient's doctor.
  • Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid. For example, consider using authorization frameworks such as the JAAS Authorization Framework and the OWASP ESAPI Access Control feature.

More Missing Authorization vulnerabilities (CWE-862)

Timeline

  1. CVE record published.
  2. CISA published its SSVC assessment (exploitation: none, automatable: no, technical impact: total).
  3. Record last changed materially (score, affected products, status or references).

References

Recent Missing Authorization vulnerabilities

Spotted an error? Tell us.