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.
[
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/media/usb/gspca/cpia1.c"
],
"versions": [
{
"version": "1da177e4c3f4",
"lessThan": "69bba62600bd",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "2eee8edfff90",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "8f83c85ee882",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "c6b6b8692218",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "09cd8b561aa9",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "a647f27a7426",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "93bddd6529f1",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "e2d7149b913d",
"status": "affected",
"versionType": "git"
},
{
"version": "1da177e4c3f4",
"lessThan": "099be1822d1f",
"status": "affected",
"versionType": "git"
}
]
},
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "affected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/media/usb/gspca/cpia1.c"
],
"versions": [
{
"version": "4.14.331",
"lessThanOrEqual": "4.14.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "4.19.300",
"lessThanOrEqual": "4.19.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.4.262",
"lessThanOrEqual": "5.4.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.10.202",
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.15.140",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.1.64",
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.5.13",
"lessThanOrEqual": "6.5.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.6.3",
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.7",
"lessThanOrEqual": "*",
"status": "unaffected",
"versionType": "original_commit_for_fix"
}
]
}
]
git.kernel.org/stable/c/099be1822d1f095433f4b08af9cc9d6308ec1953
git.kernel.org/stable/c/09cd8b561aa9796903710a1046957f2b112c8f26
git.kernel.org/stable/c/2eee8edfff90e22980a6b22079d238c3c9d323bb
git.kernel.org/stable/c/69bba62600bd91d6b7c1e8ca181faf8ac64f7060
git.kernel.org/stable/c/8f83c85ee88225319c52680792320c02158c2a9b
git.kernel.org/stable/c/93bddd6529f187f510eec759f37d0569243c9809
git.kernel.org/stable/c/a647f27a7426d2fe1b40da7c8fa2b81354a51177
git.kernel.org/stable/c/c6b6b8692218da73b33b310d7c1df90f115bdd9a
git.kernel.org/stable/c/e2d7149b913d14352c82624e723ce1c211ca06d3