Your submission was sent successfully! Close

CVE-2019-11479

Published: 17 June 2019

Jonathan Looney discovered that the Linux kernel default MSS is hard-coded to 48 bytes. This allows a remote peer to fragment TCP resend queues significantly more than if a larger MSS were enforced. 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 commits 967c05aee439e6e5d7d805e195b3a20ef5c433d6 and 5f3e2bf008c2221478101ee72f5cb4654b9fc363.

From the Ubuntu security team

Jonathan Looney discovered that the Linux kernel could be coerced into segmenting responses into multiple TCP segments. A remote attacker could construct an ongoing sequence of requests to cause a denial of service.

Mitigation

This can be mitigated by dropping all packets which specify a too small
MSS value. For example, to only allow MSS values of greater than 500
bytes, an iptables rule can be specified as:
  sudo iptables -A INPUT -p tcp -m tcpmss --mss 1:500 -j DROP
Note: this will only take effect if the net.ipv4.tcp_mtu_probing sysctl is
disabled as well.
Priority

Medium

CVSS 3 base score: 7.5

Status

Package Release Status
linux
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-54.58)
cosmic
Released (4.18.0-25.26)
disco
Released (5.0.0-20.21)
precise Ignored
(was needed ESM criteria)
trusty Ignored
(was needed ESM criteria)
upstream
Released (5.2~rc6)
xenial
Released (4.4.0-154.181)
linux-aws
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1043.45)
cosmic
Released (4.18.0-1020.24)
disco
Released (5.0.0-1010.11)
precise Does not exist

trusty
Released (4.4.0-1048.52)
upstream
Released (5.2~rc6)
xenial
Released (4.4.0-1087.98)
linux-aws-hwe
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.15.0-1043.45~16.04.1)
linux-azure
Launchpad, Ubuntu, Debian
bionic
Released (4.18.0-1023.24~18.04.1)
cosmic
Released (4.18.0-1023.24)
disco
Released (5.0.0-1010.10)
precise Does not exist

trusty
Released (4.15.0-1049.54~14.04.1)
upstream
Released (5.2~rc6)
xenial
Released (4.15.0-1049.54)
linux-azure-edge
Launchpad, Ubuntu, Debian
bionic
Released (4.18.0-1023.24~18.04.1)
cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.15.0-1049.54)
linux-euclid
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Ignored
(was needed now end-of-life)
linux-flo
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Ignored
(abandoned)
linux-gcp
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1036.38)
cosmic
Released (4.18.0-1015.16)
disco
Released (5.0.0-1010.10)
precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.15.0-1036.38~16.04.1)
linux-gcp-edge
Launchpad, Ubuntu, Debian
bionic
Released (4.18.0-1015.16~18.04.1)
cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-gke
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Ignored
(end-of-life)
linux-gke-4.15
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1036.38)
disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-gke-5.0
Launchpad, Ubuntu, Debian
bionic Not vulnerable
(5.0.0-1011.11~18.04.1)
disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-goldfish
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Ignored
(end-of-life)
linux-grouper
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-hwe
Launchpad, Ubuntu, Debian
bionic
Released (4.18.0-25.26~18.04.1)
cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.15.0-54.58~16.04.1)
linux-hwe-edge
Launchpad, Ubuntu, Debian
bionic
Released (5.0.0-20.21~18.04.1)
cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.15.0-54.58~16.04.1)
linux-kvm
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1038.38)
cosmic
Released (4.18.0-1016.17)
disco
Released (5.0.0-1010.11)
precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.4.0-1051.58)
linux-lts-trusty
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Ignored
(was needed ESM criteria)
trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-lts-utopic
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-lts-vivid
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-lts-wily
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-lts-xenial
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty
Released (4.4.0-154.181~14.04.1)
upstream
Released (5.2~rc6)
xenial Does not exist

linux-maguro
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-mako
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Ignored
(abandoned)
linux-manta
Launchpad, Ubuntu, Debian
bionic Does not exist

cosmic Does not exist

disco Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Does not exist

linux-oem
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1045.50)
cosmic Ignored
(was pending \[4.15.0-1045.50\] now end-of-life)
disco
Released (4.15.0-1045.50)
precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial Ignored
(was needed now end-of-life)
linux-oracle
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1017.19)
cosmic Ignored
(was pending \[4.15.0-1017.19\] now end-of-life)
disco
Released (4.15.0-1017.19)
precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.15.0-1017.19~16.04.2)
linux-raspi2
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1040.43)
cosmic
Released (4.18.0-1018.21)
disco
Released (5.0.0-1012.12)
precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.4.0-1114.123)
linux-snapdragon
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1057.62)
cosmic Does not exist

disco
Released (5.0.0-1016.17)
precise Does not exist

trusty Does not exist

upstream
Released (5.2~rc6)
xenial
Released (4.4.0-1118.124)

Notes

AuthorNote
tyhicks
This issue is primarily due to the TCP spec not defining a minimum
value for the Minimum Segment Size (MSS). The Linux kernel cannot safely put
a restriction on the MSS because it may break valid TCP connections. This
issue will be addressed by allowing a system administrator to raise the
smallest acceptable MSS value but there will be no default mitigation by
default.

References

Bugs