CVE-2019-11477: Integer overflow in TCP_SKB_CB(skb)->tcp_gso_segs
An integer overflow flaw was found in the way the Linux kernel's networking subsystem processed TCP Selective Acknowledgment (SACK) segments. While processing SACK segments, the Linux kernel's socket buffer (SKB) data structure becomes fragmented. Each fragment is about TCP maximum segment size (MSS) bytes. To efficiently process SACK blocks, the Linux kernel merges multiple fragmented SKBs into one, potentially overflowing the variable holding the number of segments. A remote attacker could use this flaw to crash the Linux kernel by sending a crafted sequence of SACK segments on a TCP connection with small value of TCP MSS, resulting in a denial of service (DoS).
Other sources
An integer overflow issue was found in the way Linux kernel processes TCP Selective Acknowledgement(SACK) segments. While processing SACK segments, Linux kernel's socket buffer(SBK) data structure becomes fragmented. Each fragment is about TCP MSS bytes. To efficiently process SACK blocks, Linux combines multiple fragmented SKB into one. This merging of SKB results in the said integer overflow issue, as more number of segments exceed the 16bit width of 'TCPSKBCB(skb)->tcpgsosegs' parameter in tcpshiftedskb() routine.
A remote attacker could use this flaw to crash the Linux kernel by sending a crafted sequence of SACK segments on a TCP connection with minimum value of TCP MSS, resulting in DoS.
Upstream patch: --------------- -> https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git/commit/?id=3b4929f65b0d8249f19a50245cd88ed1a2f78cff
Reference: ---------- -> https://www.ietf.org/rfc/rfc2018.txt -> http://vger.kernel.org/~davem/skbdata.html -> https://git.kernel.org/linus/832d11c5cd076abc0aa1eaf7be96c81d1a59ce41
— Red Hat
Jonathan Looney discovered that the TCPSKBCB(skb)->tcpgsosegs value was subject to an integer overflow in the Linux kernel when handling TCP Selective Acknowledgments (SACKs). A remote attacker could use this to cause a denial of service. This has been fixed in stable kernel releases 4.4.182, 4.9.182, 4.14.127, 4.19.52, 5.1.11, and is fixed in commit 3b4929f65b0d8249f19a50245cd88ed1a2f78cff.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:2.6.32-754.15.3.el6 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:2.6.32-431.95.3.el6 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:2.6.32-504.79.3.el6 - Upgrade
Upgrade
redhat/kernel-rtto a version that resolves this vulnerability.Fixed in 0:3.10.0-957.21.3.rt56.935.el7 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:3.10.0-957.21.3.el7 - Upgrade
Upgrade
redhat/kernel-altto a version that resolves this vulnerability.Fixed in 0:4.14.0-115.8.2.el7a - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:3.10.0-327.79.2.el7 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:3.10.0-514.66.2.el7 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:3.10.0-693.50.3.el7 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:3.10.0-862.34.2.el7 - Upgrade
Upgrade
redhat/kernel-rtto a version that resolves this vulnerability.Fixed in 0:4.18.0-80.4.2.rt9.152.el8_0 - Upgrade
Upgrade
redhat/kernelto a version that resolves this vulnerability.Fixed in 0:4.18.0-80.4.2.el8_0 - Upgrade
Upgrade
redhat/kernel-rtto a version that resolves this vulnerability.Fixed in 1:3.10.0-693.50.3.rt56.644.el6 - Upgrade
Upgrade
redhat/redhat-release-virtualization-hostto a version that resolves this vulnerability.Fixed in 0:4.2-11.1.el7 - Upgrade
Upgrade
redhat/redhat-virtualization-hostto a version that resolves this vulnerability.Fixed in 0:4.2-20190618.0.el7_6 - Upgrade
Upgrade
redhat/redhat-release-virtualization-hostto a version that resolves this vulnerability.Fixed in 0:4.3.4-1.el7e - Upgrade
Upgrade
redhat/redhat-virtualization-hostto a version that resolves this vulnerability.Fixed in 0:4.3.4-20190620.3.el7_6 - Upgrade
Upgrade
Siemens Simatic Cloud Connect 7 CC712to a version that resolves this vulnerability.Fixed in 1.1.5 - Upgrade
Upgrade
Siemens ROXto a version that resolves this vulnerability.Fixed in 2.13.3 - Upgrade
Upgrade
Siemens RUGGEDCOM RM1224to a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens SCALANCE M804PBto a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens Scalance M812-1 ADSL Routerto a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens Scalance M816-1 ADSL-Router Firmwareto a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens SCALANCE M826-2 SHDSL-Routerto a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens SCALANCE M874-2to a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens SCALANCE M874-3to a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens SCALANCE M876-3to a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens SCALANCE M876-4to a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens Scalance S602 Firmwareto a version that resolves this vulnerability.Fixed in 4.1 - Upgrade
Upgrade
Siemens Scalance S612 Firmwareto a version that resolves this vulnerability.Fixed in 4.1 - Upgrade
Upgrade
Siemens SCALANCE S615to a version that resolves this vulnerability.Fixed in 6.2 - Upgrade
Upgrade
Siemens Scalance S623 Firmwareto a version that resolves this vulnerability.Fixed in 4.1 - Upgrade
Upgrade
Siemens Scalance S627-2M Firmwareto a version that resolves this vulnerability.Fixed in 4.1 - Upgrade
Upgrade
Siemens SCALANCE SC622-2Cto a version that resolves this vulnerability.Fixed in 2.0.1 - Upgrade
Upgrade
Siemens SCALANCE SC632-2Cto a version that resolves this vulnerability.Fixed in 2.0.1 - Upgrade
Upgrade
Siemens SCALANCE SC636-2Cto a version that resolves this vulnerability.Fixed in 2.0.1 - Upgrade
Upgrade
Siemens SCALANCE SC642-2Cto a version that resolves this vulnerability.Fixed in 2.0.1 - Upgrade
Upgrade
Siemens SCALANCE SC646-2Cto a version that resolves this vulnerability.Fixed in 2.0.1 - Upgrade
Upgrade
Siemens Scalance W1750D Firmwareto a version that resolves this vulnerability.Fixed in 8.6.0 - Upgrade
Upgrade
Siemens SCALANCE W-700to a version that resolves this vulnerability.Fixed in 6.4 - Upgrade
Upgrade
Siemens SCALANCE W1700 IEEE 802.11acto a version that resolves this vulnerability.Fixed in 2.0 - Upgrade
Upgrade
Siemens SIMATIC CM 1542-1 Firmwareto a version that resolves this vulnerability.Fixed in 3.0 - Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.1.176-1Fixed in 6.1.190-1Fixed in 6.12.107-1Fixed in 6.12.113-1Fixed in 7.2.12-1 - Upgrade
Upgrade
Linux kernelto a version that resolves this vulnerability.Fixed in 4.4.182 - Upgrade
Upgrade
Linux kernelto a version that resolves this vulnerability.Fixed in 4.9.182 - Upgrade
Upgrade
Linux kernelto a version that resolves this vulnerability.Fixed in 4.14.127 - Upgrade
Upgrade
Linux kernelto a version that resolves this vulnerability.Fixed in 4.19.52 - Upgrade
Upgrade
Linux kernelto a version that resolves this vulnerability.Fixed in 5.1.11
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is the severity of CVE-2019-11477?
CVE-2019-11477 has a high severity rating due to the potential for an integer overflow that could lead to denial of service or code execution.
How do I fix CVE-2019-11477?
To fix CVE-2019-11477, update your Linux kernel to the fixed versions provided by your distribution, such as those specified in Red Hat and Debian advisories.
Which versions of the Linux kernel are affected by CVE-2019-11477?
CVE-2019-11477 affects several Linux kernel versions, specifically versions prior to the vendor-specific patched releases.
What exploits are associated with CVE-2019-11477?
Exploits associated with CVE-2019-11477 may allow attackers to cause denial of service or potentially execute arbitrary code on affected systems.
Who is impacted by CVE-2019-11477?
Users running affected versions of the Linux kernel, especially on servers and devices utilizing TCP, should be aware of the vulnerability and take action to secure their systems.