{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2022-48858",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2024-07-16T11:38:08.919Z",
        "datePublished": "2024-07-16T12:25:23.123Z",
        "dateUpdated": "2026-08-05T08:52:39.770Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T08:52:39.770Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet/mlx5: Fix a race on command flush flow\n\nFix a refcount use after free warning due to a race on command entry.\nSuch race occurs when one of the commands releases its last refcount and\nfrees its index and entry while another process running command flush\nflow takes refcount to this command entry. The process which handles\ncommands flush may see this command as needed to be flushed if the other\nprocess released its refcount but didn't release the index yet. Fix it\nby adding the needed spin lock.\n\nIt fixes the following warning trace:\n\nrefcount_t: addition on 0; use-after-free.\nWARNING: CPU: 11 PID: 540311 at lib/refcount.c:25 refcount_warn_saturate+0x80/0xe0\n...\nRIP: 0010:refcount_warn_saturate+0x80/0xe0\n...\nCall Trace:\n <TASK>\n mlx5_cmd_trigger_completions+0x293/0x340 [mlx5_core]\n mlx5_cmd_flush+0x3a/0xf0 [mlx5_core]\n enter_error_state+0x44/0x80 [mlx5_core]\n mlx5_fw_fatal_reporter_err_work+0x37/0xe0 [mlx5_core]\n process_one_work+0x1be/0x390\n worker_thread+0x4d/0x3d0\n ? rescuer_thread+0x350/0x350\n kthread+0x141/0x160\n ? set_kthread_struct+0x40/0x40\n ret_from_fork+0x1f/0x30\n </TASK>"
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 7,
                        "baseSeverity": "HIGH"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:L - The race is in the local mlx5 firmware command interface (cmd_ent_put vs mlx5_cmd_trigger_completions during mlx5_cmd_flush), reached via locally issued FW commands (RDMA uverbs/DEVX, netdev offloads) and the device health/error path, not via remote packet processing.\nAC:H - mlx5_cmd_flush runs only after enter_error_state (fatal FW syndrome, PCI/AER, or admin/fw-reset forced error); an attacker can keep commands in flight to widen the window but cannot induce that device-internal-error transition, matching the CVE-2024-38555 model for this path.\nPR:L - Unprivileged local users can keep mlx5_cmd_work_ent entries in flight through the RDMA character device (commonly mode 0666 / uverbs), without CAP_NET_ADMIN or real root; that is the attacker-controlled half of the UAF race.\nUI:N - No victim action is required; once commands are outstanding and the device enters error state, the flush/completion race proceeds in kernel workqueue/IRQ context without further user interaction.\nS:U - The use-after-free corrupts host-kernel mlx5 command-entry heap state within a single OS security authority; it is not a VM escape, IOMMU bypass, or other cross-boundary compromise.\nC:H - The race frees mlx5_cmd_work_ent while mlx5_cmd_trigger_completions still cmd_ent_get/comp-handles it (refcount addition-on-0 / UAF), so a reclaimed entry yields arbitrary kernel read primitives per UAF guidance.\nI:H - The same UAF exposes callback/context and command message pointers in the freed entry to mlx5_cmd_comp_handler, enabling heap write and control-flow hijack after spraying.\nA:H - The reported impact is a refcount_t use-after-free WARN in the flush path (fatal under panic_on_warn), and any UAF of the command entry can oops/panic or wedge the command interface."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/net/ethernet/mellanox/mlx5/core/cmd.c"
                    ],
                    "versions": [
                        {
                            "version": "073fff8102062cd675170ceb54d90da22fe7e668",
                            "lessThan": "1a4017926eeea56c7540cc41b42106746ee8a0ee",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "50b2412b7e7862c5af0cbf4b10d93bc5c712d021",
                            "lessThan": "f3331bc17449f15832c31823f27573f4c0e13e5f",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "50b2412b7e7862c5af0cbf4b10d93bc5c712d021",
                            "lessThan": "7c519f769f555ff7d9d4ccba3497bbb589df360a",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "50b2412b7e7862c5af0cbf4b10d93bc5c712d021",
                            "lessThan": "0401bfb27a91d7bdd74b1635c1aae57cbb128da6",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "50b2412b7e7862c5af0cbf4b10d93bc5c712d021",
                            "lessThan": "063bd355595428750803d8736a9bb7c8db67d42d",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "da87ea137373689dec9d3fafa34a57787320a4b3",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "5.4.71",
                            "lessThan": "5.4.185",
                            "status": "affected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.8.15",
                            "lessThan": "5.9",
                            "status": "affected",
                            "versionType": "semver"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/net/ethernet/mellanox/mlx5/core/cmd.c"
                    ],
                    "versions": [
                        {
                            "version": "5.9",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "5.9",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.4.185",
                            "lessThanOrEqual": "5.4.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.10.106",
                            "lessThanOrEqual": "5.10.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.15.29",
                            "lessThanOrEqual": "5.15.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.16.15",
                            "lessThanOrEqual": "5.16.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.17",
                            "lessThanOrEqual": "*",
                            "status": "unaffected",
                            "versionType": "original_commit_for_fix"
                        }
                    ]
                }
            ],
            "cpeApplicability": [
                {
                    "nodes": [
                        {
                            "operator": "OR",
                            "negate": false,
                            "cpeMatch": [
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.4.71",
                                    "versionEndExcluding": "5.4.185"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.9",
                                    "versionEndExcluding": "5.10.106"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.9",
                                    "versionEndExcluding": "5.15.29"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.9",
                                    "versionEndExcluding": "5.16.15"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.9",
                                    "versionEndExcluding": "5.17"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.8.15"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/1a4017926eeea56c7540cc41b42106746ee8a0ee"
                },
                {
                    "url": "https://git.kernel.org/stable/c/f3331bc17449f15832c31823f27573f4c0e13e5f"
                },
                {
                    "url": "https://git.kernel.org/stable/c/7c519f769f555ff7d9d4ccba3497bbb589df360a"
                },
                {
                    "url": "https://git.kernel.org/stable/c/0401bfb27a91d7bdd74b1635c1aae57cbb128da6"
                },
                {
                    "url": "https://git.kernel.org/stable/c/063bd355595428750803d8736a9bb7c8db67d42d"
                }
            ],
            "title": "net/mlx5: Fix a race on command flush flow",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        },
        "adp": [
            {
                "providerMetadata": {
                    "orgId": "af854a3a-2127-422b-91ae-364da2661108",
                    "shortName": "CVE",
                    "dateUpdated": "2024-08-03T15:25:01.885Z"
                },
                "title": "CVE Program Container",
                "references": [
                    {
                        "url": "https://git.kernel.org/stable/c/1a4017926eeea56c7540cc41b42106746ee8a0ee",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/f3331bc17449f15832c31823f27573f4c0e13e5f",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/7c519f769f555ff7d9d4ccba3497bbb589df360a",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/0401bfb27a91d7bdd74b1635c1aae57cbb128da6",
                        "tags": [
                            "x_transferred"
                        ]
                    },
                    {
                        "url": "https://git.kernel.org/stable/c/063bd355595428750803d8736a9bb7c8db67d42d",
                        "tags": [
                            "x_transferred"
                        ]
                    }
                ]
            },
            {
                "metrics": [
                    {
                        "other": {
                            "type": "ssvc",
                            "content": {
                                "id": "CVE-2022-48858",
                                "role": "CISA Coordinator",
                                "options": [
                                    {
                                        "Exploitation": "none"
                                    },
                                    {
                                        "Automatable": "no"
                                    },
                                    {
                                        "Technical Impact": "partial"
                                    }
                                ],
                                "version": "2.0.3",
                                "timestamp": "2024-09-10T16:25:42.661996Z"
                            }
                        }
                    }
                ],
                "title": "CISA ADP Vulnrichment",
                "providerMetadata": {
                    "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
                    "shortName": "CISA-ADP",
                    "dateUpdated": "2024-09-11T17:34:07.754Z"
                }
            }
        ]
    }
}