LiveActive security incident?Get immediate response
CVE Record

CVE-2024-53044: net/sched: sch_api: fix xa_insert() error path in tcf_block_get_ext()

In the Linux kernel, the following vulnerability has been resolved: net/sched: sch_api: fix xa_insert() error path in tcf_block_get_ext() This command: $ tc qdisc replace dev eth0 ingress_block 1 egress_block 1 clsact Error: block dev insert failed: -EBUSY. fails because user space requests the same block index to be set for both ingress and egress. [ side note, I don't think it even failed prior to commit 913b47d3424e ("net/sched: Introduce tc block netdev tracking infra"), because this is a command from an old set of notes of mine which used to work, but alas, I did not scientifically bisect this ] The problem is not that it fails, but rather, that the second time around, it fails differently (and irrecoverably): $ tc qdisc replace dev eth0 ingress_block 1 egress_block 1 clsact Error: dsa_core: Flow block cb is busy. [ another note: the extack is added by me for illustration purposes. the context of the problem is that clsact_init() obtains the same &q->ingress_block pointer as &q->egress_block, and since we call tcf_block_get_ext() on both of them, "dev" will be added to the block->ports xarray twice, thus failing the operation: once through the ingress block pointer, and once again through the egress block pointer. the problem itself is that when xa_insert() fails, we have emitted a FLOW_BLOCK_BIND command through ndo_setup_tc(), but the offload never sees a corresponding FLOW_BLOCK_UNBIND. ] Even correcting the bad user input, we still cannot recover: $ tc qdisc replace dev swp3 ingress_block 1 egress_block 2 clsact Error: dsa_core: Flow block cb is busy. Basically the only way to recover is to reboot the system, or unbind and rebind the net device driver. To fix the bug, we need to fill the correct error teardown path which was missed during code movement, and call tcf_block_offload_unbind() when xa_insert() fails. [ last note, fundamentally I blame the label naming convention in tcf_block_get_ext() for the bug. The labels should be named after what they do, not after the error path that jumps to them. This way, it is obviously wrong that two labels pointing to the same code mean something is wrong, and checking the code correctness at the goto site is also easier ]

HighCVSS 7.8Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

A local user able to submit the affected Linux traffic-control configuration can leave network offload state stuck after a failed block binding. Later valid configuration attempts may fail until the system reboots or the network driver is rebound. This can disrupt network administration and availability, but the supplied sources do not demonstrate remote or active exploitation.

Executive priority

Prioritize affected networking hosts where delegated local users or automation can alter traffic control, especially systems requiring dependable offload changes. Treat remediation as urgent but below remotely exploitable critical flaws. Coordinate patching because recovery and kernel updates may require service interruption.

Technical view

In tcf_block_get_ext(), a failed xa_insert() did not reverse an earlier FLOW_BLOCK_BIND operation. The offload therefore retained a stale binding and rejected later requests as busy. The stable fix calls tcf_block_offload_unbind() on that error path. The supplied affected-version data includes Linux 6.8 and boundaries around 6.11.7 and 6.12; distribution backports require confirmation.

Likely exposure

Exposure is limited to Linux systems running an affected kernel where a local, low-privileged actor can issue the relevant traffic-control request. Systems using vendor kernels may already contain a backported fix even when their displayed version appears affected. Internet reachability alone does not create exposure.

Exploitation context

The CVSS vector describes local access, low complexity, low privileges, and no user interaction. The demonstrated outcome is persistent network-offload configuration failure requiring reboot or driver rebind. The record is not in KEV, and the supplied sources provide no evidence of active exploitation or a public weaponized exploit.

Researcher notes

The source narrative directly supports stale FLOW_BLOCK_BIND state and availability or operational impact. Although the supplied CVSS claims high confidentiality, integrity, and availability impact, it does not explain confidentiality or integrity consequences. Exact affected-version interpretation and distribution backport coverage remain incomplete, so researchers should verify against vendor kernel histories.

Mitigation direction

  • Install a vendor-supported kernel incorporating the applicable referenced stable fix.
  • Confirm distribution backport status rather than relying only on the displayed kernel version.
  • Restrict local access and permissions capable of changing Linux traffic-control configuration.
  • Avoid assigning the same block index to ingress and egress pending remediation.
  • Use reboot or driver rebind only as operational recovery after assessing service impact.

Validation and detection

  • Inventory kernel versions on systems permitting traffic-control configuration.
  • Check vendor advisories and changelogs for backports of the referenced stable commits.
  • Review audit records for failed block bindings followed by persistent busy errors.
  • Verify affected systems accept valid traffic-control changes after patching.
  • Do not reproduce the failure on production systems; use an isolated test environment.
Prepared
Confidence
medium
Sources
4

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2024-53044 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
7.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

2CVSS vectors
3Timeline events
1ADP providers
3Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

CVSS vector scores

2 official scores

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
7.8CVSS 3.1HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H1.85.9Linux
5.5CVSS 3.1MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H1.83.6CISA-ADP

Vulnerability scoring details

Base CVSS 3.1 score

7.8High
CVSS 3.1 vector shape for CVE-2024-53044Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
cvssV3_1other:ssvc
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux94e2557d086ad831027c54bc9c2130d337c72814, 94e2557d086ad831027c54bc9c2130d337c72814unaffected
LinuxLinux6.8, 0, 6.11.7, 6.12affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.