CVE-2019-7303 (retired)

A vulnerability in the seccomp filters of Canonical snapd before version
2.37.4 allows a strict mode snap to insert characters into a terminal on a
64-bit host. The seccomp rules were generated to match 64-bit ioctl(2)
commands on a 64-bit platform; however, the Linux kernel only uses the
lower 32 bits to determine which ioctl(2) commands to run. This issue
affects: Canonical snapd versions prior to 2.37.4.
 jdstrand> this is a kernel limitation that is documented in the seccomp man
  page, but arguably the kernel should perform the seccomp filter check on the
  value that it is ultimately going to process (which likely means an
  improvement to libseccomp to generate the appropriate BPF to do this)
 jdstrand> this was further complicated by the fact that the kernel and glibc
  disagree on the function prototype of ioctl, where the glibc man page
  documents it as unsigned long and the kernel treats it as int (note, the
  tty_ioctl man page (which is the one that documents TIOCSTI) lists the ioctl
  second argument as an int)
 jdstrand> due to miscoordination, 2.37.4 is going to -updates first as part of
  the regular SRU cycle. Once that passes, we'll rebuild and publish to the
  security pocket and issue a USN.
 jdstrand> once this issue is public, the global profile initialization code
  that is used to address this issue will also be made public
Source: snapd (LP Ubuntu Debian)
Upstream:released (2.37.4)
Ubuntu 12.04 ESM (Precise Pangolin):DNE
Ubuntu 16.04 LTS (Xenial Xerus):released (2.37.4)
Ubuntu 18.04 LTS (Bionic Beaver):released (2.37.4+18.04)
Ubuntu 19.04 (Disco Dingo):not-affected (2.37.4+19.04)
Upstream: (part 1)
Upstream: (part 2)
More Information

Updated: 2019-08-23 09:40:16 UTC (commit 436fd4ed4cf0038ddd382cb8649607ace163dda7)