Subject: CVE-2023-52512: pinctrl: nuvoton: wpcm450: fix out of bounds write

From: Greg Kroah-Hartman <[email-masked]>

Description
===========

In the Linux kernel, the following vulnerability has been resolved:

pinctrl: nuvoton: wpcm450: fix out of bounds write

Write into 'pctrl->gpio_bank' happens before the check for GPIO index
validity, so out of bounds write may happen.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

The Linux kernel CVE team has assigned CVE-2023-52512 to this issue.

Affected and fixed versions
===========================

	Issue introduced in 5.18 with commit a1d1e0e3d80a and fixed in 6.1.59 with commit 6c18c386fd13
	Issue introduced in 5.18 with commit a1d1e0e3d80a and fixed in 6.5.8 with commit c9d7cac0fd27
	Issue introduced in 5.18 with commit a1d1e0e3d80a and fixed in 6.6 with commit 87d315a34133

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-2023-52512
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:
	drivers/pinctrl/nuvoton/pinctrl-wpcm450.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/6c18c386fd13dbb3ff31a1086dabb526780d9bda
	https://git.kernel.org/stable/c/c9d7cac0fd27c74dd368e80dc4b5d0f9f2e13cf8
	https://git.kernel.org/stable/c/87d315a34133edcb29c4cadbf196ec6c30dfd47b