CVE-2025-68206

Source
https://cve.org/CVERecord?id=CVE-2025-68206
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-68206.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2025-68206
Downstream
Related
Published
2025-12-16T13:48:33.763Z
Modified
2026-03-20T12:46:17.474642Z
Summary
netfilter: nft_ct: add seqadj extension for natted connections
Details

In the Linux kernel, the following vulnerability has been resolved:

netfilter: nft_ct: add seqadj extension for natted connections

Sequence adjustment may be required for FTP traffic with PASV/EPSV modes. due to need to re-write packet payload (IP, port) on the ftp control connection. This can require changes to the TCP length and expected seq / ack_seq.

The easiest way to reproduce this issue is with PASV mode. Example ruleset: table inet ftpnat { ct helper ftphelper { type "ftp" protocol tcp l3proto inet }

    chain prerouting {
            type filter hook prerouting priority 0; policy accept;
            tcp dport 21 ct state new ct helper set "ftp_helper"
    }

} table ip nat { chain prerouting { type nat hook prerouting priority -100; policy accept; tcp dport 21 dnat ip prefix to ip daddr map { 192.168.100.1 : 192.168.13.2/32 } }

    chain postrouting {
            type nat hook postrouting priority 100 ; policy accept;
            tcp sport 21 snat ip prefix to ip saddr map {
        192.168.13.2 : 192.168.100.1/32 }
    }

}

Note that the ftp helper gets assigned after the dnat setup.

The inverse (nat after helper assign) is handled by an existing check in nfnatsetup_info() and will not show the problem.

Topoloy:

+-------------------+ +----------------------------------+ | FTP: 192.168.13.2 | <-> | NAT: 192.168.13.3, 192.168.100.1 | +-------------------+ +----------------------------------+ | +-----------------------+ | Client: 192.168.100.2 | +-----------------------+

ftp nat changes do not work as expected in this case: Connected to 192.168.100.1. [..] ftp> epsv EPSV/EPRT on IPv4 off. ftp> ls 227 Entering passive mode (192,168,100,1,209,129). 421 Service not available, remote server has closed connection.

Kernel logs: Missing nfctseqadjextadd() setup call WARNING: CPU: 1 PID: 0 at net/netfilter/nfconntrack_seqadj.c:41 [..] _nfnatmangletcppacket+0x100/0x160 [nfnat] nfnatftp+0x142/0x280 [nfnatftp] help+0x4d1/0x880 [nfconntrackftp] nfconfirm+0x122/0x2e0 [nfconntrack] nfhookslow+0x3c/0xb0 ..

Fix this by adding the required extension when a conntrack helper is assigned to a connection that has a nat binding.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/68xxx/CVE-2025-68206.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
1a64edf54f55d7956cf5a0d95898bc1f84f9b818
Fixed
4ab2cd906e4e1a19ddbda6eb532851b0e9cda110
Fixed
2b52d89cbbb0dbe3e948d8d9a91e704316dccfe6
Fixed
90918e3b6404c2a37837b8f11692471b4c512de2

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-68206.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.12.0
Fixed
6.12.64
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.17.9

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-68206.json"