Your submission was sent successfully! Close

CVE-2019-18683

Published: 4 November 2019

An issue was discovered in drivers/media/platform/vivid in the Linux kernel through 5.3.8. It is exploitable for privilege escalation on some Linux distributions where local users have /dev/video0 access, but only if the driver happens to be loaded. There are multiple race conditions during streaming stopping in this driver (part of the V4L2 subsystem). These issues are caused by wrong mutex locking in vivid_stop_generating_vid_cap(), vivid_stop_generating_vid_out(), sdr_cap_stop_streaming(), and the corresponding kthreads. At least one of these race conditions leads to a use-after-free.

From the Ubuntu security team

It was discovered that a race condition existed in the Virtual Video Test Driver in the Linux kernel. An attacker with write access to /dev/video0 on a system with the vivid module loaded could possibly use this to gain administrative privileges.

Notes

AuthorNote
tyhicks
This rarely used driver module cannot be loaded by an unprivileged
user so the impact is lessened
Priority

Low

CVSS 3 base score: 7.0

Status

Package Release Status
linux
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-88.88)
disco Pending
(5.0.0-40.44)
eoan
Released (5.3.0-40.32)
focal Not vulnerable
(5.4.0-9.12)
precise Ignored
(was needs-triage ESM criteria)
trusty Ignored
(was needs-triage ESM criteria)
upstream
Released (5.5~rc1)
xenial
Released (4.4.0-173.203)
Patches:
Introduced by

3f682ffcf957b556a7868decd5593d765ed3455d

Fixed by 6dcd5d7a7a29c1e4b8016a06aed78cd650cd8c27
Introduced by

6de8653f410c5413a557eb48e2492a93f7af664b

Fixed by 6dcd5d7a7a29c1e4b8016a06aed78cd650cd8c27
linux-aws
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1060.62)
disco Ignored
(was pending \[5.0.0-1024.27\] now end-of-life)
eoan
Released (5.3.0-1011.12)
focal Not vulnerable
(5.4.0-1005.5)
precise Does not exist

trusty
Released (4.4.0-1061.65)
upstream
Released (5.5~rc1)
xenial
Released (4.4.0-1101.112)
linux-aws-5.0
Launchpad, Ubuntu, Debian
bionic
Released (5.0.0-1024.27~18.04.1)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-aws-5.3
Launchpad, Ubuntu, Debian
bionic Not vulnerable
(5.3.0-1016.17~18.04.1)
eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-aws-hwe
Launchpad, Ubuntu, Debian
bionic Does not exist

disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial
Released (4.15.0-1060.62~16.04.1)
linux-azure
Launchpad, Ubuntu, Debian
bionic
Released (5.0.0-1029.31~18.04.1)
disco Ignored
(was pending \[5.0.0-1029.31\] now end-of-life)
eoan
Released (5.3.0-1013.14)
focal Not vulnerable
(5.4.0-1006.6)
precise Does not exist

trusty
Released (4.15.0-1071.76~14.04.1)
upstream
Released (5.5~rc1)
xenial
Released (4.15.0-1071.76)
linux-azure-4.15
Launchpad, Ubuntu, Debian
bionic Not vulnerable
(4.15.0-1082.92)
eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-azure-5.3
Launchpad, Ubuntu, Debian
bionic
Released (5.3.0-1013.14~18.04.1)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-azure-edge
Launchpad, Ubuntu, Debian
bionic Ignored
(was needs-triage now end-of-life)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-gcp
Launchpad, Ubuntu, Debian
bionic
Released (5.0.0-1029.30~18.04.1)
disco Ignored
(was pending \[5.0.0-1029.30\] now end-of-life)
eoan
Released (5.3.0-1012.13)
focal Not vulnerable
(5.4.0-1005.5)
precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial
Released (4.15.0-1055.59)
linux-gcp-4.15
Launchpad, Ubuntu, Debian
bionic Not vulnerable
(4.15.0-1071.81)
eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-gcp-5.3
Launchpad, Ubuntu, Debian
bionic
Released (5.3.0-1012.13~18.04.1)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-gcp-edge
Launchpad, Ubuntu, Debian
bionic Ignored
(was needs-triage now end-of-life)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-gke-4.15
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1052.55)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-gke-5.0
Launchpad, Ubuntu, Debian
bionic
Released (5.0.0-1029.30~18.04.1)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-gke-5.3
Launchpad, Ubuntu, Debian
bionic
Released (5.3.0-1012.13~18.04.1)
eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-hwe
Launchpad, Ubuntu, Debian
bionic
Released (5.3.0-40.32~18.04.1)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial
Released (4.15.0-88.88~16.04.1)
linux-hwe-edge
Launchpad, Ubuntu, Debian
bionic Ignored
(was needed now end-of-life)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Ignored
(was needed now end-of-life)
linux-kvm
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1053.53)
disco Ignored
(was pending \[5.0.0-1025.27\] now end-of-life)
eoan
Released (5.3.0-1010.11)
focal Not vulnerable
(5.4.0-1004.4)
precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial
Released (4.4.0-1065.72)
linux-lts-trusty
Launchpad, Ubuntu, Debian
bionic Does not exist

disco Does not exist

eoan Does not exist

focal Does not exist

precise Ignored
(was needs-triage ESM criteria)
trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

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

disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty
Released (4.4.0-173.203~14.04.1)
upstream
Released (5.5~rc1)
xenial Does not exist

linux-oem
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1073.83)
disco Ignored
(reached end-of-life)
eoan Pending
(4.15.0-1076.86)
focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Ignored
(was needs-triage now end-of-life)
linux-oem-5.6
Launchpad, Ubuntu, Debian
bionic Does not exist

eoan Does not exist

focal Not vulnerable
(5.6.0-1007.7)
precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-oem-osp1
Launchpad, Ubuntu, Debian
bionic
Released (5.0.0-1037.42)
disco Ignored
(reached end-of-life)
eoan
Released (5.0.0-1037.42)
focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-oracle
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1033.36)
disco Ignored
(was pending \[5.0.0-1010.15\] now end-of-life)
eoan
Released (5.3.0-1009.10)
focal Not vulnerable
(5.4.0-1005.5)
precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial
Released (4.15.0-1033.36~16.04.1)
linux-oracle-5.0
Launchpad, Ubuntu, Debian
bionic
Released (5.0.0-1010.15~18.04.1)
disco Does not exist

eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-oracle-5.3
Launchpad, Ubuntu, Debian
bionic Not vulnerable
(5.3.0-1011.12~18.04.1)
eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

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

eoan Does not exist

focal Not vulnerable
(5.4.0-1007.7)
precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-raspi2
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1055.59)
disco Ignored
(was pending \[5.0.0-1025.26\] now end-of-life)
eoan
Released (5.3.0-1018.20)
focal Ignored
(was needed now end-of-life)
precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial
Released (4.4.0-1128.137)
linux-raspi2-5.3
Launchpad, Ubuntu, Debian
bionic
Released (5.3.0-1018.20~18.04.1)
eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

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

eoan Does not exist

focal Not vulnerable
(5.4.0-24.28)
precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial Does not exist

linux-snapdragon
Launchpad, Ubuntu, Debian
bionic
Released (4.15.0-1072.79)
disco Ignored
(was pending \[5.0.0-1029.31\] now end-of-life)
eoan Does not exist

focal Does not exist

precise Does not exist

trusty Does not exist

upstream
Released (5.5~rc1)
xenial
Released (4.4.0-1132.140)