Description
In the Linux kernel, the following vulnerability has been resolved: 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.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < 2006979a15af5404bf932a325357683c0bac1656affected9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < 6476c17d536dbd321c073242e762ddb2713a1238affected9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < f5547bebc416d56f56fb5b86dc20aabfa42165a0affected9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < 2bb6d82b586ea5a4cb73bbdd6b7432e96096bc77affected9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < f206def4e86d810f927ba1d8e322ea72b29bce58affected9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < b98ab51c45c5608a1c19ce7fd17a3032469bb83faffected9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < d67c6adee8d1b65330d0174c4c367faba14e80a8affected9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 to < bed6e04be8e6b9133d8b16d5a42d0e0ce674fa9aaffected
Linux Linux
Default version status: affected
2.6.15affected0 to < 2.6.15unaffected5.10.259 to ≤ 5.10.*unaffected5.15.210 to ≤ 5.15.*unaffected6.1.176 to ≤ 6.1.*unaffected6.6.143 to ≤ 6.6.*unaffected6.12.93 to ≤ 6.12.*unaffected6.18.35 to ≤ 6.18.*unaffected7.0.12 to ≤ 7.0.*unaffected7.1 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/2006979a15af5404bf932a325357683c0bac1656 ↗
- https://git.kernel.org/stable/c/6476c17d536dbd321c073242e762ddb2713a1238 ↗
- https://git.kernel.org/stable/c/f5547bebc416d56f56fb5b86dc20aabfa42165a0 ↗
- https://git.kernel.org/stable/c/2bb6d82b586ea5a4cb73bbdd6b7432e96096bc77 ↗
- https://git.kernel.org/stable/c/f206def4e86d810f927ba1d8e322ea72b29bce58 ↗
- https://git.kernel.org/stable/c/b98ab51c45c5608a1c19ce7fd17a3032469bb83f ↗
- https://git.kernel.org/stable/c/d67c6adee8d1b65330d0174c4c367faba14e80a8 ↗
- https://git.kernel.org/stable/c/bed6e04be8e6b9133d8b16d5a42d0e0ce674fa9a ↗