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

CVE-2022-50717 (GCVE-0-2022-50717)

Vulnerability from cvelistv5 – Published: 2025-12-24 12:22 – Updated: 2026-08-05 08:59
VLAI
Title
nvmet-tcp: add bounds check on Transfer Tag
Summary
In the Linux kernel, the following vulnerability has been resolved: nvmet-tcp: add bounds check on Transfer Tag ttag is used as an index to get cmd in nvmet_tcp_handle_h2c_data_pdu(), add a bounds check to avoid out-of-bounds access.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 872d26a391da92ed8f0c0f5cb5fef428067b7f30 , < 0d150ccd55dbfad36f55855b40b381884c98456e (git)
Affected: 872d26a391da92ed8f0c0f5cb5fef428067b7f30 , < d5bb45f47b37d10f010355686b28c9ebacb361d4 (git)
Affected: 872d26a391da92ed8f0c0f5cb5fef428067b7f30 , < ec8adf767e1cfa7031f853b8c71ba1963f07df15 (git)
Affected: 872d26a391da92ed8f0c0f5cb5fef428067b7f30 , < fcf82e4553db911d10234ff2390cfd0e2aa854e4 (git)
Affected: 872d26a391da92ed8f0c0f5cb5fef428067b7f30 , < 752593d04637ebdc87fd29cba81897f21ae053f0 (git)
Affected: 872d26a391da92ed8f0c0f5cb5fef428067b7f30 , < b6a545ffa2c192b1e6da4a7924edac5ba9f4ea2b (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.0
Unaffected: 0 , < 5.0 (semver)
Unaffected: 5.4.220 , ≤ 5.4.* (semver)
Unaffected: 5.10.150 , ≤ 5.10.* (semver)
Unaffected: 5.15.75 , ≤ 5.15.* (semver)
Unaffected: 5.19.17 , ≤ 5.19.* (semver)
Unaffected: 6.0.3 , ≤ 6.0.* (semver)
Unaffected: 6.1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/nvme/target/tcp.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "0d150ccd55dbfad36f55855b40b381884c98456e",
              "status": "affected",
              "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
              "versionType": "git"
            },
            {
              "lessThan": "d5bb45f47b37d10f010355686b28c9ebacb361d4",
              "status": "affected",
              "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
              "versionType": "git"
            },
            {
              "lessThan": "ec8adf767e1cfa7031f853b8c71ba1963f07df15",
              "status": "affected",
              "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
              "versionType": "git"
            },
            {
              "lessThan": "fcf82e4553db911d10234ff2390cfd0e2aa854e4",
              "status": "affected",
              "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
              "versionType": "git"
            },
            {
              "lessThan": "752593d04637ebdc87fd29cba81897f21ae053f0",
              "status": "affected",
              "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
              "versionType": "git"
            },
            {
              "lessThan": "b6a545ffa2c192b1e6da4a7924edac5ba9f4ea2b",
              "status": "affected",
              "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/nvme/target/tcp.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.0"
            },
            {
              "lessThan": "5.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.4.*",
              "status": "unaffected",
              "version": "5.4.220",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.150",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.75",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.19.*",
              "status": "unaffected",
              "version": "5.19.17",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.0.*",
              "status": "unaffected",
              "version": "6.0.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.4.220",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.150",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.75",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.19.17",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.0.3",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnvmet-tcp: add bounds check on Transfer Tag\n\nttag is used as an index to get cmd in nvmet_tcp_handle_h2c_data_pdu(),\nadd a bounds check to avoid out-of-bounds access."
        }
      ],
      "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 - nvmet-tcp is an in-kernel NVMe-over-TCP target that listens on a TCP port and processes remote NVMe-TCP PDUs; a remote peer can send a crafted H2C Data PDU to reach nvmet_tcp_handle_h2c_data_pdu().\nAC:L - The attacker fully controls data-\u003ettag in the H2C Data PDU and can reliably index past queue-\u003ecmds after Connect installs the command array; no race or conditions outside attacker control are required.\nPR:N - After ICReq, Connect to the discovery subsystem (always allows any hostnqn) or any allow_any_host target installs the queue and allocates cmds with no authentication; H2C Data handling then indexes by ttag without further auth checks.\nUI:N - Exploitation requires only sending network PDUs to the listening NVMe-TCP port; no victim user action is needed.\nS:U - Impact is confined to the kernel hosting the nvmet-tcp target; this is not a VM/IOMMU/sandbox boundary escape.\nC:H - Out-of-bounds access to struct nvmet_tcp_cmd reads adjacent slab memory (pointers, SGLs, offsets) and can be leveraged as an information-disclosure primitive, consistent with treating memory-corruption OOB as C:H.\nI:H - The OOB cmd is used to build a receive iovec (nvmet_tcp_build_pdu_iovec) and/or passed to nvmet_req_complete, enabling attacker-controlled writes into kernel memory determined by corrupted structure fields.\nA:H - Dereferencing or completing an out-of-bounds cmd structure reliably causes kernel oops/GPF/panic, so a remote attacker can crash the target."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T08:59:27.894Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/0d150ccd55dbfad36f55855b40b381884c98456e"
        },
        {
          "url": "https://git.kernel.org/stable/c/d5bb45f47b37d10f010355686b28c9ebacb361d4"
        },
        {
          "url": "https://git.kernel.org/stable/c/ec8adf767e1cfa7031f853b8c71ba1963f07df15"
        },
        {
          "url": "https://git.kernel.org/stable/c/fcf82e4553db911d10234ff2390cfd0e2aa854e4"
        },
        {
          "url": "https://git.kernel.org/stable/c/752593d04637ebdc87fd29cba81897f21ae053f0"
        },
        {
          "url": "https://git.kernel.org/stable/c/b6a545ffa2c192b1e6da4a7924edac5ba9f4ea2b"
        }
      ],
      "title": "nvmet-tcp: add bounds check on Transfer Tag",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2022-50717",
    "datePublished": "2025-12-24T12:22:41.269Z",
    "dateReserved": "2025-12-24T12:20:40.329Z",
    "dateUpdated": "2026-08-05T08:59:27.894Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2022-50717",
      "date": "2026-09-19",
      "epss": "0.0081",
      "percentile": "0.55378"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/nvme/target/tcp.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "0d150ccd55dbfad36f55855b40b381884c98456e",
                    "status": "affected",
                    "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "d5bb45f47b37d10f010355686b28c9ebacb361d4",
                    "status": "affected",
                    "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "ec8adf767e1cfa7031f853b8c71ba1963f07df15",
                    "status": "affected",
                    "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "fcf82e4553db911d10234ff2390cfd0e2aa854e4",
                    "status": "affected",
                    "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "752593d04637ebdc87fd29cba81897f21ae053f0",
                    "status": "affected",
                    "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "b6a545ffa2c192b1e6da4a7924edac5ba9f4ea2b",
                    "status": "affected",
                    "version": "872d26a391da92ed8f0c0f5cb5fef428067b7f30",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/nvme/target/tcp.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "5.0"
                  },
                  {
                    "lessThan": "5.0",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.4.*",
                    "status": "unaffected",
                    "version": "5.4.220",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.10.*",
                    "status": "unaffected",
                    "version": "5.10.150",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.15.*",
                    "status": "unaffected",
                    "version": "5.15.75",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.19.*",
                    "status": "unaffected",
                    "version": "5.19.17",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.0.*",
                    "status": "unaffected",
                    "version": "6.0.3",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnvmet-tcp: add bounds check on Transfer Tag\n\nttag is used as an index to get cmd in nvmet_tcp_handle_h2c_data_pdu(),\nadd a bounds check to avoid out-of-bounds access."
          }
        ],
        "id": "CVE-2022-50717",
        "lastModified": "2026-08-04T10:18:21.930",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "NETWORK",
                "availabilityImpact": "HIGH",
                "baseScore": 9.8,
                "baseSeverity": "CRITICAL",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "NONE",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 3.9,
              "impactScore": 5.9,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2025-12-24T13:15:58.360",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/0d150ccd55dbfad36f55855b40b381884c98456e"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/752593d04637ebdc87fd29cba81897f21ae053f0"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/b6a545ffa2c192b1e6da4a7924edac5ba9f4ea2b"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/d5bb45f47b37d10f010355686b28c9ebacb361d4"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/ec8adf767e1cfa7031f853b8c71ba1963f07df15"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/fcf82e4553db911d10234ff2390cfd0e2aa854e4"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Deferred"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-04T19:37:26+00:00",
      "cve": "CVE-2022-50717",
      "id": "CVE-2022-50717",
      "initial_release_date": "2022-01-01T00:00:00+00:00",
      "product_status:fixed": "561",
      "product_status:known_affected": "38",
      "product_status:known_not_affected": "118",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: nvmet-tcp: add bounds check on Transfer Tag",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2022/cve-2022-50717.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "important",
      "current_release_date": "2026-09-05T17:05:39Z",
      "cve": "CVE-2022-50717",
      "id": "CVE-2022-50717",
      "initial_release_date": "2025-12-25T01:05:04Z",
      "product_status:known_affected": "420",
      "product_status:known_not_affected": "301",
      "product_status:recommended": "282",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2022-50717",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2022-50717.json",
      "version": "34"
    }
  }
}



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…