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

CVE-2023-53817 (GCVE-0-2023-53817)

Vulnerability from cvelistv5 – Published: 2025-12-09 00:01 – Updated: 2026-08-05 09:16
VLAI
Title
crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()
Summary
In the Linux kernel, the following vulnerability has been resolved: crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui() During NVMeTCP Authentication a controller can trigger a kernel oops by specifying the 8192 bit Diffie Hellman group and passing a correctly sized, but zeroed Diffie Hellamn value. mpi_cmp_ui() was detecting this if the second parameter was 0, but 1 is passed from dh_is_pubkey_valid(). This causes the null pointer u->d to be dereferenced towards the end of mpi_cmp_ui()
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < fde791e8a96a64ea7b0ad2440e43586447a209c6 (git)
Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < ae63e84ffda74267bf7277c38415ba38389229a0 (git)
Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < 61f5453e9706e99713825594e0c8f9031485fb5f (git)
Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < 0fc7147c694394f8a8cbc19570c6bc918cac0906 (git)
Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < 67589d247909043e94d2dd5fb590958e0f99d58d (git)
Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < d3ad023a39f1127dcfd331c562673355dc078650 (git)
Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < 12ac013ad7ff0df066451e825801d805095b3776 (git)
Affected: 12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5 , < 9e47a758b70167c9301d2b44d2569f86c7796f2d (git)
guessed Create a notification for this product.
Linux Linux Affected: 3.7
Unaffected: 0 , < 3.7 (semver)
Unaffected: 4.14.326 , ≤ 4.14.* (semver)
Unaffected: 4.19.295 , ≤ 4.19.* (semver)
Unaffected: 5.4.257 , ≤ 5.4.* (semver)
Unaffected: 5.10.197 , ≤ 5.10.* (semver)
Unaffected: 5.15.133 , ≤ 5.15.* (semver)
Unaffected: 6.1.55 , ≤ 6.1.* (semver)
Unaffected: 6.5.5 , ≤ 6.5.* (semver)
Unaffected: 6.6 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "lib/crypto/mpi/mpi-cmp.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "fde791e8a96a64ea7b0ad2440e43586447a209c6",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            },
            {
              "lessThan": "ae63e84ffda74267bf7277c38415ba38389229a0",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            },
            {
              "lessThan": "61f5453e9706e99713825594e0c8f9031485fb5f",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            },
            {
              "lessThan": "0fc7147c694394f8a8cbc19570c6bc918cac0906",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            },
            {
              "lessThan": "67589d247909043e94d2dd5fb590958e0f99d58d",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            },
            {
              "lessThan": "d3ad023a39f1127dcfd331c562673355dc078650",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            },
            {
              "lessThan": "12ac013ad7ff0df066451e825801d805095b3776",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            },
            {
              "lessThan": "9e47a758b70167c9301d2b44d2569f86c7796f2d",
              "status": "affected",
              "version": "12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "lib/crypto/mpi/mpi-cmp.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "3.7"
            },
            {
              "lessThan": "3.7",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "4.14.*",
              "status": "unaffected",
              "version": "4.14.326",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "4.19.*",
              "status": "unaffected",
              "version": "4.19.295",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.4.*",
              "status": "unaffected",
              "version": "5.4.257",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.197",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.133",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.55",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.5.*",
              "status": "unaffected",
              "version": "6.5.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.6",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "4.14.326",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "4.19.295",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.4.257",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.197",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.133",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.55",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.5.5",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6",
                  "versionStartIncluding": "3.7",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncrypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()\n\nDuring NVMeTCP Authentication a controller can trigger a kernel\noops by specifying the 8192 bit Diffie Hellman group and passing\na correctly sized, but zeroed Diffie Hellamn value.\nmpi_cmp_ui() was detecting this if the second parameter was 0,\nbut 1 is passed from dh_is_pubkey_valid(). This causes the null\npointer u-\u003ed to be dereferenced towards the end of mpi_cmp_ui()"
        }
      ],
      "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 vulnerable code is reached from NVMe-over-Fabrics (NVMe/TCP) DH-HMAC-CHAP authentication data received from a remote peer \u2014 either a malicious/MITM controller sending a Challenge to a host, or a remote initiator sending a Reply to an nvmet-tcp target on TCP/4420. The attacker-controlled bytes travel over the network with no locality requirement.\nAC:L - Triggering is fully deterministic: the attacker simply advertises a non-NULL DH group (e.g. ffdhe8192) and supplies a correctly sized but all-zero DH value, which makes mpi_read_raw_from_sgl() produce an MPI with nlimbs==0 and d==NULL. No race, no memory-layout dependency, and NVMe/TCP in-band authentication is a normal shipped configuration.\nPR:N - On the target side nvmet_auth_reply() computes the DH shared secret from the peer\u0027s DH value before the DH-HMAC-CHAP response HMAC is verified, so this is a pre-authentication code path; on the host side an impersonating/MITM controller needs no credentials to send the Challenge.\nUI:N - An nvmet-tcp target listens passively and the attacker drives the whole DH-HMAC-CHAP exchange; no local user action is required to trigger the oops.\nS:U - The NULL dereference crashes the kernel that is processing the authentication message; the impact stays within that kernel\u0027s own security authority with no boundary crossing.\nC:N - The fault is a read of address 0 (u-\u003ed[0]) that immediately oopses; no attacker-influenced memory is read back or returned to the peer, so no information is disclosed.\nI:N - The bug is a NULL pointer read, not a write or type confusion; nothing is corrupted and there is no primitive for modifying kernel memory or hijacking control flow.\nA:H - Dereferencing the NULL u-\u003ed produces a kernel oops in the NVMe auth work handler, killing the connection/worker and panicking the box under panic_on_oops, and it can be re-triggered on every new authentication attempt."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T09:16:11.527Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/fde791e8a96a64ea7b0ad2440e43586447a209c6"
        },
        {
          "url": "https://git.kernel.org/stable/c/ae63e84ffda74267bf7277c38415ba38389229a0"
        },
        {
          "url": "https://git.kernel.org/stable/c/61f5453e9706e99713825594e0c8f9031485fb5f"
        },
        {
          "url": "https://git.kernel.org/stable/c/0fc7147c694394f8a8cbc19570c6bc918cac0906"
        },
        {
          "url": "https://git.kernel.org/stable/c/67589d247909043e94d2dd5fb590958e0f99d58d"
        },
        {
          "url": "https://git.kernel.org/stable/c/d3ad023a39f1127dcfd331c562673355dc078650"
        },
        {
          "url": "https://git.kernel.org/stable/c/12ac013ad7ff0df066451e825801d805095b3776"
        },
        {
          "url": "https://git.kernel.org/stable/c/9e47a758b70167c9301d2b44d2569f86c7796f2d"
        }
      ],
      "title": "crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2023-53817",
    "datePublished": "2025-12-09T00:01:15.411Z",
    "dateReserved": "2025-12-08T23:58:35.277Z",
    "dateUpdated": "2026-08-05T09:16:11.527Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2023-53817",
      "date": "2026-09-16",
      "epss": "0.00508",
      "percentile": "0.42159"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2023-53817\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-12-09T01:16:53.960\",\"lastModified\":\"2026-08-04T10:19:22.557\",\"vulnStatus\":\"Deferred\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ncrypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()\\n\\nDuring NVMeTCP Authentication a controller can trigger a kernel\\noops by specifying the 8192 bit Diffie Hellman group and passing\\na correctly sized, but zeroed Diffie Hellamn value.\\nmpi_cmp_ui() was detecting this if the second parameter was 0,\\nbut 1 is passed from dh_is_pubkey_valid(). This causes the null\\npointer u-\u003ed to be dereferenced towards the end of mpi_cmp_ui()\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"lib/crypto/mpi/mpi-cmp.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"fde791e8a96a64ea7b0ad2440e43586447a209c6\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"ae63e84ffda74267bf7277c38415ba38389229a0\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"61f5453e9706e99713825594e0c8f9031485fb5f\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"0fc7147c694394f8a8cbc19570c6bc918cac0906\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"67589d247909043e94d2dd5fb590958e0f99d58d\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"d3ad023a39f1127dcfd331c562673355dc078650\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"12ac013ad7ff0df066451e825801d805095b3776\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"12f008b6dc5ff1c822fdb2198d20e3dbdc92f3f5\",\"lessThan\":\"9e47a758b70167c9301d2b44d2569f86c7796f2d\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"lib/crypto/mpi/mpi-cmp.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"3.7\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"3.7\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"4.14.326\",\"lessThanOrEqual\":\"4.14.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"4.19.295\",\"lessThanOrEqual\":\"4.19.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.4.257\",\"lessThanOrEqual\":\"5.4.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.10.197\",\"lessThanOrEqual\":\"5.10.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.133\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.55\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.5.5\",\"lessThanOrEqual\":\"6.5.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6\",\"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:N/I:N/A:H\",\"baseScore\":7.5,\"baseSeverity\":\"HIGH\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":3.6}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0fc7147c694394f8a8cbc19570c6bc918cac0906\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/12ac013ad7ff0df066451e825801d805095b3776\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/61f5453e9706e99713825594e0c8f9031485fb5f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/67589d247909043e94d2dd5fb590958e0f99d58d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9e47a758b70167c9301d2b44d2569f86c7796f2d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ae63e84ffda74267bf7277c38415ba38389229a0\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/d3ad023a39f1127dcfd331c562673355dc078650\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/fde791e8a96a64ea7b0ad2440e43586447a209c6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-30T10:15:16+00:00",
      "cve": "CVE-2023-53817",
      "id": "CVE-2023-53817",
      "initial_release_date": "2023-01-01T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2023/cve-2023-53817.json",
      "version": "3"
    }
  }
}



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…