CVE-2023-54085 (GCVE-0-2023-54085)
Vulnerability from cvelistv5
Published
2025-12-24 13:06
Modified
2026-10-15 21:41
Summary
In the Linux kernel, the following vulnerability has been resolved: mptcp: fix NULL pointer dereference on fastopen early fallback In case of early fallback to TCP, subflow_syn_recv_sock() deletes the subflow context before returning the newly allocated sock to the caller. The fastopen path does not cope with the above unconditionally dereferencing the subflow context.
Impacted products
Vendor Product Version
Linux Linux Version: 36b122baf6a8bd46b4a591f12f4ed17b22257408
Version: 36b122baf6a8bd46b4a591f12f4ed17b22257408
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2023-54085",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "yes"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-10-15T21:38:15.912200Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-10-15T21:41:39.088Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "net/mptcp/fastopen.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "95135835519b0ab931c39908b2c99e9fb3c9068b",
              "status": "affected",
              "version": "36b122baf6a8bd46b4a591f12f4ed17b22257408",
              "versionType": "git"
            },
            {
              "lessThan": "c0ff6f6da66a7791a32c0234388b1bdc00244917",
              "status": "affected",
              "version": "36b122baf6a8bd46b4a591f12f4ed17b22257408",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "net/mptcp/fastopen.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.2"
            },
            {
              "lessThan": "6.2",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.2.*",
              "status": "unaffected",
              "version": "6.2.12",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.3",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.2.12",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.3",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmptcp: fix NULL pointer dereference on fastopen early fallback\n\nIn case of early fallback to TCP, subflow_syn_recv_sock() deletes\nthe subflow context before returning the newly allocated sock to\nthe caller.\n\nThe fastopen path does not cope with the above unconditionally\ndereferencing the subflow context."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.5,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:N - The crash is triggered entirely by a received TCP SYN packet with fastopen data arriving at an MPTCP listening socket, processed in the TCP input path (`tcp_conn_request`). Any routable remote peer can reach it.\nAC:L - The attacker fully controls the trigger \u2014 a TFO SYN with data and no MPTCP options deterministically causes `subflow_ulp_clone()` to drop the context and `subflow_prep_synack()` to pass NULL; there is no race, no memory-layout dependency, and the TFO cookie is freely obtainable from a prior normal connection.\nPR:N - No credentials or prior authentication are required; the fault occurs during connection establishment, before any application-level handshake, on a socket that has not yet been accepted.\nUI:N - Exploitation requires only that the attacker send packets to the listening port; no action by any local user or administrator is needed at attack time.\nS:U - The NULL dereference occurs in the kernel\u0027s own network stack and affects only the kernel\u0027s security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:N - The faulting access is a load of `subflow-\u003etcp_sock` at a fixed small offset from NULL, which aborts immediately; no attacker-controlled data is read back or disclosed.\nI:N - Execution aborts on the first NULL load before `subflow-\u003eis_mptfo = 1` or any queue manipulation, so no kernel memory is modified and no control-flow primitive is obtained.\nA:H - The dereference at NULL+~208 bytes is always unmapped and occurs in NET_RX softirq context, so `oops_end()` takes the `in_interrupt()` path and issues `panic(\"Fatal exception in interrupt\")` \u2014 a guaranteed, remotely repeatable full system crash."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T09:17:06.087Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/95135835519b0ab931c39908b2c99e9fb3c9068b"
        },
        {
          "url": "https://git.kernel.org/stable/c/c0ff6f6da66a7791a32c0234388b1bdc00244917"
        }
      ],
      "title": "mptcp: fix NULL pointer dereference on fastopen early fallback",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2023-54085",
    "datePublished": "2025-12-24T13:06:16.161Z",
    "dateReserved": "2025-12-24T13:02:52.515Z",
    "dateUpdated": "2026-10-15T21:41:39.088Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2023-54085\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"yes\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-10-15T21:38:15.912200Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-10-15T21:38:16.395Z\"}}], \"cna\": {\"title\": \"mptcp: fix NULL pointer dereference on fastopen early fallback\", \"metrics\": [{\"cvssV3_1\": {\"version\": \"3.1\", \"baseScore\": 7.5, \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H\"}, \"scenarios\": [{\"lang\": \"en\", \"value\": \"AV:N - The crash is triggered entirely by a received TCP SYN packet with fastopen data arriving at an MPTCP listening socket, processed in the TCP input path (`tcp_conn_request`). Any routable remote peer can reach it.\\nAC:L - The attacker fully controls the trigger \\u2014 a TFO SYN with data and no MPTCP options deterministically causes `subflow_ulp_clone()` to drop the context and `subflow_prep_synack()` to pass NULL; there is no race, no memory-layout dependency, and the TFO cookie is freely obtainable from a prior normal connection.\\nPR:N - No credentials or prior authentication are required; the fault occurs during connection establishment, before any application-level handshake, on a socket that has not yet been accepted.\\nUI:N - Exploitation requires only that the attacker send packets to the listening port; no action by any local user or administrator is needed at attack time.\\nS:U - The NULL dereference occurs in the kernel\u0027s own network stack and affects only the kernel\u0027s security authority; no VM, IOMMU, or sandbox boundary is crossed.\\nC:N - The faulting access is a load of `subflow-\u003etcp_sock` at a fixed small offset from NULL, which aborts immediately; no attacker-controlled data is read back or disclosed.\\nI:N - Execution aborts on the first NULL load before `subflow-\u003eis_mptfo = 1` or any queue manipulation, so no kernel memory is modified and no control-flow primitive is obtained.\\nA:H - The dereference at NULL+~208 bytes is always unmapped and occurs in NET_RX softirq context, so `oops_end()` takes the `in_interrupt()` path and issues `panic(\\\"Fatal exception in interrupt\\\")` \\u2014 a guaranteed, remotely repeatable full system crash.\"}]}], \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"36b122baf6a8bd46b4a591f12f4ed17b22257408\", \"lessThan\": \"95135835519b0ab931c39908b2c99e9fb3c9068b\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"36b122baf6a8bd46b4a591f12f4ed17b22257408\", \"lessThan\": \"c0ff6f6da66a7791a32c0234388b1bdc00244917\", \"versionType\": \"git\"}], \"programFiles\": [\"net/mptcp/fastopen.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.2\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"6.2\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"6.2.12\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.2.*\"}, {\"status\": \"unaffected\", \"version\": \"6.3\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"net/mptcp/fastopen.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/95135835519b0ab931c39908b2c99e9fb3c9068b\"}, {\"url\": \"https://git.kernel.org/stable/c/c0ff6f6da66a7791a32c0234388b1bdc00244917\"}], \"x_generator\": {\"engine\": \"bippy-1.2.0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nmptcp: fix NULL pointer dereference on fastopen early fallback\\n\\nIn case of early fallback to TCP, subflow_syn_recv_sock() deletes\\nthe subflow context before returning the newly allocated sock to\\nthe caller.\\n\\nThe fastopen path does not cope with the above unconditionally\\ndereferencing the subflow context.\"}], \"cpeApplicability\": [{\"nodes\": [{\"negate\": false, \"cpeMatch\": [{\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.2.12\", \"versionStartIncluding\": \"6.2\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.3\", \"versionStartIncluding\": \"6.2\"}], \"operator\": \"OR\"}]}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2026-08-05T09:17:06.087Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2023-54085\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-10-15T21:41:39.088Z\", \"dateReserved\": \"2025-12-24T13:02:52.515Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2025-12-24T13:06:16.161Z\", \"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…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…