Security Vulnerability Report
中文
CVE-2026-43347 CVSS 7.5 HIGH

CVE-2026-43347

Published: 2026-05-08 14:16:45
Last Modified: 2026-05-11 08:16:11
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67

Description

In the Linux kernel, the following vulnerability has been resolved: arm64: dts: qcom: monaco: Reserve full Gunyah metadata region We observe spurious "Synchronous External Abort" exceptions (ESR=0x96000010) and kernel crashes on Monaco-based platforms. These faults are caused by the kernel inadvertently accessing hypervisor-owned memory that is not properly marked as reserved. >From boot log, The Qualcomm hypervisor reports the memory range at 0x91a80000 of size 0x80000 (512 KiB) as hypervisor-owned: qhee_hyp_assign_remove_memory: 0x91a80000/0x80000 -> ret 0 However, the EFI memory map provided by firmware only reserves the subrange 0x91a40000–0x91a87fff (288 KiB). The remaining portion (0x91a88000–0x91afffff) is incorrectly reported as conventional memory (from efi debug): efi: 0x000091a40000-0x000091a87fff [Reserved...] efi: 0x000091a88000-0x0000938fffff [Conventional...] As a result, the allocator may hand out PFNs inside the hypervisor owned region, causing fatal aborts when the kernel accesses those addresses. Add a reserved-memory carveout for the Gunyah hypervisor metadata at 0x91a80000 (512 KiB) and mark it as no-map so Linux does not map or allocate from this area. For the record: Hyp version: gunyah-e78adb36e debug (2025-11-17 05:38:05 UTC) UEFI Ver: 6.0.260122.BOOT.MXF.1.0.c1-00449-KODIAKLA-1

CVSS Details

CVSS Score
7.5
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Configurations (Affected Products)

No configuration data available.

Linux Kernel (Monaco platform specific)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
/* * PoC / Fix Demonstration for CVE-2026-43347 * This snippet demonstrates the required Device Tree Source (DTS) entry * that was missing, causing the kernel to crash. */ reserved-memory { #address-cells = <2>; #size-cells = <2>; ranges; /* * Gunyah hypervisor metadata region * Address: 0x91a80000 * Size: 0x80000 (512 KiB) * no-map: Prevent Linux from mapping or allocating this memory */ gunyah_mem: gunyah-mem@91a80000 { reg = <0x0 0x91a80000 0x0 0x80000>; no-map; }; };

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-43347", "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "published": "2026-05-08T14:16:44.777", "lastModified": "2026-05-11T08:16:10.680", "vulnStatus": "Received", "cveTags": [], "descriptions": [{"lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\narm64: dts: qcom: monaco: Reserve full Gunyah metadata region\n\nWe observe spurious \"Synchronous External Abort\" exceptions\n(ESR=0x96000010) and kernel crashes on Monaco-based platforms.\nThese faults are caused by the kernel inadvertently accessing\nhypervisor-owned memory that is not properly marked as reserved.\n\n>From boot log, The Qualcomm hypervisor reports the memory range\nat 0x91a80000 of size 0x80000 (512 KiB) as hypervisor-owned:\nqhee_hyp_assign_remove_memory: 0x91a80000/0x80000 -> ret 0\n\nHowever, the EFI memory map provided by firmware only reserves the\nsubrange 0x91a40000–0x91a87fff (288 KiB). The remaining portion\n(0x91a88000–0x91afffff) is incorrectly reported as conventional\nmemory (from efi debug):\nefi: 0x000091a40000-0x000091a87fff [Reserved...]\nefi: 0x000091a88000-0x0000938fffff [Conventional...]\n\nAs a result, the allocator may hand out PFNs inside the hypervisor\nowned region, causing fatal aborts when the kernel accesses those\naddresses.\n\nAdd a reserved-memory carveout for the Gunyah hypervisor metadata\nat 0x91a80000 (512 KiB) and mark it as no-map so Linux does not\nmap or allocate from this area.\n\nFor the record:\nHyp version: gunyah-e78adb36e debug (2025-11-17 05:38:05 UTC)\nUEFI Ver: 6.0.260122.BOOT.MXF.1.0.c1-00449-KODIAKLA-1"}], "metrics": {"cvssMetricV31": [{"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 3.6}]}, "references": [{"url": "https://git.kernel.org/stable/c/59bd9088336d2bb7e713dcf4df5cbda86bb3c611", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"}, {"url": "https://git.kernel.org/stable/c/85d98669fa7f1d3041d962515e45ee6e392db6f8", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"}, {"url": "https://git.kernel.org/stable/c/edde62571f7602d83243ca51729ce42d22ea04d2", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"}]}}