diff options
| author | Hamza Mahfooz <hamzamahfooz@linux.microsoft.com> | 2026-05-11 10:43:14 -0400 |
|---|---|---|
| committer | Florian Westphal <fw@strlen.de> | 2026-05-22 12:27:55 +0200 |
| commit | bed6e04be8e6b9133d8b16d5a42d0e0ce674fa9a (patch) | |
| tree | fcfa177ffe3869988061bcf67dab40b7bb1bdabc /samples/workqueue | |
| parent | 68993ced0f618e36cf33388f1e50223e5e6e78cc (diff) | |
netfilter: conntrack: tcp: do not force CLOSE on invalid-seq RST without direction check
An unintended behavior in the TCP conntrack state machine allows a
connection to be forced into the CLOSE state using an RST packet with an
invalid sequence number.
Specifically, after a SYN packet is observed, an RST with an invalid SEQ
can transition the conntrack entry to TCP_CONNTRACK_CLOSE, regardless of
whether the RST corresponds to the expected reply direction. The relevant
code path assumes the RST is a response to an outgoing SYN, but does not
validate packet direction or ensure that a matching SYN was actually sent
in the opposite direction.
As a result, a crafted packet sequence consisting of a SYN followed by an
invalid-sequence RST can prematurely terminate an active NAT entry. This
makes connection teardown easier than intended.
So, tighten the state transition logic to ensure that RST-triggered
CLOSE transitions only occur when the RST is a valid response to a
previously observed SYN in the correct direction.
Cc: stable@vger.kernel.org
Fixes: 9fb9cbb1082d ("[NETFILTER]: Add nf_conntrack subsystem.")
Signed-off-by: Hamza Mahfooz <hamzamahfooz@linux.microsoft.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'samples/workqueue')
0 files changed, 0 insertions, 0 deletions
