CVE-2026-53307: Linux Kernel pinctrl Denial-of-Service via Empty Pinmux Property
A flaw exists in the Linux kernel's pinctrl subsystem where device tree configuration parsing can crash the system. When a device tree specifies an empty 'pinmux' property, the kernel fails to validate this condition, leading to memory access errors. An attacker with local access could exploit this to trigger a denial-of-service condition by crafting a malicious device tree or pinctrl configuration.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 5.5 MEDIUM · CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Weaknesses (CWE)
- CWE-476
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-26 / 2026-07-06
NVD description (verbatim)
In the Linux kernel, the following vulnerability has been resolved: pinctrl: pinconf-generic: Fully validate 'pinmux' property The pinconf_generic_parse_dt_pinmux() assumes that the 'pinmux' property is not empty when present. This might be not true. With that, the allocator will give a special value in return and not NULL which lead to the crash when trying to access that (invalid) memory. Fix that by fully validating 'pinmux' value, including its length.
3 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The vulnerability resides in pinconf_generic_parse_dt_pinmux() within the generic pinctrl configuration handler. The function assumes that if a 'pinmux' property exists in the device tree, it contains valid data. However, the property can be present but empty. When this occurs, the memory allocator returns a non-NULL pointer to a special internal value rather than NULL, creating a logic error. Subsequent code attempts to dereference this invalid pointer, resulting in a kernel crash (NULL pointer dereference or out-of-bounds access). The fix adds explicit validation of the 'pinmux' property length to reject empty values before processing.
Business impact
This vulnerability creates a local denial-of-service vector against Linux systems. An unprivileged local user can trigger a kernel panic or system hang by providing malformed pinctrl configurations, affecting availability. Organizations running Linux on embedded systems, IoT devices, or multi-tenant environments where users have local access face increased risk of service disruption. The impact is particularly significant for systems where pinctrl is actively used (mobile devices, embedded boards, automotive systems) and where availability is critical.
Affected systems
The Linux kernel is affected, specifically the pinctrl subsystem's generic configuration parser. This impacts any Linux system where the CONFIG_PINCTRL_GENERIC option is enabled and device tree pinctrl configurations are used. Common affected platforms include ARM-based systems, embedded Linux devices, and any kernel configuration that dynamically loads pinctrl settings from device trees. Desktop and server systems using static pinctrl configurations may have lower practical risk depending on their attack surface.
Exploitability
Exploitation requires local system access and the ability to supply or modify device tree configurations or pinctrl settings. An unprivileged user can trigger the vulnerability by crafting a device tree blob with an empty 'pinmux' property or by interacting with pinctrl interfaces that parse such configurations. No network access, elevated privileges, or user interaction is required once local access is obtained. The attack is straightforward and highly reliable for platforms that dynamically parse device tree pinctrl data.
Remediation
Apply the kernel patch that adds proper validation of the 'pinmux' property, including explicit length checks before dereferencing. The upstream fix ensures that empty 'pinmux' properties are rejected during parsing, preventing the invalid memory access. Users should verify patch availability through their Linux distribution or kernel maintainer and test in a staging environment before production deployment.
Patch guidance
Update the Linux kernel to a version incorporating the pinconf-generic validation fix. Check with your Linux distribution (Red Hat, Canonical, SUSE, etc.) for kernel update availability. Verify against the vendor advisory that the specific patch for pinconf_generic_parse_dt_pinmux() validation is included. Test the patched kernel in a non-production environment to confirm stability with your pinctrl configurations. If immediate patching is not possible, restrict local access to systems that parse untrusted device tree data.
Detection guidance
Monitor kernel logs for pinctrl-related crashes (kernel panics, general protection faults, or NULL pointer dereferences occurring in pinconf_generic_parse_dt_pinmux() or related functions). Watch for unexpected system reboots or hangs correlated with device tree updates or pinctrl configuration changes. On affected systems, audit device tree sources and pinctrl configuration files for empty 'pinmux' properties. Kernel debugging tools (kdump, kgdb) can capture crash dumps for forensic analysis of exploitation attempts.
Why prioritize this
While this vulnerability carries a MEDIUM CVSS score (5.5) reflecting local-only access requirements, it merits prompt attention because it affects system availability and can be reliably triggered by unprivileged users on vulnerable configurations. Organizations with embedded Linux devices, IoT deployments, or systems where local users have device tree modification capabilities should prioritize patching. The fix is straightforward and carries low regression risk, making rapid deployment feasible.
Risk score, explained
The CVSS 3.1 score of 5.5 (MEDIUM) reflects a high-impact denial-of-service condition (Availability) coupled with local attack vector and low privilege requirements. The score appropriately excludes confidentiality and integrity impacts, as the vulnerability is limited to system availability. The attack complexity is low, indicating the flaw is straightforward to trigger. However, the local-only attack vector prevents a higher severity rating despite the reliable exploitability.
Frequently asked questions
Can this be exploited remotely?
No. This vulnerability requires local system access. An attacker must be able to supply or modify pinctrl device tree configurations on the target system. It cannot be triggered over the network alone.
Which Linux systems are most at risk?
ARM-based embedded systems, IoT devices, and platforms actively using dynamic device tree pinctrl parsing are most at risk. Embedded boards, Android devices, and automotive systems commonly use CONFIG_PINCTRL_GENERIC. Desktop and server systems with static pinctrl configurations have lower practical risk.
What happens if this vulnerability is exploited?
The kernel crashes or hangs due to invalid memory access, resulting in a denial of service. The system becomes unavailable until rebooted. No data corruption or privilege escalation occurs.
Do I need elevated privileges to trigger this?
No. An unprivileged local user can trigger the vulnerability by crafting a malicious device tree or pinctrl configuration, then loading it through available interfaces.
This analysis is based on upstream Linux kernel CVE disclosures and publicly available vulnerability data as of the publication date. Actual impact may vary depending on your kernel version, configuration, and deployment environment. Always verify patch availability and compatibility with your specific Linux distribution before applying updates. Test patches in non-production environments first. This vulnerability requires local access and cannot be exploited remotely. Organizations should assess their exposure based on whether CONFIG_PINCTRL_GENERIC is enabled and whether untrusted users have access to device tree modification capabilities. Source: NVD (public-domain), retrieved 2026-08-05. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2025-71313MEDIUMLinux Kernel PCI Endpoint NULL Pointer Dereference
- CVE-2026-46118MEDIUMLinux Kernel PAPR Hypervisor Pipe Null Pointer Dereference (POWER Systems)
- CVE-2026-46127MEDIUMLinux Kernel OCRDMA Null Pointer Dereference (DoS)
- CVE-2026-46134MEDIUMLinux Kernel cros_ec Mutex Initialization DoS Vulnerability
- CVE-2026-46188MEDIUMLinux Octeon EP VF NULL Pointer Dereference Denial of Service
- CVE-2026-46211MEDIUMLinux Kernel MSM DRM NULL Pointer and Silent Error in gem_info_get_metadata
- CVE-2026-46216MEDIUMLinux Intel Arc GPU NULL Pointer Dereference (HDCP)
- CVE-2026-46222MEDIUMLinux Rockchip RKCam Driver Null Pointer Dereference