CVE-2026-49425

Kernel stack disclosure in 32-bit compatibility support

Published Aug 19, 2026 CVSS 3.1 · 5.5 Medium EPSS < 1% KEV · Not listed
Description
The compat32 kevent() handler translates a 64-bit kevent struct into a stack- declared 32-bit struct. It did not first zero the stack struct.

An unprivileged user may observe a small amount of uninitialized kernel stack data, which may contain sensitive information.

Analysis

AI-generated

Technical impact

The compat32 kevent handler in the FreeBSD kernel converts a 64‑bit kevent structure to a 32‑bit structure on a stack frame that is not zeroed beforehand. Because the stack already contains leftover data from prior kernel operations, an unprivileged local user who invokes kevent() can read a small portion of that kernel memory. This results in a confidentiality disclosure of kernel stack data, which may contain sensitive information. The weakness corresponds to CWE-908.

Affected Systems

All FreeBSD releases that include the 32‑bit compatibility layer and the compat32 kevent implementation are potentially vulnerable. The advisory (FreeBSD‑SA‑26:48.compat32) does not list specific version ranges, so administrators should verify whether their installed FreeBSD version contains the compat32 kevent code and consult the advisory for precise affected releases.

Risk and Exploitability

The EPSS score is below 1 %, indicating a low current probability of exploitation, and the vulnerability is not present in the CISA KEV catalog. An attacker only needs local unprivileged access and the ability to call kevent() under the 32‑bit compatibility environment; no elevated privileges are required. The impact is limited to viewing a small amount of kernel stack memory, but the data revealed could have confidentiality implications. The CVSS score of 5.5 reflects a moderate severity for this type of privilege‑leveled information disclosure.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest FreeBSD security update that patches the compat32 kevent zero‑initialization bug.
  • If an update is not immediately available, temporarily disable or restrict the use of 32‑bit compatibility features so that unprivileged users cannot invoke kevent() from the 32‑bit space.
  • Ensure that only trusted users have access to system components that may trigger the compat32 kevent path, limiting the exposure of sensitive kernel data.

Generated by OpenCVE AI on August 26, 2026 at 20:05 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
CPEs cpe:2.3:o:freebsd:freebsd:14.3:-:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p10:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p11:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p12:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p13:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p14:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p15:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p1:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p2:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p3:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p4:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p5:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p6:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p7:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p8:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.3:p9:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:-:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:p1:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:p2:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:p3:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:p4:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:p5:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:p6:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:14.4:rc1:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:-:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p10:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p1:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p2:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p3:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p4:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p5:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p6:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p7:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p8:*:*:*:*:*:*
cpe:2.3:o:freebsd:freebsd:15.0:p9:*:*:*:*:*:*
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}

Type Values Removed Values Added
First Time appeared Freebsd
Freebsd freebsd
Vendors & Products Freebsd
Freebsd freebsd
Type Values Removed Values Added
Description The compat32 kevent() handler translates a 64-bit kevent struct into a stack- declared 32-bit struct. It did not first zero the stack struct. An unprivileged user may observe a small amount of uninitialized kernel stack data, which may contain sensitive information.
Title Kernel stack disclosure in 32-bit compatibility support
Weaknesses CWE-908
References
Weaknesses
  • CWE-908

    Use of Uninitialized Resource

Sources

Status
PUBLISHED
Assigner
freebsd
Published
Updated
Aug 26, 2026, 5:53 PM
Reserved
May 29, 2026, 8:24 PM
Status
Analyzed
Published
Aug 19, 2026, 8:17 AM
Modified
Oct 27, 2026, 12:10 PM