seg6: separate dst_cache for input and output paths in seg6 lwtunnel
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.10.253, 5.15.203, 6.1.169, 6.6.135, 6.12.82, and 2 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: yes
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: seg6: separate dst_cache for input and output paths in seg6 lwtunnel The seg6 lwtunnel uses a single dst_cache per encap route, shared between seg6_input_core() and seg6_output_core(). These two paths can perform the post-encap SID lookup in different routing contexts (e.g., ip rules matching on the ingress interface, or VRF table separation). Whichever path runs first populates the cache, and the other reuses it blindly, bypassing its own lookup. Fix this by splitting the cache into cache_input and cache_output, so each path maintains its own cached dst independently.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in 1dec91d3b1cefb82635761b7812154af3ef46449; From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in 750569d6987a0ff46317a4b86eb3907e296287bf; From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in 57d0374d14fa667dec6952173b93e7e84486d5c9; From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in 84d458018b147176b259347103fccb7e93abd2b1; From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in 6305ad032b03d2ea4181b953a66e19a9a6ed053c; From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in fb56de5d99218de49d5d43ef3a99e062ecd0f9a1; From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in 17d87d42874f5d6c1a0ccc6d9190dfe82a9a7a6a; From 6c8702c60b88651072460f3f4026c7dfe2521d12 · fixed in c3812651b522fe8437ebb7063b75ddb95b571643
- Linux Linux
4.10
- KernelLinux
From 4.10.0 · fixed in 5.10.253; From 5.11.0 · fixed in 5.15.203; From 5.16.0 · fixed in 6.1.169; From 6.2.0 · fixed in 6.6.135; From 6.7.0 · fixed in 6.12.82; From 6.13.0 · fixed in 6.18.23; From 6.19.0 · fixed in 6.19.13
References 8
git.kernel.org
- stable/c/1dec91d3b1cefb82635761b7812154af3ef46449
- stable/c/750569d6987a0ff46317a4b86eb3907e296287bf
- stable/c/57d0374d14fa667dec6952173b93e7e84486d5c9
- stable/c/84d458018b147176b259347103fccb7e93abd2b1
- stable/c/6305ad032b03d2ea4181b953a66e19a9a6ed053c
- stable/c/fb56de5d99218de49d5d43ef3a99e062ecd0f9a1
- stable/c/17d87d42874f5d6c1a0ccc6d9190dfe82a9a7a6a
- stable/c/c3812651b522fe8437ebb7063b75ddb95b571643