{
   "containers": {
      "cna": {
         "providerMetadata": {
            "orgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038"
         },
         "descriptions": [
            {
               "lang": "en",
               "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length\n\nIf the host sends an H2CData command with an invalid DATAL,\nthe kernel may crash in nvmet_tcp_build_pdu_iovec().\n\nUnable to handle kernel NULL pointer dereference at\nvirtual address 0000000000000000\nlr : nvmet_tcp_io_work+0x6ac/0x718 [nvmet_tcp]\nCall trace:\n  process_one_work+0x174/0x3c8\n  worker_thread+0x2d0/0x3e8\n  kthread+0x104/0x110\n\nFix the bug by raising a fatal error if DATAL isn't coherent\nwith the packet size.\nAlso, the PDU length should never exceed the MAXH2CDATA parameter which\nhas been communicated to the host in nvmet_tcp_handle_icreq()."
            }
         ],
         "affected": [
            {
               "product": "Linux",
               "vendor": "Linux",
               "defaultStatus": "unaffected",
               "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               "programFiles": [
                  "drivers/nvme/target/tcp.c"
               ],
               "versions": [
                  {
                     "version": "872d26a391da",
                     "lessThan": "ee5e7632e981",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "872d26a391da",
                     "lessThan": "f775f2621c2a",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "872d26a391da",
                     "lessThan": "4cb3cf7177ae",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "872d26a391da",
                     "lessThan": "2871aa407007",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "872d26a391da",
                     "lessThan": "24e05760186d",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "872d26a391da",
                     "lessThan": "70154e8d015c",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "872d26a391da",
                     "lessThan": "efa56305908b",
                     "status": "affected",
                     "versionType": "git"
                  }
               ]
            },
            {
               "product": "Linux",
               "vendor": "Linux",
               "defaultStatus": "affected",
               "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               "programFiles": [
                  "drivers/nvme/target/tcp.c"
               ],
               "versions": [
                  {
                     "version": "5.0",
                     "status": "affected"
                  },
                  {
                     "version": "0",
                     "lessThan": "5.0",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "5.4.268",
                     "lessThanOrEqual": "5.4.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "5.10.209",
                     "lessThanOrEqual": "5.10.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "5.15.148",
                     "lessThanOrEqual": "5.15.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.1.75",
                     "lessThanOrEqual": "6.1.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.6.14",
                     "lessThanOrEqual": "6.6.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.7.2",
                     "lessThanOrEqual": "6.7.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.8",
                     "lessThanOrEqual": "*",
                     "status": "unaffected",
                     "versionType": "original_commit_for_fix"
                  }
               ]
            }
         ],
         "references": [
            {
               "url": "https://git.kernel.org/stable/c/ee5e7632e981673f42a50ade25e71e612e543d9d"
            },
            {
               "url": "https://git.kernel.org/stable/c/f775f2621c2ac5cc3a0b3a64665dad4fb146e510"
            },
            {
               "url": "https://git.kernel.org/stable/c/4cb3cf7177ae3666be7fb27d4ad4d72a295fb02d"
            },
            {
               "url": "https://git.kernel.org/stable/c/2871aa407007f6f531fae181ad252486e022df42"
            },
            {
               "url": "https://git.kernel.org/stable/c/24e05760186dc070d3db190ca61efdbce23afc88"
            },
            {
               "url": "https://git.kernel.org/stable/c/70154e8d015c9b4fb56c1a2ef1fc8b83d45c7f68"
            },
            {
               "url": "https://git.kernel.org/stable/c/efa56305908ba20de2104f1b8508c6a7401833be"
            }
         ],
         "title": "nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length",
         "x_generator": {
            "engine": "bippy-a5840b7849dd"
         }
      }
   },
   "cveMetadata": {
      "assignerOrgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038",
      "cveID": "CVE-2023-52454",
      "requesterUserId": "gregkh@kernel.org",
      "serial": "1",
      "state": "PUBLISHED"
   },
   "dataType": "CVE_RECORD",
   "dataVersion": "5.0"
}
