In the Linux kernel, the following vulnerability has been resolved:
clk: bcm: rpi: Prevent out-of-bounds access
The while loop in raspberrypidiscoverclocks() relies on the assumption that the id of the last clock element is zero. Because this data comes from the Videocore firmware and it doesn't guarantuee such a behavior this could lead to out-of-bounds access. So fix this by providing a sentinel element.
[
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@fcae47b2d23c81603b01f56cf8db63ed64599d34",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-10027092",
"target": {
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"106643365775920032515014079953251682949",
"220218915578005031728988184782767250349",
"132248813090288735962088194195862542027",
"6876838021310283151694239921364307094",
"84097927602591518294126813704380110338"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ff0b144d4b0a9fbd6efe4d2c0a4b6c9bae2138d2",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-24a4fa0b",
"target": {
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"106643365775920032515014079953251682949",
"220218915578005031728988184782767250349",
"132248813090288735962088194195862542027",
"6876838021310283151694239921364307094",
"84097927602591518294126813704380110338"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ff0b144d4b0a9fbd6efe4d2c0a4b6c9bae2138d2",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-3becf0b4",
"target": {
"function": "raspberrypi_discover_clocks",
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Function",
"digest": {
"length": 797.0,
"function_hash": "11684547469462819051336092351658346413"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c8b04b731d43366824841ebdca4ac715f95e0ea4",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-4666c153",
"target": {
"function": "raspberrypi_discover_clocks",
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Function",
"digest": {
"length": 801.0,
"function_hash": "58001911432306381291726840896139814644"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c8b04b731d43366824841ebdca4ac715f95e0ea4",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-56be70c1",
"target": {
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"106643365775920032515014079953251682949",
"220218915578005031728988184782767250349",
"132248813090288735962088194195862542027",
"6876838021310283151694239921364307094",
"84097927602591518294126813704380110338"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@fcae47b2d23c81603b01f56cf8db63ed64599d34",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-57ad9d56",
"target": {
"function": "raspberrypi_discover_clocks",
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Function",
"digest": {
"length": 797.0,
"function_hash": "11684547469462819051336092351658346413"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bc163555603e4ae9c817675ad80d618a4cdbfa2d",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-6649fb3c",
"target": {
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"106643365775920032515014079953251682949",
"220218915578005031728988184782767250349",
"132248813090288735962088194195862542027",
"6876838021310283151694239921364307094",
"84097927602591518294126813704380110338"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bc163555603e4ae9c817675ad80d618a4cdbfa2d",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2022-49946-c7f34c13",
"target": {
"function": "raspberrypi_discover_clocks",
"file": "drivers/clk/bcm/clk-raspberrypi.c"
},
"signature_type": "Function",
"digest": {
"length": 801.0,
"function_hash": "58001911432306381291726840896139814644"
}
}
]