GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2024-26582 (GCVE-0-2024-26582)

Vulnerability from cvelistv5 – Published: 2024-02-21 14:59 – Updated: 2026-08-05 11:26
VLAI
Title
net: tls: fix use-after-free with partial reads and async decrypt
Summary
In the Linux kernel, the following vulnerability has been resolved: net: tls: fix use-after-free with partial reads and async decrypt tls_decrypt_sg doesn't take a reference on the pages from clear_skb, so the put_page() in tls_decrypt_done releases them, and we trigger a use-after-free in process_rx_list when we try to read from the partially-read skb.
SSVC
Exploitation: none Automatable: no Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2024-08-08 19:39 UTC
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: fd31f3996af2627106e22a9f8072764fede51161 , < 20b4ed034872b4d024b26e2bc1092c3f80e5db96 (git)
Affected: fd31f3996af2627106e22a9f8072764fede51161 , < d684763534b969cca1022e2a28645c7cc91f7fa5 (git)
Affected: fd31f3996af2627106e22a9f8072764fede51161 , < 754c9bab77a1b895b97bd99d754403c505bc79df (git)
Affected: fd31f3996af2627106e22a9f8072764fede51161 , < 32b55c5ff9103b8508c1e04bfa5a08c64e7a925f (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.0
Unaffected: 0 , < 6.0 (semver)
Unaffected: 6.1.79 , ≤ 6.1.* (semver)
Unaffected: 6.6.18 , ≤ 6.6.* (semver)
Unaffected: 6.7.6 , ≤ 6.7.* (semver)
Unaffected: 6.8 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "providerMetadata": {
          "dateUpdated": "2025-11-04T18:29:45.171Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f"
          },
          {
            "url": "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/EZOU3745CWCDZ7EMKMXB2OEEIB5Q3IWM/"
          }
        ],
        "title": "CVE Program Container"
      },
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-26582",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-08-08T19:39:21.408800Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-08-08T19:39:35.386Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "net/tls/tls_sw.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "20b4ed034872b4d024b26e2bc1092c3f80e5db96",
              "status": "affected",
              "version": "fd31f3996af2627106e22a9f8072764fede51161",
              "versionType": "git"
            },
            {
              "lessThan": "d684763534b969cca1022e2a28645c7cc91f7fa5",
              "status": "affected",
              "version": "fd31f3996af2627106e22a9f8072764fede51161",
              "versionType": "git"
            },
            {
              "lessThan": "754c9bab77a1b895b97bd99d754403c505bc79df",
              "status": "affected",
              "version": "fd31f3996af2627106e22a9f8072764fede51161",
              "versionType": "git"
            },
            {
              "lessThan": "32b55c5ff9103b8508c1e04bfa5a08c64e7a925f",
              "status": "affected",
              "version": "fd31f3996af2627106e22a9f8072764fede51161",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "net/tls/tls_sw.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.0"
            },
            {
              "lessThan": "6.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.79",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.18",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.7.*",
              "status": "unaffected",
              "version": "6.7.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.8",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.79",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.18",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.7.6",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.8",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: tls: fix use-after-free with partial reads and async decrypt\n\ntls_decrypt_sg doesn\u0027t take a reference on the pages from clear_skb,\nso the put_page() in tls_decrypt_done releases them, and we trigger\na use-after-free in process_rx_list when we try to read from the\npartially-read skb."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 9.8,
            "baseSeverity": "CRITICAL",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:N - The bug is in the kTLS receive path (net/tls/tls_sw.c) processing data from a remote TLS peer over TCP; the triggering condition (a record larger than the receiver\u0027s buffer, forcing the non-zero-copy clear_skb path) is chosen by the remote peer. Per kernel scoring guidance, kTLS bugs triggered by remote peer data are Network.\nAC:L - There is no race to win \u2014 the async completion callback frees the pages before process_rx_list() reads them, deterministically. The required preconditions are the default on mainstream deployments (TLS 1.2 + generic-gcm-aesni, which the SIMD wrapper always registers with CRYPTO_ALG_ASYNC) and the remaining one, a partial read, is forced at will by the peer sending oversized records.\nPR:N - The attacker is the remote TLS peer, which holds no privileges or account on the target system \u2014 any client that completes an anonymous TLS handshake with a kTLS-offloading server (or any malicious server a kTLS client connects to) can drive the bug. No local credentials are involved anywhere on the path.\nUI:N - The only local behavior required is an application calling recvmsg() on its kTLS socket with a buffer smaller than the incoming record, which is ordinary, continuous operation of any TLS-consuming server or client. No victim performs any special action.\nS:U - The corruption is confined to kernel memory managed by the same security authority; there is no VM, IOMMU, or sandbox boundary crossed. This is a standard in-kernel memory-safety issue.\nC:H - process_rx_list() copies the contents of already-freed pages directly into the userspace receive buffer, and the partial-read nature leaves the stale skb on rx_list so the leak repeats on later recvmsg() calls with a wide reallocation window. Attacker-driven spraying can place other sockets\u0027 plaintext, page-cache data, or slab contents into those pages, yielding a repeatable kernel memory disclosure primitive.\nI:H - Beyond the read, skb_release_data() issues a second put_page() on pages that have since been reallocated, dropping a live page\u0027s refcount to zero and freeing memory owned by an unrelated allocation. This cross-owner page use-after-free is a well-established route to arbitrary write and control-flow hijack via reuse as slab or page-table memory.\nA:H - The page refcount underflow triggers bad_page()/VM_BUG_ON_PAGE and corrupts the buddy allocator, and reading or reusing freed pages oopses immediately under KASAN or page poisoning. A remote peer can trigger this repeatedly, reliably panicking the machine."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T11:26:01.134Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96"
        },
        {
          "url": "https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5"
        },
        {
          "url": "https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df"
        },
        {
          "url": "https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f"
        }
      ],
      "title": "net: tls: fix use-after-free with partial reads and async decrypt",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-26582",
    "datePublished": "2024-02-21T14:59:11.229Z",
    "dateReserved": "2024-02-19T14:20:24.125Z",
    "dateUpdated": "2026-08-05T11:26:01.134Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2024-26582",
      "date": "2026-09-16",
      "epss": "0.00715",
      "percentile": "0.5202"
    },
    "fkie_nvd": {
      "configurations": "[{\"nodes\": [{\"operator\": \"OR\", \"negate\": false, \"cpeMatch\": [{\"vulnerable\": true, \"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"versionStartIncluding\": \"6.0\", \"versionEndExcluding\": \"6.1.79\", \"matchCriteriaId\": \"82C70944-013B-4FC2-97B8-F2D6C1342B5E\"}, {\"vulnerable\": true, \"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"versionStartIncluding\": \"6.2.0\", \"versionEndExcluding\": \"6.6.18\", \"matchCriteriaId\": \"A5CC150E-F35C-4CF7-ADF5-422D32C511C2\"}, {\"vulnerable\": true, \"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"versionStartIncluding\": \"6.7.0\", \"versionEndExcluding\": \"6.7.6\", \"matchCriteriaId\": \"0C8D1FAD-4D5D-4A25-B058-2AD15082710E\"}]}]}]",
      "descriptions": "[{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnet: tls: fix use-after-free with partial reads and async decrypt\\n\\ntls_decrypt_sg doesn\u0027t take a reference on the pages from clear_skb,\\nso the put_page() in tls_decrypt_done releases them, and we trigger\\na use-after-free in process_rx_list when we try to read from the\\npartially-read skb.\"}, {\"lang\": \"es\", \"value\": \"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net: tls: corrige el use-after-free con lecturas parciales y descifrado as\\u00edncrono tls_decrypt_sg no toma una referencia en las p\\u00e1ginas de clear_skb, por lo que put_page() en tls_decrypt_done las libera y activamos un use-after-free en Process_rx_list cuando intentamos leer desde el skb parcialmente le\\u00eddo.\"}]",
      "id": "CVE-2024-26582",
      "lastModified": "2024-11-21T09:02:35.210",
      "metrics": "{\"cvssMetricV31\": [{\"source\": \"nvd@nist.gov\", \"type\": \"Primary\", \"cvssData\": {\"version\": \"3.1\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\", \"baseScore\": 7.8, \"baseSeverity\": \"HIGH\", \"attackVector\": \"LOCAL\", \"attackComplexity\": \"LOW\", \"privilegesRequired\": \"LOW\", \"userInteraction\": \"NONE\", \"scope\": \"UNCHANGED\", \"confidentialityImpact\": \"HIGH\", \"integrityImpact\": \"HIGH\", \"availabilityImpact\": \"HIGH\"}, \"exploitabilityScore\": 1.8, \"impactScore\": 5.9}]}",
      "published": "2024-02-21T15:15:09.327",
      "references": "[{\"url\": \"https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}]",
      "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "vulnStatus": "Modified",
      "weaknesses": "[{\"source\": \"nvd@nist.gov\", \"type\": \"Primary\", \"description\": [{\"lang\": \"en\", \"value\": \"CWE-416\"}]}]"
    },
    "microsoft_vex": {
      "current_release_date": "2026-02-18T01:08:38.000Z",
      "cve": "CVE-2024-26582",
      "id": "msrc_CVE-2024-26582",
      "initial_release_date": "2024-02-02T08:00:00.000Z",
      "product_status:fixed": "2",
      "product_status:known_affected": "2",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "net: tls: fix use-after-free with partial reads and async decrypt",
      "url": "https://msrc.microsoft.com/csaf/vex/2024/msrc_cve-2024-26582.json",
      "version": "2"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-26582\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-02-21T15:15:09.327\",\"lastModified\":\"2026-08-04T11:16:44.207\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnet: tls: fix use-after-free with partial reads and async decrypt\\n\\ntls_decrypt_sg doesn\u0027t take a reference on the pages from clear_skb,\\nso the put_page() in tls_decrypt_done releases them, and we trigger\\na use-after-free in process_rx_list when we try to read from the\\npartially-read skb.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net: tls: corrige el use-after-free con lecturas parciales y descifrado as\u00edncrono tls_decrypt_sg no toma una referencia en las p\u00e1ginas de clear_skb, por lo que put_page() en tls_decrypt_done las libera y activamos un use-after-free en Process_rx_list cuando intentamos leer desde el skb parcialmente le\u00eddo.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"net/tls/tls_sw.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"fd31f3996af2627106e22a9f8072764fede51161\",\"lessThan\":\"20b4ed034872b4d024b26e2bc1092c3f80e5db96\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fd31f3996af2627106e22a9f8072764fede51161\",\"lessThan\":\"d684763534b969cca1022e2a28645c7cc91f7fa5\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fd31f3996af2627106e22a9f8072764fede51161\",\"lessThan\":\"754c9bab77a1b895b97bd99d754403c505bc79df\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fd31f3996af2627106e22a9f8072764fede51161\",\"lessThan\":\"32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"net/tls/tls_sw.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.0\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.0\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.79\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.18\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.7.6\",\"lessThanOrEqual\":\"6.7.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.8\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":9.8,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":5.9},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":7.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}],\"ssvcV203\":[{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"ssvcData\":{\"timestamp\":\"2024-08-08T19:39:21.408800Z\",\"id\":\"CVE-2024-26582\",\"options\":[{\"exploitation\":\"none\"},{\"automatable\":\"no\"},{\"technicalImpact\":\"total\"}],\"role\":\"CISA Coordinator\",\"version\":\"2.0.3\"}}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-416\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.0\",\"versionEndExcluding\":\"6.1.79\",\"matchCriteriaId\":\"82C70944-013B-4FC2-97B8-F2D6C1342B5E\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.2.0\",\"versionEndExcluding\":\"6.6.18\",\"matchCriteriaId\":\"A5CC150E-F35C-4CF7-ADF5-422D32C511C2\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.7.0\",\"versionEndExcluding\":\"6.7.6\",\"matchCriteriaId\":\"0C8D1FAD-4D5D-4A25-B058-2AD15082710E\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/EZOU3745CWCDZ7EMKMXB2OEEIB5Q3IWM/\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-04T19:12:00+00:00",
      "cve": "CVE-2024-26582",
      "id": "CVE-2024-26582",
      "initial_release_date": "2024-02-21T00:00:00+00:00",
      "product_status:fixed": "513",
      "product_status:known_affected": "22",
      "product_status:known_not_affected": "91",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: tls: use-after-free with partial reads and async decrypt",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2024/cve-2024-26582.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "important",
      "current_release_date": "2026-08-29T01:59:00Z",
      "cve": "CVE-2024-26582",
      "id": "CVE-2024-26582",
      "initial_release_date": "2024-02-23T03:20:43Z",
      "product_status:known_not_affected": "495",
      "product_status:recommended": "233",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2024-26582",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2024-26582.json",
      "version": "57"
    },
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/EZOU3745CWCDZ7EMKMXB2OEEIB5Q3IWM/\"}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2025-11-04T18:29:45.171Z\"}}, {\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-26582\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-08-08T19:39:21.408800Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-08-08T19:39:26.888Z\"}}], \"cna\": {\"title\": \"net: tls: fix use-after-free with partial reads and async decrypt\", \"metrics\": [{\"cvssV3_1\": {\"version\": \"3.1\", \"baseScore\": 9.8, \"baseSeverity\": \"CRITICAL\", \"vectorString\": \"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\"}, \"scenarios\": [{\"lang\": \"en\", \"value\": \"AV:N - The bug is in the kTLS receive path (net/tls/tls_sw.c) processing data from a remote TLS peer over TCP; the triggering condition (a record larger than the receiver\u0027s buffer, forcing the non-zero-copy clear_skb path) is chosen by the remote peer. Per kernel scoring guidance, kTLS bugs triggered by remote peer data are Network.\\nAC:L - There is no race to win \\u2014 the async completion callback frees the pages before process_rx_list() reads them, deterministically. The required preconditions are the default on mainstream deployments (TLS 1.2 + generic-gcm-aesni, which the SIMD wrapper always registers with CRYPTO_ALG_ASYNC) and the remaining one, a partial read, is forced at will by the peer sending oversized records.\\nPR:N - The attacker is the remote TLS peer, which holds no privileges or account on the target system \\u2014 any client that completes an anonymous TLS handshake with a kTLS-offloading server (or any malicious server a kTLS client connects to) can drive the bug. No local credentials are involved anywhere on the path.\\nUI:N - The only local behavior required is an application calling recvmsg() on its kTLS socket with a buffer smaller than the incoming record, which is ordinary, continuous operation of any TLS-consuming server or client. No victim performs any special action.\\nS:U - The corruption is confined to kernel memory managed by the same security authority; there is no VM, IOMMU, or sandbox boundary crossed. This is a standard in-kernel memory-safety issue.\\nC:H - process_rx_list() copies the contents of already-freed pages directly into the userspace receive buffer, and the partial-read nature leaves the stale skb on rx_list so the leak repeats on later recvmsg() calls with a wide reallocation window. Attacker-driven spraying can place other sockets\u0027 plaintext, page-cache data, or slab contents into those pages, yielding a repeatable kernel memory disclosure primitive.\\nI:H - Beyond the read, skb_release_data() issues a second put_page() on pages that have since been reallocated, dropping a live page\u0027s refcount to zero and freeing memory owned by an unrelated allocation. This cross-owner page use-after-free is a well-established route to arbitrary write and control-flow hijack via reuse as slab or page-table memory.\\nA:H - The page refcount underflow triggers bad_page()/VM_BUG_ON_PAGE and corrupts the buddy allocator, and reading or reusing freed pages oopses immediately under KASAN or page poisoning. A remote peer can trigger this repeatedly, reliably panicking the machine.\"}]}], \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"fd31f3996af2627106e22a9f8072764fede51161\", \"lessThan\": \"20b4ed034872b4d024b26e2bc1092c3f80e5db96\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"fd31f3996af2627106e22a9f8072764fede51161\", \"lessThan\": \"d684763534b969cca1022e2a28645c7cc91f7fa5\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"fd31f3996af2627106e22a9f8072764fede51161\", \"lessThan\": \"754c9bab77a1b895b97bd99d754403c505bc79df\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"fd31f3996af2627106e22a9f8072764fede51161\", \"lessThan\": \"32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\", \"versionType\": \"git\"}], \"programFiles\": [\"net/tls/tls_sw.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"6.0\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"6.0\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"6.1.79\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.1.*\"}, {\"status\": \"unaffected\", \"version\": \"6.6.18\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.6.*\"}, {\"status\": \"unaffected\", \"version\": \"6.7.6\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.7.*\"}, {\"status\": \"unaffected\", \"version\": \"6.8\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"net/tls/tls_sw.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/20b4ed034872b4d024b26e2bc1092c3f80e5db96\"}, {\"url\": \"https://git.kernel.org/stable/c/d684763534b969cca1022e2a28645c7cc91f7fa5\"}, {\"url\": \"https://git.kernel.org/stable/c/754c9bab77a1b895b97bd99d754403c505bc79df\"}, {\"url\": \"https://git.kernel.org/stable/c/32b55c5ff9103b8508c1e04bfa5a08c64e7a925f\"}], \"x_generator\": {\"engine\": \"bippy-1.2.0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnet: tls: fix use-after-free with partial reads and async decrypt\\n\\ntls_decrypt_sg doesn\u0027t take a reference on the pages from clear_skb,\\nso the put_page() in tls_decrypt_done releases them, and we trigger\\na use-after-free in process_rx_list when we try to read from the\\npartially-read skb.\"}], \"cpeApplicability\": [{\"nodes\": [{\"negate\": false, \"cpeMatch\": [{\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.1.79\", \"versionStartIncluding\": \"6.0\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.6.18\", \"versionStartIncluding\": \"6.0\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.7.6\", \"versionStartIncluding\": \"6.0\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.8\", \"versionStartIncluding\": \"6.0\"}], \"operator\": \"OR\"}]}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2026-08-05T11:26:01.134Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2024-26582\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-08-05T11:26:01.134Z\", \"dateReserved\": \"2024-02-19T14:20:24.125Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-02-21T14:59:11.229Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…