FreeBSD VuXML: Documenting security issues in FreeBSD and the FreeBSD Ports Collection

FreeBSD -- Local DoS and possible privilege escalation via routing sockets

Affected packages
15.0 <= FreeBSD-kernel < 15.0_4
14.3 <= FreeBSD-kernel < 14.3_9
13.5 <= FreeBSD-kernel < 13.5_10

Details

VuXML ID fbc47390-11e9-11f1-8148-bc241121aa0a
Discovery 2026-02-24
Entry 2026-02-25

Problem Description:

The rtsock_msg_buffer() function serializes routing information into a buffer. As a part of this, it copies sockaddr structures into a sockaddr_storage structure on the stack. It assumes that the source sockaddr length field had already been validated, but this is not necessarily the case, and it's possible for a malicious userspace program to craft a request which triggers a 127-byte overflow.

In practice, this overflow immediately overwrites the canary for the rtsock_msg_buffer() stack frame, resulting in a panic once the function returns.

Impact:

The bug allows an unprivileged user to crash the kernel by triggering a stack buffer overflow in rtsock_msg_buffer(). In particular, the overflow will corrupt a stack canary value that is verified when the function returns; this mitigates the impact of the stack overflow by triggering a kernel panic.

Other kernel bugs may exist which allow userspace to find the canary value and thus defeat the mitigation, at which point local privilege escalation may be possible.

References

CVE Name CVE-2026-3038
FreeBSD Advisory SA-26:05.route