{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2024-50113",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2024-10-21T19:36:19.947Z",
        "datePublished": "2024-11-05T17:10:45.333Z",
        "dateUpdated": "2026-08-05T11:41:43.500Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T11:41:43.500Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfirewire: core: fix invalid port index for parent device\n\nIn a commit 24b7f8e5cd65 (\"firewire: core: use helper functions for self\nID sequence\"), the enumeration over self ID sequence was refactored with\nsome helper functions with KUnit tests. These helper functions are\nguaranteed to work expectedly by the KUnit tests, however their application\nincludes a mistake to assign invalid value to the index of port connected\nto parent device.\n\nThis bug affects the case that any extra node devices which has three or\nmore ports are connected to 1394 OHCI controller. In the case, the path\nto update the tree cache could hits WARN_ON(), and gets general protection\nfault due to the access to invalid address computed by the invalid value.\n\nThis commit fixes the bug to assign correct port index."
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 8.8,
                        "baseSeverity": "HIGH"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:A - The trigger data is the self-ID packet sequence emitted by PHYs on the IEEE 1394 bus, processed unconditionally in the OHCI bus-reset bottom half; an attacker-controlled node anywhere on the shared 1394 bus (up to 63 nodes, reachable through hubs/repeaters without touching the victim machine) supplies it, which is the same shared-physical-segment model as Bluetooth/WiFi and matches this CNA's scoring of analogous Thunderbolt/HID attached-device bugs.\nAC:L - The attacker fully controls the preconditions — attaching or emulating a node with three or more ports and forcing bus resets (any 1394 node can initiate one, and unplug/replug works too) — so the malformed topology is produced deterministically and repeatably; the reporter hit it with ordinary off-the-shelf hardware.\nPR:N - No credentials, account, or local access are required: fw_core_handle_bus_reset() -> build_tree() -> update_tree() runs automatically from the OHCI interrupt bottom half on every bus reset, with no capability check or authentication gate anywhere on the path.\nUI:N - Nothing is required of a victim user — the self-ID sequence is parsed automatically by the kernel on bus reset, and the device attachment/reset is the attacker's own action rather than a victim action.\nS:U - The corruption is confined to kernel heap objects (struct fw_node) managed by the same kernel security authority; there is no VM, IOMMU, or sandbox boundary crossed by the topology parser.\nC:H - The desynchronized walk in update_tree() reads node1->ports[i] beyond the __counted_by(port_count) flexible array, disclosing adjacent kernel heap contents as pointers, and the premature fw_node_put()/report_lost_node() path yields use-after-free of fw_node objects in a general-purpose slab cache, which an attacker can groom for arbitrary kernel memory read.\nI:H - The out-of-bounds-derived pointer is written through — move_tree() performs tree->ports[i] = node0 and list_add_tail() writes list prev/next pointers into the bogus address — giving a kernel-pointer write primitive at an attacker-influenced offset, and the use-after-free on fw_node allows reclaiming and controlling freed object contents for control-flow hijacking.\nA:H - The commit explicitly reports WARN_ON() followed by a general protection fault from dereferencing the invalid address, and the accompanying use-after-free/list corruption reliably panics the machine; an attacker on the bus can repeat bus resets to crash it at will."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/firewire/core-topology.c"
                    ],
                    "versions": [
                        {
                            "version": "24b7f8e5cd656196a13077e160aec45ad89b58d9",
                            "lessThan": "90753a38bc3d058820981f812a908a99f7b337c1",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "24b7f8e5cd656196a13077e160aec45ad89b58d9",
                            "lessThan": "f6a6780e0b9bbcf311a727afed06fee533a5e957",
                            "status": "affected",
                            "versionType": "git"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/firewire/core-topology.c"
                    ],
                    "versions": [
                        {
                            "version": "6.11",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "6.11",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.11.6",
                            "lessThanOrEqual": "6.11.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.12",
                            "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": "6.11",
                                    "versionEndExcluding": "6.11.6"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "6.11",
                                    "versionEndExcluding": "6.12"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/90753a38bc3d058820981f812a908a99f7b337c1"
                },
                {
                    "url": "https://git.kernel.org/stable/c/f6a6780e0b9bbcf311a727afed06fee533a5e957"
                }
            ],
            "title": "firewire: core: fix invalid port index for parent device",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        },
        "adp": [
            {
                "metrics": [
                    {
                        "cvssV3_1": {
                            "scope": "UNCHANGED",
                            "version": "3.1",
                            "baseScore": 5.5,
                            "attackVector": "LOCAL",
                            "baseSeverity": "MEDIUM",
                            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
                            "integrityImpact": "NONE",
                            "userInteraction": "NONE",
                            "attackComplexity": "LOW",
                            "availabilityImpact": "HIGH",
                            "privilegesRequired": "LOW",
                            "confidentialityImpact": "NONE"
                        }
                    },
                    {
                        "other": {
                            "type": "ssvc",
                            "content": {
                                "id": "CVE-2024-50113",
                                "role": "CISA Coordinator",
                                "options": [
                                    {
                                        "Exploitation": "none"
                                    },
                                    {
                                        "Automatable": "no"
                                    },
                                    {
                                        "Technical Impact": "partial"
                                    }
                                ],
                                "version": "2.0.3",
                                "timestamp": "2025-10-01T20:21:59.175178Z"
                            }
                        }
                    }
                ],
                "problemTypes": [
                    {
                        "descriptions": [
                            {
                                "lang": "en",
                                "type": "CWE",
                                "description": "CWE-noinfo Not enough information"
                            }
                        ]
                    }
                ],
                "title": "CISA ADP Vulnrichment",
                "providerMetadata": {
                    "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
                    "shortName": "CISA-ADP",
                    "dateUpdated": "2025-10-01T20:27:17.239Z"
                }
            }
        ]
    }
}