In the Linux kernel, the following vulnerability has been resolved:
media: i2c: ds90ub9x3: Fix extra fwnodehandleput()
The ub913 and ub953 drivers call fwnodehandleput(priv->sd.fwnode) as part of their remove process, and if the driver is removed multiple times, eventually leads to put "overflow", possibly causing memory corruption or crash.
The fwnodehandleput() is a leftover from commit 905f88ccebb1 ("media: i2c: ds90ub9x3: Fix sub-device matching"), which changed the code related to the sd.fwnode, but missed removing these fwnodehandleput() calls.
[
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"159786507106904393247310683361015345648",
"203819577953747135350630686052700449976",
"11804754410155465241019276636786293905",
"18170138462475505432409484473166958953"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@474d7baf91d37bc411fa60de5bbf03c9dd82e18a",
"target": {
"file": "drivers/media/i2c/ds90ub953.c"
},
"id": "CVE-2024-58003-08268b1b"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 196.0,
"function_hash": "290356553742687490150690057323926449275"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f4e4373322f8d4c19721831f7fb989e52d30dab0",
"target": {
"file": "drivers/media/i2c/ds90ub913.c",
"function": "ub913_subdev_uninit"
},
"id": "CVE-2024-58003-0a53d11d"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 196.0,
"function_hash": "290356553742687490150690057323926449275"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@474d7baf91d37bc411fa60de5bbf03c9dd82e18a",
"target": {
"file": "drivers/media/i2c/ds90ub953.c",
"function": "ub953_subdev_uninit"
},
"id": "CVE-2024-58003-13465c91"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"79936342087533704625544639499047991371",
"320210152072546927391212878695935146903",
"11804754410155465241019276636786293905",
"118424560861594937219569282161697864071"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f4e4373322f8d4c19721831f7fb989e52d30dab0",
"target": {
"file": "drivers/media/i2c/ds90ub913.c"
},
"id": "CVE-2024-58003-1a97de49"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 196.0,
"function_hash": "290356553742687490150690057323926449275"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@474d7baf91d37bc411fa60de5bbf03c9dd82e18a",
"target": {
"file": "drivers/media/i2c/ds90ub913.c",
"function": "ub913_subdev_uninit"
},
"id": "CVE-2024-58003-2e43cda6"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"79936342087533704625544639499047991371",
"320210152072546927391212878695935146903",
"11804754410155465241019276636786293905",
"118424560861594937219569282161697864071"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@70743d6a8b256225675711e7983825f1be86062d",
"target": {
"file": "drivers/media/i2c/ds90ub913.c"
},
"id": "CVE-2024-58003-4f219f78"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 196.0,
"function_hash": "290356553742687490150690057323926449275"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@70743d6a8b256225675711e7983825f1be86062d",
"target": {
"file": "drivers/media/i2c/ds90ub913.c",
"function": "ub913_subdev_uninit"
},
"id": "CVE-2024-58003-5ba57a79"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"159786507106904393247310683361015345648",
"203819577953747135350630686052700449976",
"11804754410155465241019276636786293905",
"18170138462475505432409484473166958953"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@70743d6a8b256225675711e7983825f1be86062d",
"target": {
"file": "drivers/media/i2c/ds90ub953.c"
},
"id": "CVE-2024-58003-6eb187e3"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"79936342087533704625544639499047991371",
"320210152072546927391212878695935146903",
"11804754410155465241019276636786293905",
"118424560861594937219569282161697864071"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@474d7baf91d37bc411fa60de5bbf03c9dd82e18a",
"target": {
"file": "drivers/media/i2c/ds90ub913.c"
},
"id": "CVE-2024-58003-7182623b"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"159786507106904393247310683361015345648",
"203819577953747135350630686052700449976",
"11804754410155465241019276636786293905",
"18170138462475505432409484473166958953"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f4e4373322f8d4c19721831f7fb989e52d30dab0",
"target": {
"file": "drivers/media/i2c/ds90ub953.c"
},
"id": "CVE-2024-58003-e8df9f7f"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 196.0,
"function_hash": "290356553742687490150690057323926449275"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@70743d6a8b256225675711e7983825f1be86062d",
"target": {
"file": "drivers/media/i2c/ds90ub953.c",
"function": "ub953_subdev_uninit"
},
"id": "CVE-2024-58003-f0f8d45e"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 196.0,
"function_hash": "290356553742687490150690057323926449275"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f4e4373322f8d4c19721831f7fb989e52d30dab0",
"target": {
"file": "drivers/media/i2c/ds90ub953.c",
"function": "ub953_subdev_uninit"
},
"id": "CVE-2024-58003-f9ad055e"
}
]