HIGH Introduced in 2.6.12
ipvs FtpHelper Overflow
CVE-2026-90141
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
KernelScan AI6.4MEDIUM
01Description
In the Linux kernel, the following vulnerability has been resolved: ipvs: fix integer overflow in ftp helper port/address parsing ip_vs_ftp_get_addrport() accumulates decimal digits into a __u16 (hport) and into unsigned char (p[]) without checking for overflow. A crafted FTP PASV/EPSV response with an over-long port or address octet wraps the value, so the helper configures the data connection with a truncated port/address. The netfilter conntrack FTP helper had the same defect, fixed in commit 2b413fc689ba ("netfilter: nf_conntrack_ftp: avoid u16 overflows"). Apply the equivalent fix here: widen the port accumulator to u32 and reject values above 65535, and reject address octets above 255.
02KernelScan AI Analysis
Risk summary
A crafted FTP PASV or EPSV response passing through an IPVS load balancer with the FTP helper enabled can cause integer overflows in port and address parsing, leading to truncated values being used for data connection tracking. A malicious or compromised FTP server behind the load balancer can exploit this to redirect data connections or create conntrack expectations for unintended ports, potentially bypassing firewall rules. No privileges on the load balancer itself are required — only the ability to send FTP responses through it.
Vulnerability analysis
The IPVS FTP helper parses FTP PASV/EPSV responses to extract the data-connection port and address by accumulating decimal digits into fixed-width integer types without any overflow check. A crafted response with over-long numeric fields causes the port or address octets to silently wrap, so the helper programs the data connection with a truncated, incorrect value — potentially opening a conntrack expectation for an unintended port or host. The fix widens the port accumulator to 32 bits and rejects any value above 65535, and rejects address octets above 255, mirroring the earlier fix applied to the netfilter conntrack FTP helper. The vulnerability is reachable from any FTP server whose traffic transits an IPVS load balancer with the FTP helper loaded; the attacker needs no privileges on the load balancer, only the ability to deliver a crafted FTP response through it.
Lifecycle
03Fix Versions
| Branch | Introduced | Fixed in | Patch commit |
|---|---|---|---|
| 5.10 | 2.6.12 | 5.10.270 | d02de9a7a7e2 |
| 5.15 | 2.6.12 | 5.15.221 | fc1493c905d7 |
| 6.1 | 2.6.12 | 6.1.188 | 50cb9b7263a2 |
| 6.12 | 2.6.12 | 6.12.110 | 00bcc6d67926 |
| 6.18 | 2.6.12 | 6.18.52 | 4aed450adaee |
| 6.6 | 2.6.12 | 6.6.157 | deaa88fa010b |
| 7.2 | 2.6.12 | 7.2.6 | b1908bff0faa |
| mainline | 2.6.12 | 7.3 | e625a9477d12 |
| cip/5.10 | 2.6.12 | 5.10.271-cip78 | d02de9a7a7e2 |
| cip/6.1 | 2.6.12 | 6.1.189-cip61 | 50cb9b7263a2 |
| cip/6.1-rt | 2.6.12 | 6.1.189-cip61-rt32 | 50cb9b7263a2 |
| cip/6.12 | 2.6.12 | 6.12.111-cip32 | 00bcc6d67926 |
04CIP Kernels
State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.
| CIP tree | State |
|---|---|
| cip/6.12 | Fixed in 6.12.111-cip32 |
| cip/6.1 | Fixed in 6.1.189-cip61 |
| cip/6.1-rt | Fixed in 6.1.189-cip61-rt32 |
| cip/5.10 | Fixed in 5.10.271-cip78 |
| cip/5.10-rt | Affected — no CIP fix yet (latest 5.10.268-cip77-rt34) |
| cip/4.19 | Affected — no CIP fix yet (latest 4.19.325-cip136) |
| cip/4.19-rt | Affected — no CIP fix yet (latest 4.19.325-cip136-rt50) |
| cip/4.4 | Affected — no CIP fix yet (latest 4.4.302-cip115) |
| cip/4.4-rt | Affected — no CIP fix yet (latest 4.4.302-cip115-rt63) |