Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: net/sched: cake: reject overhead values that underflow length CAKE accepts signed overhead values and stores them in an s16, but the adjusted packet length calculation uses unsigned arithmetic. A negative effective length can therefore wrap to a large value. Such configurations make rate accounting depend on integer wraparound rather than on the packet size userspace intended to model. A static netlink lower bound is not enough because packets reaching CAKE can be smaller than any reasonable manual-overhead allowance. Fold the signed overhead adjustment into the existing datapath MPU clamp so negative adjusted lengths are clamped before link-layer framing adjustments.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected a729b7f0bd5bf4919306556aed614438f5174537 before f511dd7bf6077aa7afbe72914520553fedaacbb4; affected a729b7f0bd5bf4919306556aed614438f5174537 before e1df6cff03aad8c96e55a8b2a991e505c7a3ff6f; affected a729b7f0bd5bf4919306556aed614438f5174537 before 297f459865360b46a887667cbf3aac6a6f013841; affected a729b7f0bd5bf4919306556aed614438f5174537 before 336c1e414fc0e9844d445174e8ada2a7dd8d1c4b; affected a729b7f0bd5bf4919306556aed614438f5174537 before bcdf3a3664f7d2c4e37e155f30f72ef33f041804; affected a729b7f0bd5bf4919306556aed614438f5174537 before 7aa0e64fea778a9e3df73e64da95367ff8ad2ea5; affected a729b7f0bd5bf4919306556aed614438f5174537 before f1e7807df5bf2d42a40266430e9f82f37633cdcf; affected a729b7f0bd5bf4919306556aed614438f5174537 before b7f97cae7ec1b6c3c32843c42be218690d310467 |
| Linux / Linux | affected 4.19; unaffected 0 before 4.19; unaffected 5.10.261 through 5.10.*; unaffected 5.15.212 through 5.15.*; unaffected 6.1.178 through 6.1.*; unaffected 6.6.145 through 6.6.*; unaffected 6.12.97 through 6.12.*; unaffected 6.18.40 through 6.18.*; unaffected 7.1.5 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/f511dd7bf6077aa7afbe72914520553fedaacbb4
- https://git.kernel.org/stable/c/e1df6cff03aad8c96e55a8b2a991e505c7a3ff6f
- https://git.kernel.org/stable/c/297f459865360b46a887667cbf3aac6a6f013841
- https://git.kernel.org/stable/c/336c1e414fc0e9844d445174e8ada2a7dd8d1c4b
- https://git.kernel.org/stable/c/bcdf3a3664f7d2c4e37e155f30f72ef33f041804
- https://git.kernel.org/stable/c/7aa0e64fea778a9e3df73e64da95367ff8ad2ea5
- https://git.kernel.org/stable/c/f1e7807df5bf2d42a40266430e9f82f37633cdcf
- https://git.kernel.org/stable/c/b7f97cae7ec1b6c3c32843c42be218690d310467