In the Linux kernel, the following vulnerability has been resolved:
media: gspca: cpia1: shift-out-of-bounds in set_flicker
Syzkaller reported the following issue: UBSAN: shift-out-of-bounds in drivers/media/usb/gspca/cpia1.c:1031:27 shift exponent 245 is too large for 32-bit type 'int'
When the value of the variable "sd->params.exposure.gain" exceeds the number of bits in an integer, a shift-out-of-bounds error is reported. It is triggered because the variable "currentexp" cannot be left-shifted by more than the number of bits in an integer. In order to avoid invalid range during left-shift, the conditional expression is added.
[
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@09cd8b561aa9796903710a1046957f2b112c8f26",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-02222146",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8f83c85ee88225319c52680792320c02158c2a9b",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-0cf796a9",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@69bba62600bd91d6b7c1e8ca181faf8ac64f7060",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-17b1db25",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2eee8edfff90e22980a6b22079d238c3c9d323bb",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-2447d4ca",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@09cd8b561aa9796903710a1046957f2b112c8f26",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-26f77227",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a647f27a7426d2fe1b40da7c8fa2b81354a51177",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-5597bca2",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2eee8edfff90e22980a6b22079d238c3c9d323bb",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-6068ff95",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@69bba62600bd91d6b7c1e8ca181faf8ac64f7060",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-62a28fbe",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@93bddd6529f187f510eec759f37d0569243c9809",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-74766db9",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e2d7149b913d14352c82624e723ce1c211ca06d3",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-860b3cd8",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@099be1822d1f095433f4b08af9cc9d6308ec1953",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-a4ee17dc",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@93bddd6529f187f510eec759f37d0569243c9809",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-ab52b037",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c6b6b8692218da73b33b310d7c1df90f115bdd9a",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-ab62b613",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8f83c85ee88225319c52680792320c02158c2a9b",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-ac7901a7",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c6b6b8692218da73b33b310d7c1df90f115bdd9a",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-b7c16775",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e2d7149b913d14352c82624e723ce1c211ca06d3",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-b9df57c6",
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@099be1822d1f095433f4b08af9cc9d6308ec1953",
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "253809536286771313167020200031345040687",
"length": 3814.0
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c",
"function": "set_flicker"
},
"id": "CVE-2023-52764-c7d6b72a",
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a647f27a7426d2fe1b40da7c8fa2b81354a51177",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"48110071904382731699477888271513825369",
"141631049197328965395400565530990588803",
"325298107724382713596064714156486348230",
"302556430047701806541854666695467747772",
"197913919051407901947473446303442079757",
"3466177810271832712318764383353103083"
],
"threshold": 0.9
},
"target": {
"file": "drivers/media/usb/gspca/cpia1.c"
},
"id": "CVE-2023-52764-d7a688e1",
"signature_type": "Line"
}
]