CVE-2026-74669
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
ipvs: clear IPv4 options after rebasing tunnel ICMP errors
ip_vs_in_icmp() rebases an skb from the outer ICMP packet to the quoted original request before passing it to icmp_send(). However, IPCB(skb)->opt still describes the outer IPv4 header.
A timestamp option in the outer header can therefore leave an offset that points into the quoted transport header after the rebase. __ip_options_echo() treats a byte at that stale location as the option length and copies it into the fixed-size option storage on the __icmp_send() stack, causing a stack out-of-bounds write.
Clear the stale option metadata after resetting the network header. Keep the remaining control block fields, including the ingress interface used by the ICMP response path.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < 79ffa99202c944467e28b13b513bf2998732edff | affected |
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < c9413b50204738fbc429bb86bf01353c393a6c28 | affected |
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < 37c61b3745129cbd682c557b51345828120972e5 | affected |
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < ed246dd85ebf27c1f6b7897834d40786c0ca3006 | affected |
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < 6f46fc460e9316062bdcdf89199eb5d7a33da33b | affected |
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < 75eec935444db4af2123e0491936f6e273d7ea00 | affected |
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < 384b4dae14277d369221d187e9b3af56c79d2e50 | affected |
| Linux | Linux | f2edb9f7706dcb2c0d9a362b2ba849efe3a97f5e < e0ba936287dfe9783426aac27e5fd76fe35b38c9 | affected |
| Linux | Linux | 3.7 | affected |
| Linux | Linux | 0 < 3.7 | unaffected |
| Linux | Linux | 5.10.265 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.216 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.183 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.152 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.104 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.45 <= 6.18.* | unaffected |
| Linux | Linux | 7.1.9 <= 7.1.* | unaffected |
| Linux | Linux | 7.2 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/79ffa99202c944467e28b13b513bf2998732edff
- https://git.kernel.org/stable/c/c9413b50204738fbc429bb86bf01353c393a6c28
- https://git.kernel.org/stable/c/37c61b3745129cbd682c557b51345828120972e5
- https://git.kernel.org/stable/c/ed246dd85ebf27c1f6b7897834d40786c0ca3006
- https://git.kernel.org/stable/c/6f46fc460e9316062bdcdf89199eb5d7a33da33b
- https://git.kernel.org/stable/c/75eec935444db4af2123e0491936f6e273d7ea00
- https://git.kernel.org/stable/c/384b4dae14277d369221d187e9b3af56c79d2e50
- https://git.kernel.org/stable/c/e0ba936287dfe9783426aac27e5fd76fe35b38c9
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.