KernelScan.io

HIGH Introduced in 2.6.12

ipvs FtpHelper Overflow

CVE-2026-90141

CVSS 7.3 / 10.0 NVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L

KernelScan AI6.4MEDIUM

01

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.

02

Engine v0.6.0

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.

Affectednet/netfilter/ipvs/ip_vs_ftp.c (IPVS FTP helper)

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.

03

BranchIntroducedFixed inPatch commit
5.102.6.125.10.270d02de9a7a7e2
5.152.6.125.15.221fc1493c905d7
6.12.6.126.1.18850cb9b7263a2
6.122.6.126.12.11000bcc6d67926
6.182.6.126.18.524aed450adaee
6.62.6.126.6.157deaa88fa010b
7.22.6.127.2.6b1908bff0faa
mainline2.6.127.3e625a9477d12
cip/5.102.6.125.10.271-cip78d02de9a7a7e2
cip/6.12.6.126.1.189-cip6150cb9b7263a2
cip/6.1-rt2.6.126.1.189-cip61-rt3250cb9b7263a2
cip/6.122.6.126.12.111-cip3200bcc6d67926

04

State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.

CIP treeState
cip/6.12Fixed in 6.12.111-cip32
cip/6.1Fixed in 6.1.189-cip61
cip/6.1-rtFixed in 6.1.189-cip61-rt32
cip/5.10Fixed in 5.10.271-cip78
cip/5.10-rtAffected — no CIP fix yet (latest 5.10.268-cip77-rt34)
cip/4.19Affected — no CIP fix yet (latest 4.19.325-cip136)
cip/4.19-rtAffected — no CIP fix yet (latest 4.19.325-cip136-rt50)
cip/4.4Affected — no CIP fix yet (latest 4.4.302-cip115)
cip/4.4-rtAffected — no CIP fix yet (latest 4.4.302-cip115-rt63)