CVE-2023-52888

Source
https://nvd.nist.gov/vuln/detail/CVE-2023-52888
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-52888.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2023-52888
Downstream
Related
Published
2024-07-30T07:45:54Z
Modified
2025-10-15T05:09:05.341122Z
Summary
media: mediatek: vcodec: Only free buffer VA that is not NULL
Details

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

media: mediatek: vcodec: Only free buffer VA that is not NULL

In the MediaTek vcodec driver, while mtkvcodecmem_free() is mostly called only when the buffer to free exists, there are some instances that didn't do the check and triggered warnings in practice.

We believe those checks were forgotten unintentionally. Add the checks back to fix the warnings.

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
590577a4e5257ac3ed72999a94666ad6ba8f24bc
Fixed
5c217253c76c94f76d1df31d0bbdcb88dc07be91
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
590577a4e5257ac3ed72999a94666ad6ba8f24bc
Fixed
303d01082edaf817ee2df53a40dca9da637a2c04
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
590577a4e5257ac3ed72999a94666ad6ba8f24bc
Fixed
eb005c801ec70ff4307727bd3bd6e8280169ef32

Affected versions

v4.*

v4.10
v4.10-rc1
v4.10-rc2
v4.10-rc3
v4.10-rc4
v4.10-rc5
v4.10-rc6
v4.10-rc7
v4.10-rc8
v4.11
v4.11-rc1
v4.11-rc2
v4.11-rc3
v4.11-rc4
v4.11-rc5
v4.11-rc6
v4.11-rc7
v4.11-rc8
v4.12
v4.12-rc1
v4.12-rc2
v4.12-rc3
v4.12-rc4
v4.12-rc5
v4.12-rc6
v4.12-rc7
v4.13
v4.13-rc1
v4.13-rc2
v4.13-rc3
v4.13-rc4
v4.13-rc5
v4.13-rc6
v4.13-rc7
v4.14
v4.14-rc1
v4.14-rc2
v4.14-rc3
v4.14-rc4
v4.14-rc5
v4.14-rc6
v4.14-rc7
v4.14-rc8
v4.15
v4.15-rc1
v4.15-rc2
v4.15-rc3
v4.15-rc4
v4.15-rc5
v4.15-rc6
v4.15-rc7
v4.15-rc8
v4.15-rc9
v4.16
v4.16-rc1
v4.16-rc2
v4.16-rc3
v4.16-rc4
v4.16-rc5
v4.16-rc6
v4.16-rc7
v4.17
v4.17-rc1
v4.17-rc2
v4.17-rc3
v4.17-rc4
v4.17-rc5
v4.17-rc6
v4.17-rc7
v4.18
v4.18-rc1
v4.18-rc2
v4.18-rc3
v4.18-rc4
v4.18-rc5
v4.18-rc6
v4.18-rc7
v4.18-rc8
v4.19
v4.19-rc1
v4.19-rc2
v4.19-rc3
v4.19-rc4
v4.19-rc5
v4.19-rc6
v4.19-rc7
v4.19-rc8
v4.20
v4.20-rc1
v4.20-rc2
v4.20-rc3
v4.20-rc4
v4.20-rc5
v4.20-rc6
v4.20-rc7
v4.9
v4.9-rc2
v4.9-rc3
v4.9-rc4
v4.9-rc5
v4.9-rc6
v4.9-rc7
v4.9-rc8

v5.*

v5.0
v5.0-rc1
v5.0-rc2
v5.0-rc3
v5.0-rc4
v5.0-rc5
v5.0-rc6
v5.0-rc7
v5.0-rc8
v5.1
v5.1-rc1
v5.1-rc2
v5.1-rc3
v5.1-rc4
v5.1-rc5
v5.1-rc6
v5.1-rc7
v5.10
v5.10-rc1
v5.10-rc2
v5.10-rc3
v5.10-rc4
v5.10-rc5
v5.10-rc6
v5.10-rc7
v5.11
v5.11-rc1
v5.11-rc2
v5.11-rc3
v5.11-rc4
v5.11-rc5
v5.11-rc6
v5.11-rc7
v5.12
v5.12-rc1
v5.12-rc1-dontuse
v5.12-rc2
v5.12-rc3
v5.12-rc4
v5.12-rc5
v5.12-rc6
v5.12-rc7
v5.12-rc8
v5.13
v5.13-rc1
v5.13-rc2
v5.13-rc3
v5.13-rc4
v5.13-rc5
v5.13-rc6
v5.13-rc7
v5.14
v5.14-rc1
v5.14-rc2
v5.14-rc3
v5.14-rc4
v5.14-rc5
v5.14-rc6
v5.14-rc7
v5.15
v5.15-rc1
v5.15-rc2
v5.15-rc3
v5.15-rc4
v5.15-rc5
v5.15-rc6
v5.15-rc7
v5.16
v5.16-rc1
v5.16-rc2
v5.16-rc3
v5.16-rc4
v5.16-rc5
v5.16-rc6
v5.16-rc7
v5.16-rc8
v5.17
v5.17-rc1
v5.17-rc2
v5.17-rc3
v5.17-rc4
v5.17-rc5
v5.17-rc6
v5.17-rc7
v5.17-rc8
v5.18
v5.18-rc1
v5.18-rc2
v5.18-rc3
v5.18-rc4
v5.18-rc5
v5.18-rc6
v5.18-rc7
v5.19
v5.19-rc1
v5.19-rc2
v5.19-rc3
v5.19-rc4
v5.19-rc5
v5.19-rc6
v5.19-rc7
v5.19-rc8
v5.2
v5.2-rc1
v5.2-rc2
v5.2-rc3
v5.2-rc4
v5.2-rc5
v5.2-rc6
v5.2-rc7
v5.3
v5.3-rc1
v5.3-rc2
v5.3-rc3
v5.3-rc4
v5.3-rc5
v5.3-rc6
v5.3-rc7
v5.3-rc8
v5.4
v5.4-rc1
v5.4-rc2
v5.4-rc3
v5.4-rc4
v5.4-rc5
v5.4-rc6
v5.4-rc7
v5.4-rc8
v5.5
v5.5-rc1
v5.5-rc2
v5.5-rc3
v5.5-rc4
v5.5-rc5
v5.5-rc6
v5.5-rc7
v5.6
v5.6-rc1
v5.6-rc2
v5.6-rc3
v5.6-rc4
v5.6-rc5
v5.6-rc6
v5.6-rc7
v5.7
v5.7-rc1
v5.7-rc2
v5.7-rc3
v5.7-rc4
v5.7-rc5
v5.7-rc6
v5.7-rc7
v5.8
v5.8-rc1
v5.8-rc2
v5.8-rc3
v5.8-rc4
v5.8-rc5
v5.8-rc6
v5.8-rc7
v5.9
v5.9-rc1
v5.9-rc2
v5.9-rc3
v5.9-rc4
v5.9-rc5
v5.9-rc6
v5.9-rc7
v5.9-rc8

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.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.24
v6.6.25
v6.6.26
v6.6.27
v6.6.28
v6.6.29
v6.6.3
v6.6.30
v6.6.31
v6.6.32
v6.6.33
v6.6.34
v6.6.35
v6.6.36
v6.6.37
v6.6.38
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.8
v6.8-rc1
v6.8-rc2
v6.8-rc3
v6.8-rc4
v6.8-rc5
v6.8-rc6
v6.8-rc7
v6.9
v6.9-rc1
v6.9-rc2
v6.9-rc3
v6.9-rc4
v6.9-rc5
v6.9-rc6
v6.9-rc7
v6.9.1
v6.9.2
v6.9.3
v6.9.4
v6.9.5
v6.9.6
v6.9.7
v6.9.8

Database specific

{
    "vanir_signatures": [
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@303d01082edaf817ee2df53a40dca9da637a2c04",
            "signature_type": "Function",
            "target": {
                "function": "h264_enc_free_work_buf",
                "file": "drivers/media/platform/mediatek/vcodec/encoder/venc/venc_h264_if.c"
            },
            "deprecated": false,
            "digest": {
                "length": 275.0,
                "function_hash": "119557075448238129655244508220224169777"
            },
            "id": "CVE-2023-52888-086b22d4"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5c217253c76c94f76d1df31d0bbdcb88dc07be91",
            "signature_type": "Line",
            "target": {
                "file": "drivers/media/platform/mediatek/vcodec/encoder/venc/venc_h264_if.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "130336148227210530947347675476825667890",
                    "45630926373452747102082293747131499126",
                    "152285669400195586702116326870573719199",
                    "217779031053631759202091029535445105654",
                    "300094940087231818970600550481167206353",
                    "174822965581621759647599529630964083866",
                    "49470549957516250628430194712288803748"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2023-52888-10f7c14f"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5c217253c76c94f76d1df31d0bbdcb88dc07be91",
            "signature_type": "Line",
            "target": {
                "file": "drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "121667744912634250117077163964753325463",
                    "241185491546792758848573760982099079580",
                    "137749612788973803067505398715558228157",
                    "298308779145938469604444683999598188829",
                    "270077520380604987878994072885006146344",
                    "40782589668181817889863992488324674855",
                    "104045775020594394622638056527668838750",
                    "125256203981190812315164038104526373033",
                    "203687288787720316825604338251607052478",
                    "58435595252380706633684207269547094388",
                    "158859643985969307489835759470533091650",
                    "227873059943640958025912185592365126652"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2023-52888-3683e44e"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@eb005c801ec70ff4307727bd3bd6e8280169ef32",
            "signature_type": "Line",
            "target": {
                "file": "drivers/media/platform/mediatek/vcodec/encoder/venc/venc_h264_if.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "130336148227210530947347675476825667890",
                    "45630926373452747102082293747131499126",
                    "152285669400195586702116326870573719199",
                    "217779031053631759202091029535445105654",
                    "300094940087231818970600550481167206353",
                    "174822965581621759647599529630964083866",
                    "49470549957516250628430194712288803748"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2023-52888-4b68ad4e"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@eb005c801ec70ff4307727bd3bd6e8280169ef32",
            "signature_type": "Function",
            "target": {
                "function": "vdec_av1_slice_free_working_buffer",
                "file": "drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c"
            },
            "deprecated": false,
            "digest": {
                "length": 584.0,
                "function_hash": "159477006030337683555146802891111152591"
            },
            "id": "CVE-2023-52888-50e62f1e"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@eb005c801ec70ff4307727bd3bd6e8280169ef32",
            "signature_type": "Line",
            "target": {
                "file": "drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "121667744912634250117077163964753325463",
                    "241185491546792758848573760982099079580",
                    "137749612788973803067505398715558228157",
                    "298308779145938469604444683999598188829",
                    "270077520380604987878994072885006146344",
                    "40782589668181817889863992488324674855",
                    "104045775020594394622638056527668838750",
                    "125256203981190812315164038104526373033",
                    "203687288787720316825604338251607052478",
                    "58435595252380706633684207269547094388",
                    "158859643985969307489835759470533091650",
                    "227873059943640958025912185592365126652"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2023-52888-59ada737"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@303d01082edaf817ee2df53a40dca9da637a2c04",
            "signature_type": "Function",
            "target": {
                "function": "vdec_av1_slice_free_working_buffer",
                "file": "drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c"
            },
            "deprecated": false,
            "digest": {
                "length": 584.0,
                "function_hash": "159477006030337683555146802891111152591"
            },
            "id": "CVE-2023-52888-5b029d88"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@303d01082edaf817ee2df53a40dca9da637a2c04",
            "signature_type": "Line",
            "target": {
                "file": "drivers/media/platform/mediatek/vcodec/encoder/venc/venc_h264_if.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "130336148227210530947347675476825667890",
                    "45630926373452747102082293747131499126",
                    "152285669400195586702116326870573719199",
                    "217779031053631759202091029535445105654",
                    "300094940087231818970600550481167206353",
                    "174822965581621759647599529630964083866",
                    "49470549957516250628430194712288803748"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2023-52888-5c27fe5c"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@eb005c801ec70ff4307727bd3bd6e8280169ef32",
            "signature_type": "Function",
            "target": {
                "function": "h264_enc_free_work_buf",
                "file": "drivers/media/platform/mediatek/vcodec/encoder/venc/venc_h264_if.c"
            },
            "deprecated": false,
            "digest": {
                "length": 275.0,
                "function_hash": "119557075448238129655244508220224169777"
            },
            "id": "CVE-2023-52888-789ddfe4"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5c217253c76c94f76d1df31d0bbdcb88dc07be91",
            "signature_type": "Function",
            "target": {
                "function": "h264_enc_free_work_buf",
                "file": "drivers/media/platform/mediatek/vcodec/encoder/venc/venc_h264_if.c"
            },
            "deprecated": false,
            "digest": {
                "length": 275.0,
                "function_hash": "119557075448238129655244508220224169777"
            },
            "id": "CVE-2023-52888-a3503441"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5c217253c76c94f76d1df31d0bbdcb88dc07be91",
            "signature_type": "Function",
            "target": {
                "function": "vdec_av1_slice_free_working_buffer",
                "file": "drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c"
            },
            "deprecated": false,
            "digest": {
                "length": 584.0,
                "function_hash": "159477006030337683555146802891111152591"
            },
            "id": "CVE-2023-52888-b212d8ed"
        },
        {
            "signature_version": "v1",
            "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@303d01082edaf817ee2df53a40dca9da637a2c04",
            "signature_type": "Line",
            "target": {
                "file": "drivers/media/platform/mediatek/vcodec/decoder/vdec/vdec_av1_req_lat_if.c"
            },
            "deprecated": false,
            "digest": {
                "line_hashes": [
                    "121667744912634250117077163964753325463",
                    "241185491546792758848573760982099079580",
                    "137749612788973803067505398715558228157",
                    "298308779145938469604444683999598188829",
                    "270077520380604987878994072885006146344",
                    "40782589668181817889863992488324674855",
                    "104045775020594394622638056527668838750",
                    "125256203981190812315164038104526373033",
                    "203687288787720316825604338251607052478",
                    "58435595252380706633684207269547094388",
                    "158859643985969307489835759470533091650",
                    "227873059943640958025912185592365126652"
                ],
                "threshold": 0.9
            },
            "id": "CVE-2023-52888-fb76242a"
        }
    ]
}

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.10.0
Fixed
6.6.39
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.9.9