CVE-2024-26978

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-26978
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-26978.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-26978
Downstream
Related
Published
2024-05-01T05:20:33Z
Modified
2025-10-15T09:47:00.406754Z
Summary
serial: max310x: fix NULL pointer dereference in I2C instantiation
Details

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

serial: max310x: fix NULL pointer dereference in I2C instantiation

When trying to instantiate a max14830 device from userspace:

echo max14830 0x60 > /sys/bus/i2c/devices/i2c-2/new_device

we get the following error:

Unable to handle kernel NULL pointer dereference at virtual address...
...
Call trace:
    max310x_i2c_probe+0x48/0x170 [max310x]
    i2c_device_probe+0x150/0x2a0
...

Add check for validity of devtype to prevent the error, and abort probe with a meaningful error message.

References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
f5c252aaa1be5d38604e58e9bd335065f767d0d8
Fixed
7d271b798add90c6196539167c019d0817285cf0
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
85d79478710ad2cbf11857aec107084a7104943e
Fixed
c45e53c27b78afd6c81fc25608003576f27b5735
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
2e1f2d9a9bdbe12ee475c82a45ac46a278e8049a
Fixed
12609c76b755dbeb1645c0aacc0f0f4743b2eff3
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
2e1f2d9a9bdbe12ee475c82a45ac46a278e8049a
Fixed
2160ad6861c4a21d3fa553d7b2aaec6634a37f8a
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
2e1f2d9a9bdbe12ee475c82a45ac46a278e8049a
Fixed
5cd8af02b466e1beeae13e2de3dc58fcc7925e5a
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
2e1f2d9a9bdbe12ee475c82a45ac46a278e8049a
Fixed
aeca49661fd02fd56fb026768b580ce301b45733
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
2e1f2d9a9bdbe12ee475c82a45ac46a278e8049a
Fixed
0d27056c24efd3d63a03f3edfbcfc4827086b110

Affected versions

v5.*

v5.10.213
v5.10.214
v5.19
v5.19-rc2
v5.19-rc3
v5.19-rc4
v5.19-rc5
v5.19-rc6
v5.19-rc7
v5.19-rc8
v5.4.272
v5.4.273

v6.*

v6.0
v6.0-rc1
v6.0-rc2
v6.0-rc3
v6.0-rc4
v6.0-rc5
v6.0-rc6
v6.0-rc7
v6.1
v6.1-rc1
v6.1-rc2
v6.1-rc3
v6.1-rc4
v6.1-rc5
v6.1-rc6
v6.1-rc7
v6.1-rc8
v6.1.1
v6.1.10
v6.1.11
v6.1.12
v6.1.13
v6.1.14
v6.1.15
v6.1.16
v6.1.17
v6.1.18
v6.1.19
v6.1.2
v6.1.20
v6.1.21
v6.1.22
v6.1.23
v6.1.24
v6.1.25
v6.1.26
v6.1.27
v6.1.28
v6.1.29
v6.1.3
v6.1.30
v6.1.31
v6.1.32
v6.1.33
v6.1.34
v6.1.35
v6.1.36
v6.1.37
v6.1.38
v6.1.39
v6.1.4
v6.1.40
v6.1.41
v6.1.42
v6.1.43
v6.1.44
v6.1.45
v6.1.46
v6.1.47
v6.1.48
v6.1.49
v6.1.5
v6.1.50
v6.1.51
v6.1.52
v6.1.53
v6.1.54
v6.1.55
v6.1.56
v6.1.57
v6.1.58
v6.1.59
v6.1.6
v6.1.60
v6.1.61
v6.1.62
v6.1.63
v6.1.64
v6.1.65
v6.1.66
v6.1.67
v6.1.68
v6.1.69
v6.1.7
v6.1.70
v6.1.71
v6.1.72
v6.1.73
v6.1.74
v6.1.75
v6.1.76
v6.1.77
v6.1.78
v6.1.79
v6.1.8
v6.1.80
v6.1.81
v6.1.82
v6.1.83
v6.1.9
v6.2
v6.2-rc1
v6.2-rc2
v6.2-rc3
v6.2-rc4
v6.2-rc5
v6.2-rc6
v6.2-rc7
v6.2-rc8
v6.3
v6.3-rc1
v6.3-rc2
v6.3-rc3
v6.3-rc4
v6.3-rc5
v6.3-rc6
v6.3-rc7
v6.4
v6.4-rc1
v6.4-rc2
v6.4-rc3
v6.4-rc4
v6.4-rc5
v6.4-rc6
v6.4-rc7
v6.5
v6.5-rc1
v6.5-rc2
v6.5-rc3
v6.5-rc4
v6.5-rc5
v6.5-rc6
v6.5-rc7
v6.6
v6.6-rc1
v6.6-rc2
v6.6-rc3
v6.6-rc4
v6.6-rc5
v6.6-rc6
v6.6-rc7
v6.6.1
v6.6.10
v6.6.11
v6.6.12
v6.6.13
v6.6.14
v6.6.15
v6.6.16
v6.6.17
v6.6.18
v6.6.19
v6.6.2
v6.6.20
v6.6.21
v6.6.22
v6.6.23
v6.6.3
v6.6.4
v6.6.5
v6.6.6
v6.6.7
v6.6.8
v6.6.9
v6.7
v6.7-rc1
v6.7-rc2
v6.7-rc3
v6.7-rc4
v6.7-rc5
v6.7-rc6
v6.7-rc7
v6.7-rc8
v6.7.1
v6.7.10
v6.7.11
v6.7.2
v6.7.3
v6.7.4
v6.7.5
v6.7.6
v6.7.7
v6.7.8
v6.7.9
v6.8
v6.8-rc1
v6.8-rc2
v6.8-rc3
v6.8-rc4
v6.8-rc5
v6.8-rc6
v6.8-rc7
v6.8.1
v6.8.2

Database specific

{
    "vanir_signatures": [
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c45e53c27b78afd6c81fc25608003576f27b5735",
            "signature_type": "Function",
            "target": {
                "function": "max310x_i2c_probe",
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "length": 750.0,
                "function_hash": "152915863946278111916738753088075534768"
            },
            "id": "CVE-2024-26978-050e745f"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7d271b798add90c6196539167c019d0817285cf0",
            "signature_type": "Function",
            "target": {
                "function": "max310x_i2c_probe",
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "length": 750.0,
                "function_hash": "152915863946278111916738753088075534768"
            },
            "id": "CVE-2024-26978-181ffb88"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0d27056c24efd3d63a03f3edfbcfc4827086b110",
            "signature_type": "Line",
            "target": {
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "176882960375663774892974222136759401085",
                    "298817083277930966953534863420929195348",
                    "291830083617512575902490468306015980838",
                    "312515888580504506521476179172841965506",
                    "186118371386276972865117694178238911393",
                    "145302473883618746684660952555196270793",
                    "313473913695387237657564896122859157275",
                    "113011563577735222794299284755271040332",
                    "200316767528452753290760077647765710379"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2024-26978-302abb8e"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c45e53c27b78afd6c81fc25608003576f27b5735",
            "signature_type": "Line",
            "target": {
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "176882960375663774892974222136759401085",
                    "298817083277930966953534863420929195348",
                    "291830083617512575902490468306015980838",
                    "312515888580504506521476179172841965506",
                    "186118371386276972865117694178238911393",
                    "145302473883618746684660952555196270793",
                    "313473913695387237657564896122859157275",
                    "113011563577735222794299284755271040332",
                    "200316767528452753290760077647765710379"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2024-26978-65159b0f"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5cd8af02b466e1beeae13e2de3dc58fcc7925e5a",
            "signature_type": "Function",
            "target": {
                "function": "max310x_i2c_probe",
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "length": 750.0,
                "function_hash": "152915863946278111916738753088075534768"
            },
            "id": "CVE-2024-26978-a69e7891"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@aeca49661fd02fd56fb026768b580ce301b45733",
            "signature_type": "Function",
            "target": {
                "function": "max310x_i2c_probe",
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "length": 750.0,
                "function_hash": "152915863946278111916738753088075534768"
            },
            "id": "CVE-2024-26978-aaa9a316"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@aeca49661fd02fd56fb026768b580ce301b45733",
            "signature_type": "Line",
            "target": {
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "176882960375663774892974222136759401085",
                    "298817083277930966953534863420929195348",
                    "291830083617512575902490468306015980838",
                    "312515888580504506521476179172841965506",
                    "186118371386276972865117694178238911393",
                    "145302473883618746684660952555196270793",
                    "313473913695387237657564896122859157275",
                    "113011563577735222794299284755271040332",
                    "200316767528452753290760077647765710379"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2024-26978-bd8dcaf5"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2160ad6861c4a21d3fa553d7b2aaec6634a37f8a",
            "signature_type": "Line",
            "target": {
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "176882960375663774892974222136759401085",
                    "298817083277930966953534863420929195348",
                    "291830083617512575902490468306015980838",
                    "312515888580504506521476179172841965506",
                    "186118371386276972865117694178238911393",
                    "145302473883618746684660952555196270793",
                    "313473913695387237657564896122859157275",
                    "113011563577735222794299284755271040332",
                    "200316767528452753290760077647765710379"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2024-26978-bd9d026f"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5cd8af02b466e1beeae13e2de3dc58fcc7925e5a",
            "signature_type": "Line",
            "target": {
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "176882960375663774892974222136759401085",
                    "298817083277930966953534863420929195348",
                    "291830083617512575902490468306015980838",
                    "312515888580504506521476179172841965506",
                    "186118371386276972865117694178238911393",
                    "145302473883618746684660952555196270793",
                    "313473913695387237657564896122859157275",
                    "113011563577735222794299284755271040332",
                    "200316767528452753290760077647765710379"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2024-26978-d9f172dd"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7d271b798add90c6196539167c019d0817285cf0",
            "signature_type": "Line",
            "target": {
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "176882960375663774892974222136759401085",
                    "298817083277930966953534863420929195348",
                    "291830083617512575902490468306015980838",
                    "312515888580504506521476179172841965506",
                    "186118371386276972865117694178238911393",
                    "145302473883618746684660952555196270793",
                    "313473913695387237657564896122859157275",
                    "113011563577735222794299284755271040332",
                    "200316767528452753290760077647765710379"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2024-26978-dd8e5e0b"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@12609c76b755dbeb1645c0aacc0f0f4743b2eff3",
            "signature_type": "Line",
            "target": {
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "176882960375663774892974222136759401085",
                    "298817083277930966953534863420929195348",
                    "291830083617512575902490468306015980838",
                    "312515888580504506521476179172841965506",
                    "186118371386276972865117694178238911393",
                    "145302473883618746684660952555196270793",
                    "313473913695387237657564896122859157275",
                    "113011563577735222794299284755271040332",
                    "200316767528452753290760077647765710379"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2024-26978-dff42572"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@12609c76b755dbeb1645c0aacc0f0f4743b2eff3",
            "signature_type": "Function",
            "target": {
                "function": "max310x_i2c_probe",
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "length": 750.0,
                "function_hash": "152915863946278111916738753088075534768"
            },
            "id": "CVE-2024-26978-eb31c9e9"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2160ad6861c4a21d3fa553d7b2aaec6634a37f8a",
            "signature_type": "Function",
            "target": {
                "function": "max310x_i2c_probe",
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "length": 750.0,
                "function_hash": "152915863946278111916738753088075534768"
            },
            "id": "CVE-2024-26978-f7a24417"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0d27056c24efd3d63a03f3edfbcfc4827086b110",
            "signature_type": "Function",
            "target": {
                "function": "max310x_i2c_probe",
                "file": "drivers/tty/serial/max310x.c"
            },
            "deprecated": false,
            "digest": {
                "length": 750.0,
                "function_hash": "152915863946278111916738753088075534768"
            },
            "id": "CVE-2024-26978-f90564b4"
        }
    ]
}

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
5.4.274
Type
ECOSYSTEM
Events
Introduced
5.5.0
Fixed
5.10.215
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
6.1.84
Type
ECOSYSTEM
Events
Introduced
6.0.0
Fixed
6.6.24
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.7.12
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.8.3