{"api_version":"1","generated_at":"2026-04-25T12:37:59+00:00","cve":"CVE-2026-31668","urls":{"html":"https://cve.report/CVE-2026-31668","api":"https://cve.report/api/cve/CVE-2026-31668.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-31668","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-31668"},"summary":{"title":"seg6: separate dst_cache for input and output paths in seg6 lwtunnel","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nseg6: separate dst_cache for input and output paths in seg6 lwtunnel\n\nThe seg6 lwtunnel uses a single dst_cache per encap route, shared\nbetween seg6_input_core() and seg6_output_core(). These two paths\ncan perform the post-encap SID lookup in different routing contexts\n(e.g., ip rules matching on the ingress interface, or VRF table\nseparation). Whichever path runs first populates the cache, and the\nother reuses it blindly, bypassing its own lookup.\n\nFix this by splitting the cache into cache_input and cache_output,\nso each path maintains its own cached dst independently.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-04-24 15:16:46","updated_at":"2026-04-24 17:51:40"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/57d0374d14fa667dec6952173b93e7e84486d5c9","name":"https://git.kernel.org/stable/c/57d0374d14fa667dec6952173b93e7e84486d5c9","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/c3812651b522fe8437ebb7063b75ddb95b571643","name":"https://git.kernel.org/stable/c/c3812651b522fe8437ebb7063b75ddb95b571643","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/750569d6987a0ff46317a4b86eb3907e296287bf","name":"https://git.kernel.org/stable/c/750569d6987a0ff46317a4b86eb3907e296287bf","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/1dec91d3b1cefb82635761b7812154af3ef46449","name":"https://git.kernel.org/stable/c/1dec91d3b1cefb82635761b7812154af3ef46449","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/17d87d42874f5d6c1a0ccc6d9190dfe82a9a7a6a","name":"https://git.kernel.org/stable/c/17d87d42874f5d6c1a0ccc6d9190dfe82a9a7a6a","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/fb56de5d99218de49d5d43ef3a99e062ecd0f9a1","name":"https://git.kernel.org/stable/c/fb56de5d99218de49d5d43ef3a99e062ecd0f9a1","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/6305ad032b03d2ea4181b953a66e19a9a6ed053c","name":"https://git.kernel.org/stable/c/6305ad032b03d2ea4181b953a66e19a9a6ed053c","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/84d458018b147176b259347103fccb7e93abd2b1","name":"https://git.kernel.org/stable/c/84d458018b147176b259347103fccb7e93abd2b1","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-31668","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-31668","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 1dec91d3b1cefb82635761b7812154af3ef46449 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 750569d6987a0ff46317a4b86eb3907e296287bf git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 57d0374d14fa667dec6952173b93e7e84486d5c9 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 84d458018b147176b259347103fccb7e93abd2b1 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 6305ad032b03d2ea4181b953a66e19a9a6ed053c git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 fb56de5d99218de49d5d43ef3a99e062ecd0f9a1 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 17d87d42874f5d6c1a0ccc6d9190dfe82a9a7a6a git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6c8702c60b88651072460f3f4026c7dfe2521d12 c3812651b522fe8437ebb7063b75ddb95b571643 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 4.10","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.10 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10.253 5.10.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.15.203 5.15.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.1.169 6.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.135 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.82 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.23 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.19.13 6.19.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["net/ipv6/seg6_iptunnel.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"1dec91d3b1cefb82635761b7812154af3ef46449","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"},{"lessThan":"750569d6987a0ff46317a4b86eb3907e296287bf","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"},{"lessThan":"57d0374d14fa667dec6952173b93e7e84486d5c9","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"},{"lessThan":"84d458018b147176b259347103fccb7e93abd2b1","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"},{"lessThan":"6305ad032b03d2ea4181b953a66e19a9a6ed053c","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"},{"lessThan":"fb56de5d99218de49d5d43ef3a99e062ecd0f9a1","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"},{"lessThan":"17d87d42874f5d6c1a0ccc6d9190dfe82a9a7a6a","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"},{"lessThan":"c3812651b522fe8437ebb7063b75ddb95b571643","status":"affected","version":"6c8702c60b88651072460f3f4026c7dfe2521d12","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["net/ipv6/seg6_iptunnel.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"4.10"},{"lessThan":"4.10","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"5.10.*","status":"unaffected","version":"5.10.253","versionType":"semver"},{"lessThanOrEqual":"5.15.*","status":"unaffected","version":"5.15.203","versionType":"semver"},{"lessThanOrEqual":"6.1.*","status":"unaffected","version":"6.1.169","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.135","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.82","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.23","versionType":"semver"},{"lessThanOrEqual":"6.19.*","status":"unaffected","version":"6.19.13","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.0","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.10.253","versionStartIncluding":"4.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.15.203","versionStartIncluding":"4.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.1.169","versionStartIncluding":"4.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.135","versionStartIncluding":"4.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.82","versionStartIncluding":"4.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.23","versionStartIncluding":"4.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.19.13","versionStartIncluding":"4.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0","versionStartIncluding":"4.10","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nseg6: separate dst_cache for input and output paths in seg6 lwtunnel\n\nThe seg6 lwtunnel uses a single dst_cache per encap route, shared\nbetween seg6_input_core() and seg6_output_core(). These two paths\ncan perform the post-encap SID lookup in different routing contexts\n(e.g., ip rules matching on the ingress interface, or VRF table\nseparation). Whichever path runs first populates the cache, and the\nother reuses it blindly, bypassing its own lookup.\n\nFix this by splitting the cache into cache_input and cache_output,\nso each path maintains its own cached dst independently."}],"providerMetadata":{"dateUpdated":"2026-04-24T14:45:16.630Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/1dec91d3b1cefb82635761b7812154af3ef46449"},{"url":"https://git.kernel.org/stable/c/750569d6987a0ff46317a4b86eb3907e296287bf"},{"url":"https://git.kernel.org/stable/c/57d0374d14fa667dec6952173b93e7e84486d5c9"},{"url":"https://git.kernel.org/stable/c/84d458018b147176b259347103fccb7e93abd2b1"},{"url":"https://git.kernel.org/stable/c/6305ad032b03d2ea4181b953a66e19a9a6ed053c"},{"url":"https://git.kernel.org/stable/c/fb56de5d99218de49d5d43ef3a99e062ecd0f9a1"},{"url":"https://git.kernel.org/stable/c/17d87d42874f5d6c1a0ccc6d9190dfe82a9a7a6a"},{"url":"https://git.kernel.org/stable/c/c3812651b522fe8437ebb7063b75ddb95b571643"}],"title":"seg6: separate dst_cache for input and output paths in seg6 lwtunnel","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-31668","datePublished":"2026-04-24T14:45:16.630Z","dateReserved":"2026-03-09T15:48:24.129Z","dateUpdated":"2026-04-24T14:45:16.630Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-04-24 15:16:46","lastModifiedDate":"2026-04-24 17:51:40","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"31668","Ordinal":"1","Title":"seg6: separate dst_cache for input and output paths in seg6 lwtu","CVE":"CVE-2026-31668","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"31668","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nseg6: separate dst_cache for input and output paths in seg6 lwtunnel\n\nThe seg6 lwtunnel uses a single dst_cache per encap route, shared\nbetween seg6_input_core() and seg6_output_core(). These two paths\ncan perform the post-encap SID lookup in different routing contexts\n(e.g., ip rules matching on the ingress interface, or VRF table\nseparation). Whichever path runs first populates the cache, and the\nother reuses it blindly, bypassing its own lookup.\n\nFix this by splitting the cache into cache_input and cache_output,\nso each path maintains its own cached dst independently.","Type":"Description","Title":"seg6: separate dst_cache for input and output paths in seg6 lwtu"}]}}}