First published: Fri Oct 13 2017(Updated: )
A use-after-free vulnerability was found at creating and deleting a port via an ioctl on /dev/snd/seq. The snd_seq_create_port() function creates a port object and returns its pointer, but it doesn't take a refcount and can be deleted immediately by another thread. Meanwhile, snd_seq_ioctl_create_port() still calls the function snd_seq_system_client_ev_port_start() with the created port object that is being deleted, which triggers use-after-free. An attacker can race this use for memory corruption or possibly privilege escalation. At the time of writing, the permissions on the device file required a local console user to be issue the ioctl to allow for the exploit to work correctly. Remote users accessing the system via a shell were not granted permissions to issue an IOCTL that can trigger this condition. References: <a href="http://seclists.org/oss-sec/2017/q4/58">http://seclists.org/oss-sec/2017/q4/58</a> <a href="http://mailman.alsa-project.org/pipermail/alsa-devel/2017-October/126292.html">http://mailman.alsa-project.org/pipermail/alsa-devel/2017-October/126292.html</a> An upstream patch: <a href="https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=71105998845fb012937332fe2e806d443c09e026">https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=71105998845fb012937332fe2e806d443c09e026</a>
Credit: cve@mitre.org cve@mitre.org
Affected Software | Affected Version | How to fix |
---|---|---|
Linux Linux kernel | <3.2.95 | |
Linux Linux kernel | >=3.3<3.10.108 | |
Linux Linux kernel | >=3.11<3.16.50 | |
Linux Linux kernel | >=3.17<3.18.76 | |
Linux Linux kernel | >=3.19<4.1.46 | |
Linux Linux kernel | >=4.2<4.4.93 | |
Linux Linux kernel | >=4.5<4.9.57 | |
Linux Linux kernel | >=4.10<4.13.8 | |
Google Android | ||
debian/linux | 5.10.223-1 5.10.226-1 6.1.115-1 6.1.119-1 6.11.10-1 6.12.5-1 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.