CVE-2026-45256

MEDIUM
Published Jun 26, 2026 Modified Jun 26, 2026 CWE-269

Description

When used to deliver a signal to a specific thread, thr_kill2(2) called p_cansignal() to determine whether the operation was permitted but did not check the result before delivering the signal. The signal was sent even when the permission check failed. The system call returned the resulting error to the caller, but by then the signal had already been delivered. The missing check allows an unprivileged local user who knows or can guess a target's process and thread IDs to send any signal to a process they would not normally be permitted to signal, including processes owned by other users or by root. The same check enforces jail boundaries, so a jailed process can signal processes on the host or in other jails. Thread IDs are allocated globally and sequentially, and so can be discovered by brute force with no visibility into the target. An attacker can stop or terminate arbitrary processes, including critical system daemons, resulting in a Denial of Service (DoS).

CVSS v3.1 Score

5.5
MEDIUM
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

EPSS — Exploit Prediction

0.0009
Probability of exploitation
0.01%
Percentile rank

EPSS estimates the probability that this vulnerability will be exploited in the wild within the next 30 days. A higher score means more likely to be exploited.

Weakness Type (CWE)

CWE-269 CWE-269

Affected Products

Vendor Product
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd
freebsd freebsd

References

Frequently Asked Questions

What is CVE-2026-45256? +
When used to deliver a signal to a specific thread, thr_kill2(2) called p_cansignal() to determine whether the operation was permitted but did not check the result before delivering the signal. The signal was sent even when the permission check failed. The system call returned the resulting error to the caller, but by then the signal had already been delivered. The missing check allows an unprivileged local user who knows or can guess a target's process and thread IDs to send any signal to a process they would not normally be permitted to signal, including processes owned by other users or by root. The same check enforces jail boundaries, so a jailed process can signal processes on the host or in other jails. Thread IDs are allocated globally and sequentially, and so can be discovered by brute force with no visibility into the target. An attacker can stop or terminate arbitrary processes, including critical system daemons, resulting in a Denial of Service (DoS). It has a CVSS v3.1 base score of 5.5 (MEDIUM).
How severe is CVE-2026-45256? +
CVE-2026-45256 has a CVSS v3.1 score of 5.5 out of 10, rated MEDIUM. This is a medium-severity vulnerability that should be remediated as part of regular maintenance. The EPSS score is 0.0009, placing it in the 0th percentile for exploitation probability.
What products are affected by CVE-2026-45256? +
CVE-2026-45256 affects products from freebsd, specifically: freebsd. Check the affected products table above for specific version ranges.
How do I check if I'm vulnerable to CVE-2026-45256? +
You can use Secably's free Website Scanner to check your website for known vulnerabilities. For infrastructure scanning, use the Port Scanner to identify exposed services that may be affected. Check the vendor advisories linked above for specific patch and version information.

Related Vulnerabilities

Don't wait for an exploit

Scan your website for vulnerabilities like CVE-2026-45256 — free, no signup required.

Start Free Scan