Missing permission check in thr_kill2(2)
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Privilege escalation
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA. Impact type from CWE-269.
Summary
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).
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| FreeBSD | FreeBSD | 15.0-RELEASE to before p10; 14.4-RELEASE to before p6; 14.3-RELEASE to before p15 | p10, p6, p15 | Patch available | CNA |
- FreeBSD VendorFreeBSD Affected 15.0-RELEASE to before p10; 14.4-RELEASE to before p6; 14.3-RELEASE to before p15 Fixed in p10, p6, p15 Patch available CNA
CPE configurations NVD · 33
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:o:freebsd:freebsd:14.3:-:*:*:*:*:*:* | 14.3 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p1:*:*:*:*:*:* | 14.3 p1 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p10:*:*:*:*:*:* | 14.3 p10 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p11:*:*:*:*:*:* | 14.3 p11 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p12:*:*:*:*:*:* | 14.3 p12 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p13:*:*:*:*:*:* | 14.3 p13 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p14:*:*:*:*:*:* | 14.3 p14 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p2:*:*:*:*:*:* | 14.3 p2 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p3:*:*:*:*:*:* | 14.3 p3 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p4:*:*:*:*:*:* | 14.3 p4 | Vulnerable | FreeBSD |
- cpe:2.3:o:freebsd:freebsd:14.3:-:*:*:*:*:*:* Versions 14.3 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p1:*:*:*:*:*:* Versions 14.3 p1 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p10:*:*:*:*:*:* Versions 14.3 p10 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p11:*:*:*:*:*:* Versions 14.3 p11 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p12:*:*:*:*:*:* Versions 14.3 p12 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p13:*:*:*:*:*:* Versions 14.3 p13 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p14:*:*:*:*:*:* Versions 14.3 p14 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p2:*:*:*:*:*:* Versions 14.3 p2 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p3:*:*:*:*:*:* Versions 14.3 p3 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p4:*:*:*:*:*:* Versions 14.3 p4 Vulnerable ·FreeBSD
Show 23 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:o:freebsd:freebsd:14.3:p5:*:*:*:*:*:* | 14.3 p5 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p6:*:*:*:*:*:* | 14.3 p6 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p7:*:*:*:*:*:* | 14.3 p7 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p8:*:*:*:*:*:* | 14.3 p8 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.3:p9:*:*:*:*:*:* | 14.3 p9 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.4:-:*:*:*:*:*:* | 14.4 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.4:p1:*:*:*:*:*:* | 14.4 p1 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.4:p2:*:*:*:*:*:* | 14.4 p2 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.4:p3:*:*:*:*:*:* | 14.4 p3 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.4:p4:*:*:*:*:*:* | 14.4 p4 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.4:p5:*:*:*:*:*:* | 14.4 p5 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:14.4:rc1:*:*:*:*:*:* | 14.4 rc1 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:-:*:*:*:*:*:* | 15.0 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p1:*:*:*:*:*:* | 15.0 p1 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p2:*:*:*:*:*:* | 15.0 p2 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p3:*:*:*:*:*:* | 15.0 p3 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p4:*:*:*:*:*:* | 15.0 p4 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p5:*:*:*:*:*:* | 15.0 p5 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p6:*:*:*:*:*:* | 15.0 p6 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p7:*:*:*:*:*:* | 15.0 p7 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p8:*:*:*:*:*:* | 15.0 p8 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.0:p9:*:*:*:*:*:* | 15.0 p9 | Vulnerable | FreeBSD |
| cpe:2.3:o:freebsd:freebsd:15.1:rc2:*:*:*:*:*:* | 15.1 rc2 | Vulnerable | FreeBSD |
- cpe:2.3:o:freebsd:freebsd:14.3:p5:*:*:*:*:*:* Versions 14.3 p5 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p6:*:*:*:*:*:* Versions 14.3 p6 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p7:*:*:*:*:*:* Versions 14.3 p7 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p8:*:*:*:*:*:* Versions 14.3 p8 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.3:p9:*:*:*:*:*:* Versions 14.3 p9 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.4:-:*:*:*:*:*:* Versions 14.4 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.4:p1:*:*:*:*:*:* Versions 14.4 p1 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.4:p2:*:*:*:*:*:* Versions 14.4 p2 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.4:p3:*:*:*:*:*:* Versions 14.4 p3 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.4:p4:*:*:*:*:*:* Versions 14.4 p4 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.4:p5:*:*:*:*:*:* Versions 14.4 p5 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:14.4:rc1:*:*:*:*:*:* Versions 14.4 rc1 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:-:*:*:*:*:*:* Versions 15.0 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p1:*:*:*:*:*:* Versions 15.0 p1 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p2:*:*:*:*:*:* Versions 15.0 p2 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p3:*:*:*:*:*:* Versions 15.0 p3 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p4:*:*:*:*:*:* Versions 15.0 p4 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p5:*:*:*:*:*:* Versions 15.0 p5 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p6:*:*:*:*:*:* Versions 15.0 p6 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p7:*:*:*:*:*:* Versions 15.0 p7 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p8:*:*:*:*:*:* Versions 15.0 p8 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.0:p9:*:*:*:*:*:* Versions 15.0 p9 Vulnerable ·FreeBSD
- cpe:2.3:o:freebsd:freebsd:15.1:rc2:*:*:*:*:*:* Versions 15.1 rc2 Vulnerable ·FreeBSD
Remediation
- Fix · CNA FreeBSD (FreeBSD) Fixed in p10, p6, p15
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
FreeBSD p10, p15, p6
2 records Highest priority Priority HIGH 1 HIGH, 1 LOW
Other records, highest priority first
- TI-2026-33064 Arbitrary file overwrite via the KTLS receive pathPriority HIGH 69
Timeline
- 2026-10-02 Threatist record created from CVE-2026-45256
- 2026-10-03 Alias added: GHSA-hvc9-hvw8-q2fx
References
More Freebsd vulnerabilities
- TI-2011-04182 Buffer overflow in libtelnet/encrypt.c in telnetd in FreeBSD 7.3 through 9.0, MIT… CVSS 2.0HIGH 10.0
- TI-2007-03684 Integer overflow in print-bgp.c in the BGP dissector in tcpdump 3.9.6 and earlier allows… CVSS 3.1CRITICAL 9.8
- TI-2002-00376 Integer overflow in xdr_array function in RPC servers for operating systems that use… CVSS 3.1CRITICAL 9.8
- TI-2024-05929 Openssh: regresshion - race condition in ssh allows rce/dos CVSS 3.1HIGH 8.1
- TI-2003-00437 Off-by-one error in the fb_realpath() function, as derived from the realpath function in… CVSS 3.1CRITICAL 9.8
- TI-2003-00642 The prescan function in Sendmail 8.12.9 allows remote attackers to execute arbitrary code… CVSS 2.0HIGH 10.0
Sources
- CVE-2026-45256 · CVE Program
- CVE-2026-45256 · NVD
- FIRST EPSS
- GHSA-hvc9-hvw8-q2fx · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences