CVE-2024-41082 (GCVE-0-2024-41082)

Vulnerability from cvelistv5 – Published: 2024-07-29 15:04 – Updated: 2026-05-11 20:25
VLAI?
Title
nvme-fabrics: use reserved tag for reg read/write command
Summary
In the Linux kernel, the following vulnerability has been resolved: nvme-fabrics: use reserved tag for reg read/write command In some scenarios, if too many commands are issued by nvme command in the same time by user tasks, this may exhaust all tags of admin_q. If a reset (nvme reset or IO timeout) occurs before these commands finish, reconnect routine may fail to update nvme regs due to insufficient tags, which will cause kernel hang forever. In order to workaround this issue, maybe we can let reg_read32()/reg_read64()/reg_write32() use reserved tags. This maybe safe for nvmf: 1. For the disable ctrl path, we will not issue connect command 2. For the enable ctrl / fw activate path, since connect and reg_xx() are called serially. So the reserved tags may still be enough while reg_xx() use reserved tags.
Severity ?
No CVSS data available.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: e7832cb48a654cd12b2bc9181b2f0ad49d526ac6 , < 165da9c67a26f08c9b956c15d701da7690f45bcb (git)
Affected: e7832cb48a654cd12b2bc9181b2f0ad49d526ac6 , < 7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa (git)
Create a notification for this product.
Linux Linux Affected: 5.4
Unaffected: 0 , < 5.4 (semver)
Unaffected: 6.9.11 , ≤ 6.9.* (semver)
Unaffected: 6.10 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-02T04:46:52.643Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa"
          }
        ],
        "title": "CVE Program Container"
      },
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-41082",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-09-10T16:21:02.205379Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-09-11T17:33:09.536Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/nvme/host/fabrics.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "165da9c67a26f08c9b956c15d701da7690f45bcb",
              "status": "affected",
              "version": "e7832cb48a654cd12b2bc9181b2f0ad49d526ac6",
              "versionType": "git"
            },
            {
              "lessThan": "7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa",
              "status": "affected",
              "version": "e7832cb48a654cd12b2bc9181b2f0ad49d526ac6",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/nvme/host/fabrics.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.4"
            },
            {
              "lessThan": "5.4",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.9.*",
              "status": "unaffected",
              "version": "6.9.11",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.10",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.9.11",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.10",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnvme-fabrics: use reserved tag for reg read/write command\n\nIn some scenarios, if too many commands are issued by nvme command in\nthe same time by user tasks, this may exhaust all tags of admin_q. If\na reset (nvme reset or IO timeout) occurs before these commands finish,\nreconnect routine may fail to update nvme regs due to insufficient tags,\nwhich will cause kernel hang forever. In order to workaround this issue,\nmaybe we can let reg_read32()/reg_read64()/reg_write32() use reserved\ntags. This maybe safe for nvmf:\n\n1. For the disable ctrl path,  we will not issue connect command\n2. For the enable ctrl / fw activate path, since connect and reg_xx()\n   are called serially.\n\nSo the reserved tags may still be enough while reg_xx() use reserved tags."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-11T20:25:50.700Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb"
        },
        {
          "url": "https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa"
        }
      ],
      "title": "nvme-fabrics: use reserved tag for reg read/write command",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-41082",
    "datePublished": "2024-07-29T15:04:19.372Z",
    "dateReserved": "2024-07-12T12:17:45.633Z",
    "dateUpdated": "2026-05-11T20:25:50.700Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2024-41082",
      "date": "2026-05-22",
      "epss": "0.00013",
      "percentile": "0.02291"
    },
    "fkie_nvd": {
      "descriptions": "[{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnvme-fabrics: use reserved tag for reg read/write command\\n\\nIn some scenarios, if too many commands are issued by nvme command in\\nthe same time by user tasks, this may exhaust all tags of admin_q. If\\na reset (nvme reset or IO timeout) occurs before these commands finish,\\nreconnect routine may fail to update nvme regs due to insufficient tags,\\nwhich will cause kernel hang forever. In order to workaround this issue,\\nmaybe we can let reg_read32()/reg_read64()/reg_write32() use reserved\\ntags. This maybe safe for nvmf:\\n\\n1. For the disable ctrl path,  we will not issue connect command\\n2. For the enable ctrl / fw activate path, since connect and reg_xx()\\n   are called serially.\\n\\nSo the reserved tags may still be enough while reg_xx() use reserved tags.\"}, {\"lang\": \"es\", \"value\": \"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: nvme-fabrics: use etiqueta reservada para el comando de lectura/escritura de registro. En algunos escenarios, si el comando nvme emite demasiados comandos al mismo tiempo por las tareas del usuario, esto puede agotar todos etiquetas de admin_q. Si se produce un reinicio (reinicio de nvme o tiempo de espera de IO) antes de que finalicen estos comandos, es posible que la rutina de reconexi\\u00f3n no actualice los registros de nvme debido a etiquetas insuficientes, lo que provocar\\u00e1 que el kernel se cuelgue para siempre. Para solucionar este problema, tal vez podamos permitir que reg_read32()/reg_read64()/reg_write32() use etiquetas reservadas. Esto puede ser seguro para nvmf: 1. Para la ruta de activaci\\u00f3n ctrl/deshabilitar, no emitiremos el comando connect. 2. Para la ruta de activaci\\u00f3n ctrl/fw enable, ya que connect y reg_xx() se llaman en serie. Por lo tanto, las etiquetas reservadas pueden ser suficientes mientras reg_xx() usa etiquetas reservadas.\"}]",
      "id": "CVE-2024-41082",
      "lastModified": "2024-11-21T09:32:12.480",
      "published": "2024-07-29T15:15:15.670",
      "references": "[{\"url\": \"https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}, {\"url\": \"https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}]",
      "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "vulnStatus": "Awaiting Analysis"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-41082\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-07-29T15:15:15.670\",\"lastModified\":\"2025-10-09T18:01:11.217\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnvme-fabrics: use reserved tag for reg read/write command\\n\\nIn some scenarios, if too many commands are issued by nvme command in\\nthe same time by user tasks, this may exhaust all tags of admin_q. If\\na reset (nvme reset or IO timeout) occurs before these commands finish,\\nreconnect routine may fail to update nvme regs due to insufficient tags,\\nwhich will cause kernel hang forever. In order to workaround this issue,\\nmaybe we can let reg_read32()/reg_read64()/reg_write32() use reserved\\ntags. This maybe safe for nvmf:\\n\\n1. For the disable ctrl path,  we will not issue connect command\\n2. For the enable ctrl / fw activate path, since connect and reg_xx()\\n   are called serially.\\n\\nSo the reserved tags may still be enough while reg_xx() use reserved tags.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: nvme-fabrics: use etiqueta reservada para el comando de lectura/escritura de registro. En algunos escenarios, si el comando nvme emite demasiados comandos al mismo tiempo por las tareas del usuario, esto puede agotar todos etiquetas de admin_q. Si se produce un reinicio (reinicio de nvme o tiempo de espera de IO) antes de que finalicen estos comandos, es posible que la rutina de reconexi\u00f3n no actualice los registros de nvme debido a etiquetas insuficientes, lo que provocar\u00e1 que el kernel se cuelgue para siempre. Para solucionar este problema, tal vez podamos permitir que reg_read32()/reg_read64()/reg_write32() use etiquetas reservadas. Esto puede ser seguro para nvmf: 1. Para la ruta de activaci\u00f3n ctrl/deshabilitar, no emitiremos el comando connect. 2. Para la ruta de activaci\u00f3n ctrl/fw enable, ya que connect y reg_xx() se llaman en serie. Por lo tanto, las etiquetas reservadas pueden ser suficientes mientras reg_xx() usa etiquetas reservadas.\"}],\"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:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionEndExcluding\":\"6.9.11\",\"matchCriteriaId\":\"E5165B93-C9B7-47E9-8137-35D791A1B1D1\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.10:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"2EBB4392-5FA6-4DA9-9772-8F9C750109FA\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.10:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"331C2F14-12C7-45D5-893D-8C52EE38EA10\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]}]}}",
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa\", \"tags\": [\"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-02T04:46:52.643Z\"}}, {\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-41082\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-09-10T16:21:02.205379Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-09-11T12:42:14.822Z\"}}], \"cna\": {\"title\": \"nvme-fabrics: use reserved tag for reg read/write command\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"e7832cb48a654cd12b2bc9181b2f0ad49d526ac6\", \"lessThan\": \"165da9c67a26f08c9b956c15d701da7690f45bcb\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"e7832cb48a654cd12b2bc9181b2f0ad49d526ac6\", \"lessThan\": \"7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa\", \"versionType\": \"git\"}], \"programFiles\": [\"drivers/nvme/host/fabrics.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"5.4\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"5.4\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"6.9.11\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.9.*\"}, {\"status\": \"unaffected\", \"version\": \"6.10\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"drivers/nvme/host/fabrics.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/165da9c67a26f08c9b956c15d701da7690f45bcb\"}, {\"url\": \"https://git.kernel.org/stable/c/7dc3bfcb4c9cc58970fff6aaa48172cb224d85aa\"}], \"x_generator\": {\"engine\": \"bippy-1.2.0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnvme-fabrics: use reserved tag for reg read/write command\\n\\nIn some scenarios, if too many commands are issued by nvme command in\\nthe same time by user tasks, this may exhaust all tags of admin_q. If\\na reset (nvme reset or IO timeout) occurs before these commands finish,\\nreconnect routine may fail to update nvme regs due to insufficient tags,\\nwhich will cause kernel hang forever. In order to workaround this issue,\\nmaybe we can let reg_read32()/reg_read64()/reg_write32() use reserved\\ntags. This maybe safe for nvmf:\\n\\n1. For the disable ctrl path,  we will not issue connect command\\n2. For the enable ctrl / fw activate path, since connect and reg_xx()\\n   are called serially.\\n\\nSo the reserved tags may still be enough while reg_xx() use reserved tags.\"}], \"cpeApplicability\": [{\"nodes\": [{\"negate\": false, \"cpeMatch\": [{\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.9.11\", \"versionStartIncluding\": \"5.4\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.10\", \"versionStartIncluding\": \"5.4\"}], \"operator\": \"OR\"}]}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2026-05-11T20:25:50.700Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2024-41082\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-05-11T20:25:50.700Z\", \"dateReserved\": \"2024-07-12T12:17:45.633Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-07-29T15:04:19.372Z\", \"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…