diff options
author | Hui Peng <benquike@gmail.com> | 2018-12-03 18:09:34 +0300 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2018-12-03 18:09:38 +0300 |
commit | 5f8cf712582617d523120df67d392059eaf2fc4b (patch) | |
tree | 7da2be099988c205516860e9bfba4c839df67286 /tools/perf/scripts/python/syscall-counts-by-pid.py | |
parent | 54947cd64c1b8290f64bb2958e343c07270e3a58 (diff) | |
download | linux-5f8cf712582617d523120df67d392059eaf2fc4b.tar.xz |
ALSA: usb-audio: Fix UAF decrement if card has no live interfaces in card.c
If a USB sound card reports 0 interfaces, an error condition is triggered
and the function usb_audio_probe errors out. In the error path, there was a
use-after-free vulnerability where the memory object of the card was first
freed, followed by a decrement of the number of active chips. Moving the
decrement above the atomic_dec fixes the UAF.
[ The original problem was introduced in 3.1 kernel, while it was
developed in a different form. The Fixes tag below indicates the
original commit but it doesn't mean that the patch is applicable
cleanly. -- tiwai ]
Fixes: 362e4e49abe5 ("ALSA: usb-audio - clear chip->probing on error exit")
Reported-by: Hui Peng <benquike@gmail.com>
Reported-by: Mathias Payer <mathias.payer@nebelwelt.net>
Signed-off-by: Hui Peng <benquike@gmail.com>
Signed-off-by: Mathias Payer <mathias.payer@nebelwelt.net>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'tools/perf/scripts/python/syscall-counts-by-pid.py')
0 files changed, 0 insertions, 0 deletions