{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2025-38553","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2025-04-16T04:51:24.025Z","datePublished":"2025-08-19T06:06:53.204Z","dateUpdated":"2026-05-11T21:30:19.100Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-05-11T21:30:19.100Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/sched: Restrict conditions for adding duplicating netems to qdisc tree\n\nnetem_enqueue's duplication prevention logic breaks when a netem\nresides in a qdisc tree with other netems - this can lead to a\nsoft lockup and OOM loop in netem_dequeue, as seen in [1].\nEnsure that a duplicating netem cannot exist in a tree with other\nnetems.\n\nPrevious approaches suggested in discussions in chronological order:\n\n1) Track duplication status or ttl in the sk_buff struct. Considered\ntoo specific a use case to extend such a struct, though this would\nbe a resilient fix and address other previous and potential future\nDOS bugs like the one described in loopy fun [2].\n\n2) Restrict netem_enqueue recursion depth like in act_mirred with a\nper cpu variable. However, netem_dequeue can call enqueue on its\nchild, and the depth restriction could be bypassed if the child is a\nnetem.\n\n3) Use the same approach as in 2, but add metadata in netem_skb_cb\nto handle the netem_dequeue case and track a packet's involvement\nin duplication. This is an overly complex approach, and Jamal\nnotes that the skb cb can be overwritten to circumvent this\nsafeguard.\n\n4) Prevent the addition of a netem to a qdisc tree if its ancestral\npath contains a netem. However, filters and actions can cause a\npacket to change paths when re-enqueued to the root from netem\nduplication, leading us to the current solution: prevent a\nduplicating netem from inhabiting the same tree as other netems.\n\n[1] https://lore.kernel.org/netdev/8DuRWwfqjoRDLDmBMlIfbrsZg9Gx50DHJc1ilxsEBNe2D6NMoigR_eIRIG0LOjMc3r10nUUZtArXx4oZBIdUfZQrwjcQhdinnMis_0G7VEk=@willsroot.io/\n[2] https://lwn.net/Articles/719297/"}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/sch_netem.c"],"versions":[{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"ad340a4b4adb855b18b3666f26ad65c8968e2deb","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"f088b6ebe8797a3f948d2cae47f34bfb45cc6522","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"cab2809944989889f88a1a8b5cff1c78460c72cb","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"325f5ec67cc0a77f2d0d453445b9857f1cd06c76","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"103c4e27ec9f5fe53022e46e976abf52c7221baf","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"795cb393e38977aa991e70a9363da0ee734b2114","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"250f8796006c0f2bc638ce545f601d49ae8d528b","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"09317dfb681ac5a96fc69bea0c54441cf91b8270","status":"affected","versionType":"git"},{"version":"0afb51e72855971dba83b3c6b70c547c2d1161fd","lessThan":"ec8e0e3d7adef940cdf9475e2352c0680189d14e","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/sch_netem.c"],"versions":[{"version":"2.6.12","status":"affected"},{"version":"0","lessThan":"2.6.12","status":"unaffected","versionType":"semver"},{"version":"5.4.297","lessThanOrEqual":"5.4.*","status":"unaffected","versionType":"semver"},{"version":"5.10.241","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.190","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.148","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.102","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.42","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.15.10","lessThanOrEqual":"6.15.*","status":"unaffected","versionType":"semver"},{"version":"6.16.1","lessThanOrEqual":"6.16.*","status":"unaffected","versionType":"semver"},{"version":"6.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":"2.6.12","versionEndExcluding":"5.4.297"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"5.10.241"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"5.15.190"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"6.1.148"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"6.6.102"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"6.12.42"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"6.15.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"6.16.1"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.12","versionEndExcluding":"6.17"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/ad340a4b4adb855b18b3666f26ad65c8968e2deb"},{"url":"https://git.kernel.org/stable/c/f088b6ebe8797a3f948d2cae47f34bfb45cc6522"},{"url":"https://git.kernel.org/stable/c/cab2809944989889f88a1a8b5cff1c78460c72cb"},{"url":"https://git.kernel.org/stable/c/325f5ec67cc0a77f2d0d453445b9857f1cd06c76"},{"url":"https://git.kernel.org/stable/c/103c4e27ec9f5fe53022e46e976abf52c7221baf"},{"url":"https://git.kernel.org/stable/c/795cb393e38977aa991e70a9363da0ee734b2114"},{"url":"https://git.kernel.org/stable/c/250f8796006c0f2bc638ce545f601d49ae8d528b"},{"url":"https://git.kernel.org/stable/c/09317dfb681ac5a96fc69bea0c54441cf91b8270"},{"url":"https://git.kernel.org/stable/c/ec8e0e3d7adef940cdf9475e2352c0680189d14e"}],"title":"net/sched: Restrict conditions for adding duplicating netems to qdisc tree","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CVE Program Container","references":[{"url":"https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html"},{"url":"https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html"}],"providerMetadata":{"orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE","dateUpdated":"2025-11-03T17:39:46.686Z"}}]}}