{"api_version":"1","generated_at":"2026-10-27T16:11:34+00:00","cve":"CVE-2026-98274","urls":{"html":"https://cve.report/CVE-2026-98274","api":"https://cve.report/api/cve/CVE-2026-98274.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-98274","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-98274"},"summary":{"title":"net: psp: avoid conflicts with skb->decrypted and sk_validate_xmit_skb()","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: psp: avoid conflicts with skb->decrypted and sk_validate_xmit_skb()\n\nPSP conflicts with TLS ULP in its usage of both skb->decrypted and\nsk->sk_validate_xmit_skb().\n\nMake PSP mutually exclusive with TLS ULP, the only other user of either\nof these. As other users of skb->decrypted come along, they can be added\nto sk_has_decrypt_user(). It would make sense to also assert that\nsk->sk_validate_xmit_skb() is also NULL in both of these setup paths for\nsimilar future proofing, but the PSP listener/sk_clone() path is still\nbroken and it could be seen as a regression to not allow rx assoc to run\non a child of a listener socket with PSP tx assoc state.\n\nInclude all TCP ULPs in the sk_has_decrypt_user() check, even though TLS\nis the only one that conflicts with PSP via the decrypted bit. This is\nintentional because PSP was not designed to be used with ULPs. It is\nbest to close off surface area that may make bugs reachable, until\nsomeone wishes to design and test an actual user of PSP with ULPs.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-10-06 09:18:17","updated_at":"2026-10-19 10:18:28"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/c8c8c18862337c469e325c207601de3279847809","name":"https://git.kernel.org/stable/c/c8c8c18862337c469e325c207601de3279847809","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/a41f24c612c3f5139a3143307eb85bbcf1bd4d07","name":"https://git.kernel.org/stable/c/a41f24c612c3f5139a3143307eb85bbcf1bd4d07","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/a13cca5ba5375f13cbdab545abfb5e288bef3f78","name":"https://git.kernel.org/stable/c/a13cca5ba5375f13cbdab545abfb5e288bef3f78","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-98274","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-98274","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6b46ca260e2290e3453d1355ab5b6d283d73d780 a13cca5ba5375f13cbdab545abfb5e288bef3f78 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6b46ca260e2290e3453d1355ab5b6d283d73d780 c8c8c18862337c469e325c207601de3279847809 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6b46ca260e2290e3453d1355ab5b6d283d73d780 a41f24c612c3f5139a3143307eb85bbcf1bd4d07 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6.18","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.54 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.2.8 7.2.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.3 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"98274","cve":"CVE-2026-98274","epss":"0.001730000","percentile":"0.061510000","score_date":"2026-10-06","updated_at":"2026-10-07 00:14:55"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["include/net/sock.h","net/core/sock.c","net/ipv4/tcp_ulp.c","net/psp/psp_sock.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"a13cca5ba5375f13cbdab545abfb5e288bef3f78","status":"affected","version":"6b46ca260e2290e3453d1355ab5b6d283d73d780","versionType":"git"},{"lessThan":"c8c8c18862337c469e325c207601de3279847809","status":"affected","version":"6b46ca260e2290e3453d1355ab5b6d283d73d780","versionType":"git"},{"lessThan":"a41f24c612c3f5139a3143307eb85bbcf1bd4d07","status":"affected","version":"6b46ca260e2290e3453d1355ab5b6d283d73d780","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["include/net/sock.h","net/core/sock.c","net/ipv4/tcp_ulp.c","net/psp/psp_sock.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"6.18"},{"lessThan":"6.18","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.54","versionType":"semver"},{"lessThanOrEqual":"7.2.*","status":"unaffected","version":"7.2.8","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.3","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.54","versionStartIncluding":"6.18","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2.8","versionStartIncluding":"6.18","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.3","versionStartIncluding":"6.18","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: psp: avoid conflicts with skb->decrypted and sk_validate_xmit_skb()\n\nPSP conflicts with TLS ULP in its usage of both skb->decrypted and\nsk->sk_validate_xmit_skb().\n\nMake PSP mutually exclusive with TLS ULP, the only other user of either\nof these. As other users of skb->decrypted come along, they can be added\nto sk_has_decrypt_user(). It would make sense to also assert that\nsk->sk_validate_xmit_skb() is also NULL in both of these setup paths for\nsimilar future proofing, but the PSP listener/sk_clone() path is still\nbroken and it could be seen as a regression to not allow rx assoc to run\non a child of a listener socket with PSP tx assoc state.\n\nInclude all TCP ULPs in the sk_has_decrypt_user() check, even though TLS\nis the only one that conflicts with PSP via the decrypted bit. This is\nintentional because PSP was not designed to be used with ULPs. It is\nbest to close off surface area that may make bugs reachable, until\nsomeone wishes to design and test an actual user of PSP with ULPs."}],"providerMetadata":{"dateUpdated":"2026-10-19T09:16:45.903Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/a13cca5ba5375f13cbdab545abfb5e288bef3f78"},{"url":"https://git.kernel.org/stable/c/c8c8c18862337c469e325c207601de3279847809"},{"url":"https://git.kernel.org/stable/c/a41f24c612c3f5139a3143307eb85bbcf1bd4d07"}],"title":"net: psp: avoid conflicts with skb->decrypted and sk_validate_xmit_skb()","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-98274","datePublished":"2026-10-06T08:45:35.297Z","dateReserved":"2026-09-25T10:25:14.334Z","dateUpdated":"2026-10-19T09:16:45.903Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-06 09:18:17","lastModifiedDate":"2026-10-19 10:18:28","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"98274","Ordinal":"1","Title":"net: psp: avoid conflicts with skb->decrypted and sk_validate_xm","CVE":"CVE-2026-98274","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"98274","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: psp: avoid conflicts with skb->decrypted and sk_validate_xmit_skb()\n\nPSP conflicts with TLS ULP in its usage of both skb->decrypted and\nsk->sk_validate_xmit_skb().\n\nMake PSP mutually exclusive with TLS ULP, the only other user of either\nof these. As other users of skb->decrypted come along, they can be added\nto sk_has_decrypt_user(). It would make sense to also assert that\nsk->sk_validate_xmit_skb() is also NULL in both of these setup paths for\nsimilar future proofing, but the PSP listener/sk_clone() path is still\nbroken and it could be seen as a regression to not allow rx assoc to run\non a child of a listener socket with PSP tx assoc state.\n\nInclude all TCP ULPs in the sk_has_decrypt_user() check, even though TLS\nis the only one that conflicts with PSP via the decrypted bit. This is\nintentional because PSP was not designed to be used with ULPs. It is\nbest to close off surface area that may make bugs reachable, until\nsomeone wishes to design and test an actual user of PSP with ULPs.","Type":"Description","Title":"net: psp: avoid conflicts with skb->decrypted and sk_validate_xm"}]}}}