Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <ab2c1aae-38d8-c15e-6109-f522f85936d2@linux.com>
Date: Sat, 2 Nov 2019 22:27:27 +0300
From: Alexander Popov <alex.popov@...ux.com>
To: oss-security@...ts.openwall.com
Subject: [ Linux kernel ] Exploitable bugs in drivers/media/platform/vivid

Hello!

I used the syzkaller fuzzer with custom modifications and found a bunch of
5-year old bugs in the Linux kernel. I managed to exploit one of them for a
local privilege escalation.

These vulnerabilities are caused by wrong mutex locking in the vivid driver of
the V4L2 subsystem. Please see the fixing patch that I've just sent to LKML:
https://lore.kernel.org/lkml/20191102190327.24903-1-alex.popov@linux.com/

The vivid driver doesn't require any special hardware. It is shipped in Ubuntu,
Debian, Arch Linux, SUSE Linux Enterprise and openSUSE.

On Ubuntu the devices created by this driver are available to the normal user,
since Ubuntu applies RW ACL when the user is logged in:
  a13x@...ntu_server_1804:~$ getfacl /dev/video0
  getfacl: Removing leading '/' from absolute path names
  # file: dev/video0
  # owner: root
  # group: video
  user::rw-
  user:a13x:rw-
  group::rw-
  mask::rw-
  other::---

(Un)fortunately, I don't know how to autoload the vulnerable driver, which
limits the severity of these vulnerabilities. That's why the Linux kernel
security team allows me to do the full disclosure.

But there is an interesting aspect -- my PoC exploit bypasses SMEP and SMAP on
the fresh Ubuntu Server 18.04. Moreover, it gains the local privilege escalation
from the kthread context (where the userspace is not mapped). I'm going to share
the details about the exploit techniques later.

For now I would recommend to blacklist the vivid kernel module on your machines.

Best regards,
Alexander

Powered by blists - more mailing lists

Please check out the Open Source Software Security Wiki, which is counterpart to this mailing list.

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.