In order to apply a particular protection key to an address range, the kernel must update the corresponding page table entries. The subroutine which handled this failed to take into account the presence of 1GB largepage mappings created using the shm_create_largepage(3) interface. In particular, it would always treat a page directory page entry as pointing to another page table page. The bug can be abused by an unprivileged user to cause pmap_pkru_update_range() to treat userspace memory as a page table page, and thus overwrite memory to which the application would otherwise not have access.
History

Wed, 22 Apr 2026 03:45:00 +0000

Type Values Removed Values Added
First Time appeared Freebsd
Freebsd freebsd
Vendors & Products Freebsd
Freebsd freebsd

Wed, 22 Apr 2026 02:45:00 +0000

Type Values Removed Values Added
Description In order to apply a particular protection key to an address range, the kernel must update the corresponding page table entries. The subroutine which handled this failed to take into account the presence of 1GB largepage mappings created using the shm_create_largepage(3) interface. In particular, it would always treat a page directory page entry as pointing to another page table page. The bug can be abused by an unprivileged user to cause pmap_pkru_update_range() to treat userspace memory as a page table page, and thus overwrite memory to which the application would otherwise not have access.
Title Missing large page handling in pmap_pkru_update_range()
Weaknesses CWE-269
CWE-732
References

cve-icon MITRE

Status: PUBLISHED

Assigner: freebsd

Published:

Updated: 2026-04-22T02:33:24.846Z

Reserved: 2026-04-15T19:18:20.083Z

Link: CVE-2026-6386

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-04-22T03:16:01.313

Modified: 2026-04-22T03:16:01.313

Link: CVE-2026-6386

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-22T03:30:06Z