Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: icmp: change the order of rate limits ICMP messages are ratelimited : After the blamed commits, the two rate limiters are applied in this order: 1) host wide ratelimit (icmp_global_allow()) 2) Per destination ratelimit (inetpeer based) In order to avoid side-channels attacks, we need to apply the per destination check first. This patch makes the following change : 1) icmp_global_allow() checks if the host wide limit is reached. But credits are not yet consumed. This is deferred to 3) 2) The per destination limit is checked/updated. This might add a new node in inetpeer tree. 3) icmp_global_consume() consumes tokens if prior operations succeeded. This means that host wide ratelimit is still effective in keeping inetpeer tree small even under DDOS. As a bonus, I removed icmp_global.lock as the fast path can use a lock-free operation.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 4cdf507d54525842dfd9f6313fdafba039084046 before 997ba8889611891f91e8ad83583466aeab6239a3; affected 4cdf507d54525842dfd9f6313fdafba039084046 before 662ec52260cc07b9ae53ecd3925183c29d34288b; affected 4cdf507d54525842dfd9f6313fdafba039084046 before a7722921adb046e3836eb84372241f32584bdb07; affected 4cdf507d54525842dfd9f6313fdafba039084046 before 483397b4ba280813e4a9c161a0a85172ddb43d19; affected 4cdf507d54525842dfd9f6313fdafba039084046 before 8c2bd38b95f75f3d2a08c93e35303e26d480d24e |
| Linux / Linux | affected 3.18; unaffected 0 before 3.18; unaffected 6.1.113 through 6.1.*; unaffected 6.6.54 through 6.6.*; unaffected 6.10.13 through 6.10.*; unaffected 6.11.2 through 6.11.*; unaffected 6.12 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/997ba8889611891f91e8ad83583466aeab6239a3
- https://git.kernel.org/stable/c/662ec52260cc07b9ae53ecd3925183c29d34288b
- https://git.kernel.org/stable/c/a7722921adb046e3836eb84372241f32584bdb07
- https://git.kernel.org/stable/c/483397b4ba280813e4a9c161a0a85172ddb43d19
- https://git.kernel.org/stable/c/8c2bd38b95f75f3d2a08c93e35303e26d480d24e
ADP enrichment
No English description supplied.
No references supplied.
No English description supplied.