CVE-2024-56770: net/sched: netem: account for backlog updates from child qdisc
Noroxi assessment
Priority: Monitor (action score 22/100)
- The sources we track (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) show no public exploit code or exploitation in the wild.
- Probability of exploitation in the next 30 days: 0.27% (FIRST EPSS).
- Someone with local access to the system can trigger it. A low-privileged account is enough. No user action is required. No special conditions are required; it is repeatable.
- Fixed version: Linux Linux 10df49cfca73dfbbdb6c4150d859f7e8926ae427, 216509dda290f6db92c816dd54b83c1df9da9e76, 356078a5c55ec8d2061fcc009fb8599f5b0527f9; azl3 kernel 6.6.64.2-9 on Azure Linux 3.0 6.6.76.1-1; azl3 kernel 6.6.76.1-1 on Azure Linux 3.0 6.6.76.1-1.
Low priority for now. Upgrade to Linux Linux 10df49cfca73dfbbdb6c4150d859f7e8926ae427, 216509dda290f6db92c816dd54b83c1df9da9e76, 356078a5c55ec8d2061fcc009fb8599f5b0527f9; azl3 kernel 6.6.64.2-9 on Azure Linux 3.0 6.6.76.1-1; azl3 kernel 6.6.76.1-1 on Azure Linux 3.0 6.6.76.1-1 or later.
Generated automatically from the record's data: CVSS (NVD and CNA), CISA KEV and SSVC, FIRST EPSS, exploit sources, fixed versions. How we calculate it
Primary sources: NVD · CVE.org · FIRST EPSS
In the Linux kernel, the following vulnerability has been resolved: net/sched: netem: account for backlog updates from child qdisc In general, 'qlen' of any classful qdisc should keep track of the number of packets that the qdisc itself and all of its children holds. In case of netem, 'qlen' only accounts for the packets in its internal tfifo. When netem is used with a child qdisc, the child qdisc can use 'qdisc_tree_reduce_backlog' to inform its parent, netem, about created or dropped SKBs. This function updates 'qlen' and the backlog statistics of netem, but netem does not account for changes made by a child qdisc. 'qlen' then indicates the wrong number of packets in the tfifo. If a child qdisc creates new SKBs during enqueue and informs its parent about this, netem's 'qlen' value is increased. When netem dequeues the newly created SKBs from the child, the 'qlen' in netem is not updated. If 'qlen' reaches the configured sch->limit, the enqueue function stops working, even though the tfifo is not full. Reproduce the bug: Ensure that the sender machine has GSO enabled. Configure netem as root qdisc and tbf as its child on the outgoing interface of the machine as follows: $ tc qdisc add dev <oif> root handle 1: netem delay 100ms limit 100 $ tc qdisc add dev <oif> parent 1:0 tbf rate 50Mbit burst 1542 latency 50ms Send bulk TCP traffic out via this interface, e.g., by running an iPerf3 client on the machine. Check the qdisc statistics: $ tc -s qdisc show dev <oif> Statistics after 10s of iPerf3 TCP test before the fix (note that netem's backlog > limit, netem stopped accepting packets): qdisc netem 1: root refcnt 2 limit 1000 delay 100ms Sent 2767766 bytes 1848 pkt (dropped 652, overlimits 0 requeues 0) backlog 4294528236b 1155p requeues 0 qdisc tbf 10: parent 1:1 rate 50Mbit burst 1537b lat 50ms Sent 2767766 bytes 1848 pkt (dropped 327, overlimits 7601 requeues 0) backlog 0b 0p requeues 0 Statistics after the fix: qdisc netem 1: root refcnt 2 limit 1000 delay 100ms Sent 37766372 bytes 24974 pkt (dropped 9, overlimits 0 requeues 0) backlog 0b 0p requeues 0 qdisc tbf 10: parent 1:1 rate 50Mbit burst 1537b lat 50ms Sent 37766372 bytes 24974 pkt (dropped 327, overlimits 96017 requeues 0) backlog 0b 0p requeues 0 tbf segments the GSO SKBs (tbf_segment) and updates the netem's 'qlen'. The interface fully stops transferring packets and "locks". In this case, the child qdisc and tfifo are empty, but 'qlen' indicates the tfifo is at its limit and no more packets are accepted. This patch adds a counter for the entries in the tfifo. Netem's 'qlen' is only decreased when a packet is returned by its dequeue function, and not during enqueuing into the child qdisc. External updates to 'qlen' are thus accounted for and only the behavior of the backlog statistics changes. As in other qdiscs, 'qlen' then keeps track of how many packets are held in netem and all of its children. As before, sch->limit remains as the maximum number of packets in the tfifo. The same applies to netem's backlog statistics.
- Published
- Jan 8, 2025
- Updated
- Oct 15, 2026
- EPSS
- 0.2% · 19th percentile
- CWE
- —
Report tools
Action score
22
Monitor
Low priority for now.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Not listed
- EPSS
- 0 / 30 · 0.2%
CISA SSVC decision
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
Vulnrichment: CISA's decision-tree inputs.
CNA vs NVD score
- NVD
- 5.5
- CNA · Linux
- 5.5
- agree
The score given by the assigning authority versus NVD’s independent score. A gap means the severity is contested.
Get told when this record changes
- Not in KEV: no record of exploitation in the wild
- No public exploit code on record
- A fix has been released
If any of these changes, we'll tell you in the daily email digest.
Is your version affected? Check itNoroxi analysis
What does it mean in your environment?
The assessment above is generated automatically from the record's data; it doesn't know your environment. Our team verifies on your systems whether this vulnerability is actually exploitable and which mitigation is enough.
We use this product, ask for helpAffected systems
Is your version affected?
Pick the product and type the version you run. It's compared with this record's version ranges in your browser; the version isn't sent anywhere.
| Vendor | Product | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Affected versions
NVD version ranges (for catalog products). Add the product to your stack with a version and matching uses these.
- linux linux kernel3.3 and later · before 5.4.288
- linux linux kernel5.5 and later · before 5.10.232
- linux linux kernel5.11 and later · before 5.15.175
- linux linux kernel5.16 and later · before 6.1.121
- linux linux kernel6.2 and later · before 6.6.67
- linux linux kernel6.7 and later · before 6.12.6
- linux linux kernel6.13
Versions reported by the vendor
Affected version ranges reported by the assigning authority (Linux). Independent of NVD's CPE analysis and usually ahead of it.
Linux Linux
- 3.3affected
- 50612537e9ab29693122fab20fc1eed235054ffe and later · before 83c6ab12f08dcc09d4c5ac86fdb89736b28f1d31affected · git
- 50612537e9ab29693122fab20fc1eed235054ffe and later · before 216509dda290f6db92c816dd54b83c1df9da9e76affected · git
- 50612537e9ab29693122fab20fc1eed235054ffe and later · before c2047b0e216c8edce227d7c42f99ac2877dad0e4affected · git
- 50612537e9ab29693122fab20fc1eed235054ffe and later · before 10df49cfca73dfbbdb6c4150d859f7e8926ae427affected · git
- 50612537e9ab29693122fab20fc1eed235054ffe and later · before 3824c5fad18eeb7abe0c4fc966f29959552dca3eaffected · git
- 50612537e9ab29693122fab20fc1eed235054ffe and later · before 356078a5c55ec8d2061fcc009fb8599f5b0527f9affected · git
- 50612537e9ab29693122fab20fc1eed235054ffe and later · before f8d4bc455047cf3903cd6f85f49978987dbb3027affected · git
- before 3.3not affected · semver
- 5.4.288 and later · up to and including 5.4.*not affected · semver
Package-level exposure
OSV and GitHub Advisory data: ecosystem, package and range. SBOM matching uses this table.
| Ecosystem | Package | Affected range | Fix |
|---|---|---|---|
| Debian:12 | linux | before 6.1.123-1 | 6.1.123-1 |
| Debian:13 | linux | before 6.12.6-1 | 6.12.6-1 |
Same product
linux: all recordsOther highest-scoring records for the same primary product.
- CVE-2026-31431crypto: algif_aead - Revert to operating out-of-placeKEV90Now
- CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe…KEV89Now
- CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV85Now
Published before and after this one in the same product
- ← EarlierCVE-2024-56785Jan 8, 2025 · MIPS: Loongson64: DTS: Really fix PCIe port nodes for ls7a22Monitor
- ← EarlierCVE-2024-56787Jan 8, 2025 · soc: imx8m: Probe the SoC driver as platform driver22Monitor
- Later →CVE-2024-56779Jan 8, 2025 · nfsd: fix nfs4_openowner leak when concurrent nfsd4_open occur22Monitor
Remediation
Which version to upgrade to
Fix versions compiled from the vendor, package registries and Microsoft. Verify the vendor's note before upgrading.
| Product / package | Fixed version | Source |
|---|---|---|
| Linux Linux | 10df49cfca73dfbbdb6c4150d859f7e8926ae427 | Vendor (CNA) |
| Linux Linux | 216509dda290f6db92c816dd54b83c1df9da9e76 | Vendor (CNA) |
| Linux Linux | 356078a5c55ec8d2061fcc009fb8599f5b0527f9 | Vendor (CNA) |
| Linux Linux | 3824c5fad18eeb7abe0c4fc966f29959552dca3e | Vendor (CNA) |
| Linux Linux | 83c6ab12f08dcc09d4c5ac86fdb89736b28f1d31 | Vendor (CNA) |
| Linux Linux | c2047b0e216c8edce227d7c42f99ac2877dad0e4 | Vendor (CNA) |
| Linux Linux | f8d4bc455047cf3903cd6f85f49978987dbb3027 | Vendor (CNA) |
| azl3 kernel 6.6.64.2-9 on Azure Linux 3.0 | 6.6.76.1-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| azl3 kernel 6.6.76.1-1 on Azure Linux 3.0 | 6.6.76.1-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| cbl2 kernel 5.15.173.1-2 on CBL Mariner 2.0 | 5.15.176.3-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| cbl2 kernel 5.15.173.1-2 on CBL-Mariner 2.0 | 5.15.176.3-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| cbl2 kernel 5.15.176.3-1 on CBL Mariner 2.0 | 5.15.176.3-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| debian:linux | 6.1.123-1 · Debian:12 | Package registry (OSV) |
Exploit status
No known public exploit
No public exploit has been observed yet. That doesn't mean you're safe, only that the bar is a little higher.
Research context
For pentesters and researchers: attack profile, score disagreement, timeline, patch commits, credits, variant and chain candidates, bug bounty scope. All derived from existing data; no exploit code.
Timeline
From publication to today: proof of concept, Metasploit module, CISA KEV and fix record. Dates are as reported by the sources.
No dated events beyond publication.
No history yet (it accumulates with the daily EPSS job).
Patch and commit links
Commit, PR and diff links among the references. A starting point for patch-diffing and variant hunting; fixes, not exploits.
No commit or PR link among the references.
Credits
All researchersFinders, reporters and analysts named in the CNA record. Click a name for that researcher’s other records.
No credits in the CNA record.
Variant candidates
Same product, same weakness class, within 18 months. If the patch missed the root cause, the sibling bug is here.
No nightly-computed relations.
Chain candidates
An authentication bypass and a privilege-requiring bug in the same product, published close together: combined they may become an unauthenticated path.
—
Bug bounty scope
No known public program.
Source: bounty-targets-data (public HackerOne, Bugcrowd, Intigriti, YesWeHack listings).
Technical details
Attack conditions
- Someone with local access to the system can trigger it.
- A low-privileged account is enough.
- No user action is required.
- No special conditions are required; it is repeatable.
If successful
- Confidentiality
- none
- Integrity
- none
- Availability
- high · the service can be disrupted
- Attack vector
- Local
- Attack complexity
- Low
- Privileges required
- Low
- User interaction
- None
- Scope
- Unchanged
- Confidentiality impact
- None
- Integrity impact
- None
- Availability impact
- High
Weakness class (CWE)
—
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Attack context
MITRE CAPEC attack patterns and ATT&CK techniques for this weakness class (CWE). A starting point for detection rules and threat hunting.
MITRE has no CAPEC/ATT&CK mapping for this CWE.
Change log
- Fix✗ → ✓
For records you follow, these changes also arrive as notifications. →
References
Show all references (10 more)Show less
- git.kernel.org/stable/c/216509dda290f6db92c816dd54b83c1df9da9e76
- git.kernel.org/stable/c/356078a5c55ec8d2061fcc009fb8599f5b0527f9
- git.kernel.org/stable/c/3824c5fad18eeb7abe0c4fc966f29959552dca3e
- git.kernel.org/stable/c/83c6ab12f08dcc09d4c5ac86fdb89736b28f1d31
- git.kernel.org/stable/c/c2047b0e216c8edce227d7c42f99ac2877dad0e4
- git.kernel.org/stable/c/f8d4bc455047cf3903cd6f85f49978987dbb3027
- lists.debian.org/debian-lts-announce/2025/03/msg00001.html
- lists.debian.org/debian-lts-announce/2025/03/msg00002.html
- cert-portal.siemens.com/productcert/html/ssa-355557.html
- cert-portal.siemens.com/productcert/html/ssa-398330.html
Vendor advisories and official records. Exploit/PoC links are deliberately left out.