Home

Description

When a challenge ACK is to be sent tcp_respond() constructs and sends the challenge ACK and consumes the mbuf that is passed in. When no challenge ACK should be sent the function returns and leaks the mbuf. If an attacker is either on path with an established TCP connection, or can themselves establish a TCP connection, to an affected FreeBSD machine, they can easily craft and send packets which meet the challenge ACK criteria and cause the FreeBSD host to leak an mbuf for each crafted packet in excess of the configured rate limit settings i.e. with default settings, crafted packets in excess of the first 5 sent within a 1s period will leak an mbuf. Technically, off-path attackers can also exploit this problem by guessing the IP addresses, TCP port numbers and in some cases the sequence numbers of established connections and spoofing packets towards a FreeBSD machine, but this is harder to do effectively.

PUBLISHED Reserved 2026-03-16 | Published 2026-03-26 | Updated 2026-03-26 | Assigner freebsd

Problem types

CWE-401: Missing Release of Memory after Effective Lifetime

Product status

Default status
unknown

15.0-RELEASE (release) before p5
affected

14.4-RELEASE (release) before p1
affected

14.3-RELEASE (release) before p10
affected

Credits

Michael Tuexen (Netflix) finder

References

security.freebsd.org/advisories/FreeBSD-SA-26:06.tcp.asc vendor-advisory

cve.org (CVE-2026-4247)

nvd.nist.gov (CVE-2026-4247)

Download JSON