[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2025091507-CVE-2022-50282-322d@gregkh>
Date: Mon, 15 Sep 2025 16:21:24 +0200
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...nel.org>
Subject: CVE-2022-50282: chardev: fix error handling in cdev_device_add()
From: Greg Kroah-Hartman <gregkh@...nel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
chardev: fix error handling in cdev_device_add()
While doing fault injection test, I got the following report:
------------[ cut here ]------------
kobject: '(null)' (0000000039956980): is not initialized, yet kobject_put() is being called.
WARNING: CPU: 3 PID: 6306 at kobject_put+0x23d/0x4e0
CPU: 3 PID: 6306 Comm: 283 Tainted: G W 6.1.0-rc2-00005-g307c1086d7c9 #1253
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.13.0-1ubuntu1.1 04/01/2014
RIP: 0010:kobject_put+0x23d/0x4e0
Call Trace:
<TASK>
cdev_device_add+0x15e/0x1b0
__iio_device_register+0x13b4/0x1af0 [industrialio]
__devm_iio_device_register+0x22/0x90 [industrialio]
max517_probe+0x3d8/0x6b4 [max517]
i2c_device_probe+0xa81/0xc00
When device_add() is injected fault and returns error, if dev->devt is not set,
cdev_add() is not called, cdev_del() is not needed. Fix this by checking dev->devt
in error path.
The Linux kernel CVE team has assigned CVE-2022-50282 to this issue.
Affected and fixed versions
===========================
Issue introduced in 4.9.224 with commit da97a80a657d1b1b50ef633e8ff5dbf0d417fc8d and fixed in 4.9.337 with commit 5d2146889fad4cb9e6c13e790d4cfd871486eca8
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 4.14.303 with commit 6acf8597c5b04f455ee0649e11e5f3bcd28f381e
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 4.19.270 with commit 34d17b39bceef25e4cf9805cd59250ae05d0a139
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 5.4.229 with commit d85b5247a79355b8432bfd9ac871f96117f750d4
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 5.10.163 with commit c46db6088bccff5115674d583fef46ede80077a2
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 5.15.86 with commit 28dc61cc49c6e995121c6d86bef4b73df78dda80
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 6.0.16 with commit b5de1eac71fec1af7723f1083d23a24789fd795c
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 6.1.2 with commit 85a5660491b507d33662b8e81c142e6041e642eb
Issue introduced in 4.12 with commit 233ed09d7fdacf592ee91e6c97ce5f4364fbe7c0 and fixed in 6.2 with commit 11fa7fefe3d8fac7da56bc9aa3dd5fb3081ca797
Issue introduced in 3.16.83 with commit f78b54e7d83c7879f9a6e49e6724019ca34177cc
Issue introduced in 4.4.224 with commit d79d7d5c878809964da537336dad5ff55fa1605e
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2022-50282
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
fs/char_dev.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/5d2146889fad4cb9e6c13e790d4cfd871486eca8
https://git.kernel.org/stable/c/6acf8597c5b04f455ee0649e11e5f3bcd28f381e
https://git.kernel.org/stable/c/34d17b39bceef25e4cf9805cd59250ae05d0a139
https://git.kernel.org/stable/c/d85b5247a79355b8432bfd9ac871f96117f750d4
https://git.kernel.org/stable/c/c46db6088bccff5115674d583fef46ede80077a2
https://git.kernel.org/stable/c/28dc61cc49c6e995121c6d86bef4b73df78dda80
https://git.kernel.org/stable/c/b5de1eac71fec1af7723f1083d23a24789fd795c
https://git.kernel.org/stable/c/85a5660491b507d33662b8e81c142e6041e642eb
https://git.kernel.org/stable/c/11fa7fefe3d8fac7da56bc9aa3dd5fb3081ca797
Powered by blists - more mailing lists