Skip to content
Heist/ feed
Back to feed
CriticalFix available

net: tls: prevent chain-after-chain in plain text SG

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: net: tls: prevent chain-after-chain in plain text SG Sashiko points out that if end = 0 (start != 0) the current code will create a chain link to content type right after the wrap link: This would create a chain where the wrap link points directly to another chain link. The scatterlist API sg_next iterator does not recursively resolve consecutive chain links. meaning this is illegal input to crypto. The wrapping link is unnecessary if end = 0. end is the entry after the last one used so end = 0 means there's nothing pushed after the wrap: end start i v v v [ ]...[ ][ d ][ d ][ d ][ d ][rsv for wrap] Skip the wrapping in this case. TLS 1.3 can use the "wrapping slot" for it's chaining if end = 0. This avoids the chain-after-chain. Move the wrap chaining before marking END and chaining off content type, that feels like more logical ordering to me, but should not matter from functional perspective.

Products
Kernel
Affected versions
Not specified
Fixed versions
5.10.258, 5.15.209, 6.1.175, 6.12.92, 6.18.34, 6.6.142, 7.0.11
CVEs
CVE-2026-64046
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 21:30 UTC · Revision 1

Source evidence

net: tls: prevent chain-after-chain in plain text SG

core-osv · Original source

Published 19 Jul 2026, 15:39 UTC

In the Linux kernel, the following vulnerability has been resolved: net: tls: prevent chain-after-chain in plain text SG Sashiko points out that if end = 0 (start != 0) the current code will create a chain link to content type right after the wrap link: This would create a chain where the wrap link points directly to another chain link. The scatterlist API sg_next iterator does not recursively resolve consecutive chain links. meaning this is illegal input to crypto. The wrapping link is unnecessary if end = 0. end is the entry after the last one used so end = 0 means there's nothing pushed after the wrap: end start i v v v [ ]...[ ][ d ][ d ][ d ][ d ][rsv for wrap] Skip the wrapping in this case. TLS 1.3 can use the "wrapping slot" for it's chaining if end = 0. This avoids the chain-after-chain. Move the wrap chaining before marking END and chaining off content type, that feels like more logical ordering to me, but should not matter from functional perspective.

osv:CVE-2026-64046

Kernel

Fixed versions: 5.10.258, 5.15.209, 6.1.175, 6.6.142, 6.12.92, 6.18.34, 7.0.11

Complete source record
{
  "id": "e64ebbe325ef5220e5a4423466fc1767f5cf27991f88acbdcac34f8a8d4182a7",
  "url": "https://osv.dev/vulnerability/CVE-2026-64046",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "net: tls: prevent chain-after-chain in plain text SG",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: net: tls: prevent chain-after-chain in plain text SG Sashiko points out that if end = 0 (start != 0) the current code will create a chain link to content type right after the wrap link: This would create a chain where the wrap link points directly to another chain link. The scatterlist API sg_next iterator does not recursively resolve consecutive chain links. meaning this is illegal input to crypto. The wrapping link is unnecessary if end = 0. end is the entry after the last one used so end = 0 means there's nothing pushed after the wrap: end start i v v v [ ]...[ ][ d ][ d ][ d ][ d ][rsv for wrap] Skip the wrapping in this case. TLS 1.3 can use the \"wrapping slot\" for it's chaining if end = 0. This avoids the chain-after-chain. Move the wrap chaining before marking END and chaining off content type, that feels like more logical ordering to me, but should not matter from functional perspective.",
    "evidence": "osv:CVE-2026-64046",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "5.10.258",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "5.15.209",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.1.175",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.142",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.12.92",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.34",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "7.0.11",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "critical",
    "structured": {
      "id": "CVE-2026-64046",
      "aliases": [
        "CVE-2026-64046"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "9aaaa56845a06aeabdd597cbe19492dc01f281ec"
                },
                {
                  "fixed": "49a5faaa471ddcd37b6893970c9916eb836e7c31"
                },
                {
                  "fixed": "91359966e247c0244c66d50bbb8e74aefa4321c3"
                },
                {
                  "fixed": "410351158dfef2d67fea6603680b3a6013c6ed9d"
                },
                {
                  "fixed": "acdc12b71c9aa4be5dcd2c8062753c6d2033e235"
                },
                {
                  "fixed": "929b1548e63ac72e104c07d8ee8cbbeeba2fa89a"
                },
                {
                  "fixed": "af855f4c966afafef74faf8390c7b86568c0d46d"
                },
                {
                  "fixed": "b9c015ef1a7bf1e8dc67f21c6381f36deb2c3a36"
                },
                {
                  "fixed": "ff26a0e8377dec07e4a7230db7675bed1b9a6d03"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5.4.14"
                },
                {
                  "fixed": "5.5"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "d529d6c9f7e3aaeac13c4948f79799ccb825f29d"
                }
              ]
            }
          ],
          "versions": [
            "v5.4.302",
            "v5.4.301",
            "v5.4.300",
            "v5.4.299",
            "v5.4.298",
            "v5.4.297",
            "v5.4.296",
            "v5.4.295",
            "v5.4.294",
            "v5.4.293",
            "v5.4.292",
            "v5.4.291",
            "v5.4.290",
            "v5.4.289",
            "v5.4.288",
            "v5.4.287",
            "v5.4.286",
            "v5.4.285",
            "v5.4.284",
            "v5.4.283",
            "v5.4.282",
            "v5.4.281",
            "v5.4.280",
            "v5.4.279",
            "v5.4.278",
            "v5.4.277",
            "v5.4.276",
            "v5.4.275",
            "v5.4.274",
            "v5.4.273",
            "v5.4.272",
            "v5.4.271",
            "v5.4.270",
            "v5.4.269",
            "v5.4.268",
            "v5.4.267",
            "v5.4.266",
            "v5.4.265",
            "v5.4.264",
            "v5.4.263",
            "v5.4.262",
            "v5.4.261",
            "v5.4.260",
            "v5.4.259",
            "v5.4.258",
            "v5.4.257",
            "v5.4.256",
            "v5.4.255",
            "v5.4.254",
            "v5.4.253",
            "v5.4.252",
            "v5.4.251",
            "v5.4.250",
            "v5.4.249",
            "v5.4.248",
            "v5.4.247",
            "v5.4.246",
            "v5.4.245",
            "v5.4.244",
            "v5.4.243",
            "v5.4.242",
            "v5.4.241",
            "v5.4.240",
            "v5.4.239",
            "v5.4.238",
            "v5.4.237",
            "v5.4.236",
            "v5.4.235",
            "v5.4.234",
            "v5.4.233",
            "v5.4.232",
            "v5.4.231",
            "v5.4.230",
            "v5.4.229",
            "v5.4.228",
            "v5.4.227",
            "v5.4.226",
            "v5.4.225",
            "v5.4.224",
            "v5.4.223",
            "v5.4.222",
            "v5.4.221",
            "v5.4.220",
            "v5.4.219",
            "v5.4.218",
            "v5.4.217",
            "v5.4.216",
            "v5.4.215",
            "v5.4.214",
            "v5.4.213",
            "v5.4.212",
            "v5.4.211",
            "v5.4.210",
            "v5.4.209",
            "v5.4.208",
            "v5.4.207",
            "v5.4.206",
            "v5.4.205",
            "v5.4.204",
            "v5.4.203",
            "v5.4.202",
            "v5.4.201",
            "v5.4.200",
            "v5.4.199",
            "v5.4.198",
            "v5.4.197",
            "v5.4.196",
            "v5.4.195",
            "v5.4.194",
            "v5.4.193",
            "v5.4.192",
            "v5.4.191",
            "v5.4.190",
            "v5.4.189",
            "v5.4.188",
            "v5.4.187",
            "v5.4.186",
            "v5.4.185",
            "v5.4.184",
            "v5.4.183",
            "v5.4.182",
            "v5.4.181",
            "v5.4.180",
            "v5.4.179",
            "v5.4.178",
            "v5.4.177",
            "v5.4.176",
            "v5.4.175",
            "v5.4.174",
            "v5.4.173",
            "v5.4.172",
            "v5.4.171",
            "v5.4.170",
            "v5.4.169",
            "v5.4.168",
            "v5.4.167",
            "v5.4.166",
            "v5.4.165",
            "v5.4.164",
            "v5.4.163",
            "v5.4.162",
            "v5.4.161",
            "v5.4.160",
            "v5.4.159",
            "v5.4.158",
            "v5.4.157",
            "v5.4.156",
            "v5.4.155",
            "v5.4.154",
            "v5.4.153",
            "v5.4.152",
            "v5.4.151",
            "v5.4.150",
            "v5.4.149",
            "v5.4.148",
            "v5.4.147",
            "v5.4.146",
            "v5.4.145",
            "v5.4.144",
            "v5.4.143",
            "v5.4.142",
            "v5.4.141",
            "v5.4.140",
            "v5.4.139",
            "v5.4.138",
            "v5.4.137",
            "v5.4.136",
            "v5.4.135",
            "v5.4.134",
            "v5.4.133",
            "v5.4.132",
            "v5.4.131",
            "v5.4.130",
            "v5.4.129",
            "v5.4.128",
            "v5.4.127",
            "v5.4.126",
            "v5.4.125",
            "v5.4.124",
            "v5.4.123",
            "v5.4.122",
            "v5.4.121",
            "v5.4.120",
            "v5.4.119",
            "v5.4.118",
            "v5.4.117",
            "v5.4.116",
            "v5.4.115",
            "v5.4.114",
            "v5.4.113",
            "v5.4.112",
            "v5.4.111",
            "v5.4.110",
            "v5.4.109",
            "v5.4.108",
            "v5.4.107",
            "v5.4.106",
            "v5.4.105",
            "v5.4.104",
            "v5.4.103",
            "v5.4.102",
            "v5.4.101",
            "v5.4.100",
            "v5.4.99",
            "v5.4.98",
            "v5.4.97",
            "v5.4.96",
            "v5.4.95",
            "v5.4.94",
            "v5.4.93",
            "v5.4.92",
            "v5.4.91",
            "v5.4.90",
            "v5.4.89",
            "v5.4.88",
            "v5.4.87",
            "v5.4.86",
            "v5.4.85",
            "v5.4.84",
            "v5.4.83",
            "v5.4.82",
            "v5.4.81",
            "v5.4.80",
            "v5.4.79",
            "v5.4.78",
            "v5.4.77",
            "v5.4.76",
            "v5.4.75",
            "v5.4.74",
            "v5.4.73",
            "v5.4.72",
            "v5.4.71",
            "v5.4.70",
            "v5.4.69",
            "v5.4.68",
            "v5.4.67",
            "v5.4.66",
            "v5.4.65",
            "v5.4.64",
            "v5.4.63",
            "v5.4.62",
            "v5.4.61",
            "v5.4.60",
            "v5.4.59",
            "v5.4.58",
            "v5.4.57",
            "v5.4.56",
            "v5.4.55",
            "v5.4.54",
            "v5.4.53",
            "v5.4.52",
            "v5.4.51",
            "v5.4.50",
            "v5.4.49",
            "v5.4.48",
            "v5.4.47",
            "v5.4.46",
            "v5.4.45",
            "v5.4.44",
            "v5.4.43",
            "v5.4.42",
            "v5.4.41",
            "v5.4.40",
            "v5.4.39",
            "v5.4.38",
            "v5.4.37",
            "v5.4.36",
            "v5.4.35",
            "v5.4.34",
            "v5.4.33",
            "v5.4.32",
            "v5.4.31",
            "v5.4.30",
            "v5.4.29",
            "v5.4.28",
            "v5.4.27",
            "v5.4.26",
            "v5.4.25",
            "v5.4.24",
            "v5.4.23",
            "v5.4.22",
            "v5.4.21",
            "v5.4.20",
            "v5.4.19",
            "v5.4.18",
            "v5.4.17",
            "v5.4.16",
            "v5.4.15",
            "v5.4.14"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64046.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.5.0"
                },
                {
                  "fixed": "5.10.258"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.11.0"
                },
                {
                  "fixed": "5.15.209"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.16.0"
                },
                {
                  "fixed": "6.1.175"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.142"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.12.92"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.13.0"
                },
                {
                  "fixed": "6.18.34"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.19.0"
                },
                {
                  "fixed": "7.0.11"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64046.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:23.774021612Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/410351158dfef2d67fea6603680b3a6013c6ed9d",
        "https://git.kernel.org/stable/c/49a5faaa471ddcd37b6893970c9916eb836e7c31",
        "https://git.kernel.org/stable/c/91359966e247c0244c66d50bbb8e74aefa4321c3",
        "https://git.kernel.org/stable/c/929b1548e63ac72e104c07d8ee8cbbeeba2fa89a",
        "https://git.kernel.org/stable/c/acdc12b71c9aa4be5dcd2c8062753c6d2033e235",
        "https://git.kernel.org/stable/c/af855f4c966afafef74faf8390c7b86568c0d46d",
        "https://git.kernel.org/stable/c/b9c015ef1a7bf1e8dc67f21c6381f36deb2c3a36",
        "https://git.kernel.org/stable/c/ff26a0e8377dec07e4a7230db7675bed1b9a6d03",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64046.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-64046",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64046.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-64046",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 490283,
  "published_at": "2026-07-19T15:39:31.129+00:00"
}