cve-2024-50001
Vulnerability from cvelistv5
Published
2024-10-21 18:02
Modified
2024-12-19 09:31
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: net/mlx5: Fix error path in multi-packet WQE transmit Remove the erroneous unmap in case no DMA mapping was established The multi-packet WQE transmit code attempts to obtain a DMA mapping for the skb. This could fail, e.g. under memory pressure, when the IOMMU driver just can't allocate more memory for page tables. While the code tries to handle this in the path below the err_unmap label it erroneously unmaps one entry from the sq's FIFO list of active mappings. Since the current map attempt failed this unmap is removing some random DMA mapping that might still be required. If the PCI function now presents that IOVA, the IOMMU may assumes a rogue DMA access and e.g. on s390 puts the PCI function in error state. The erroneous behavior was seen in a stress-test environment that created memory pressure.
Impacted products
Vendor Product Version
Linux Linux Version: 5af75c747e2a868abbf8611494b50ed5e076fca7
Version: 5af75c747e2a868abbf8611494b50ed5e076fca7
Version: 5af75c747e2a868abbf8611494b50ed5e076fca7
Version: 5af75c747e2a868abbf8611494b50ed5e076fca7
Version: 5af75c747e2a868abbf8611494b50ed5e076fca7
Version: 5af75c747e2a868abbf8611494b50ed5e076fca7
Version: 5af75c747e2a868abbf8611494b50ed5e076fca7
Create a notification for this product.
   Linux Linux Version: 5.10
Create a notification for this product.
Show details on NVD website


{
   containers: {
      adp: [
         {
            metrics: [
               {
                  other: {
                     content: {
                        id: "CVE-2024-50001",
                        options: [
                           {
                              Exploitation: "none",
                           },
                           {
                              Automatable: "no",
                           },
                           {
                              "Technical Impact": "partial",
                           },
                        ],
                        role: "CISA Coordinator",
                        timestamp: "2024-10-22T13:29:57.852551Z",
                        version: "2.0.3",
                     },
                     type: "ssvc",
                  },
               },
            ],
            providerMetadata: {
               dateUpdated: "2024-10-22T13:38:41.116Z",
               orgId: "134c704f-9b21-4f2e-91b3-4a467353bcc0",
               shortName: "CISA-ADP",
            },
            title: "CISA ADP Vulnrichment",
         },
      ],
      cna: {
         affected: [
            {
               defaultStatus: "unaffected",
               product: "Linux",
               programFiles: [
                  "drivers/net/ethernet/mellanox/mlx5/core/en_tx.c",
               ],
               repo: "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               vendor: "Linux",
               versions: [
                  {
                     lessThan: "ca36d6c1a49b6965c86dd528a73f38bc62d9c625",
                     status: "affected",
                     version: "5af75c747e2a868abbf8611494b50ed5e076fca7",
                     versionType: "git",
                  },
                  {
                     lessThan: "ce828b347cf1b3c1b12b091d02463c35ce5097f5",
                     status: "affected",
                     version: "5af75c747e2a868abbf8611494b50ed5e076fca7",
                     versionType: "git",
                  },
                  {
                     lessThan: "fc357e78176945ca7bcacf92ab794b9ccd41b4f4",
                     status: "affected",
                     version: "5af75c747e2a868abbf8611494b50ed5e076fca7",
                     versionType: "git",
                  },
                  {
                     lessThan: "26fad69b34fcba80d5c7d9e651f628e6ac927754",
                     status: "affected",
                     version: "5af75c747e2a868abbf8611494b50ed5e076fca7",
                     versionType: "git",
                  },
                  {
                     lessThan: "ecf310aaf256acbc8182189fe0aa1021c3ddef72",
                     status: "affected",
                     version: "5af75c747e2a868abbf8611494b50ed5e076fca7",
                     versionType: "git",
                  },
                  {
                     lessThan: "8bb8c12fb5e2b1f03d603d493c92941676f109b5",
                     status: "affected",
                     version: "5af75c747e2a868abbf8611494b50ed5e076fca7",
                     versionType: "git",
                  },
                  {
                     lessThan: "2bcae12c795f32ddfbf8c80d1b5f1d3286341c32",
                     status: "affected",
                     version: "5af75c747e2a868abbf8611494b50ed5e076fca7",
                     versionType: "git",
                  },
               ],
            },
            {
               defaultStatus: "affected",
               product: "Linux",
               programFiles: [
                  "drivers/net/ethernet/mellanox/mlx5/core/en_tx.c",
               ],
               repo: "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               vendor: "Linux",
               versions: [
                  {
                     status: "affected",
                     version: "5.10",
                  },
                  {
                     lessThan: "5.10",
                     status: "unaffected",
                     version: "0",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "5.10.*",
                     status: "unaffected",
                     version: "5.10.227",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "5.15.*",
                     status: "unaffected",
                     version: "5.15.168",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "6.1.*",
                     status: "unaffected",
                     version: "6.1.113",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "6.6.*",
                     status: "unaffected",
                     version: "6.6.55",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "6.10.*",
                     status: "unaffected",
                     version: "6.10.14",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "6.11.*",
                     status: "unaffected",
                     version: "6.11.3",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "*",
                     status: "unaffected",
                     version: "6.12",
                     versionType: "original_commit_for_fix",
                  },
               ],
            },
         ],
         descriptions: [
            {
               lang: "en",
               value: "In the Linux kernel, the following vulnerability has been resolved:\n\nnet/mlx5: Fix error path in multi-packet WQE transmit\n\nRemove the erroneous unmap in case no DMA mapping was established\n\nThe multi-packet WQE transmit code attempts to obtain a DMA mapping for\nthe skb. This could fail, e.g. under memory pressure, when the IOMMU\ndriver just can't allocate more memory for page tables. While the code\ntries to handle this in the path below the err_unmap label it erroneously\nunmaps one entry from the sq's FIFO list of active mappings. Since the\ncurrent map attempt failed this unmap is removing some random DMA mapping\nthat might still be required. If the PCI function now presents that IOVA,\nthe IOMMU may assumes a rogue DMA access and e.g. on s390 puts the PCI\nfunction in error state.\n\nThe erroneous behavior was seen in a stress-test environment that created\nmemory pressure.",
            },
         ],
         providerMetadata: {
            dateUpdated: "2024-12-19T09:31:02.695Z",
            orgId: "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            shortName: "Linux",
         },
         references: [
            {
               url: "https://git.kernel.org/stable/c/ca36d6c1a49b6965c86dd528a73f38bc62d9c625",
            },
            {
               url: "https://git.kernel.org/stable/c/ce828b347cf1b3c1b12b091d02463c35ce5097f5",
            },
            {
               url: "https://git.kernel.org/stable/c/fc357e78176945ca7bcacf92ab794b9ccd41b4f4",
            },
            {
               url: "https://git.kernel.org/stable/c/26fad69b34fcba80d5c7d9e651f628e6ac927754",
            },
            {
               url: "https://git.kernel.org/stable/c/ecf310aaf256acbc8182189fe0aa1021c3ddef72",
            },
            {
               url: "https://git.kernel.org/stable/c/8bb8c12fb5e2b1f03d603d493c92941676f109b5",
            },
            {
               url: "https://git.kernel.org/stable/c/2bcae12c795f32ddfbf8c80d1b5f1d3286341c32",
            },
         ],
         title: "net/mlx5: Fix error path in multi-packet WQE transmit",
         x_generator: {
            engine: "bippy-5f407fcff5a0",
         },
      },
   },
   cveMetadata: {
      assignerOrgId: "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      assignerShortName: "Linux",
      cveId: "CVE-2024-50001",
      datePublished: "2024-10-21T18:02:40.254Z",
      dateReserved: "2024-10-21T12:17:06.058Z",
      dateUpdated: "2024-12-19T09:31:02.695Z",
      state: "PUBLISHED",
   },
   dataType: "CVE_RECORD",
   dataVersion: "5.1",
   "vulnerability-lookup:meta": {
      nvd: "{\"cve\":{\"id\":\"CVE-2024-50001\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-10-21T18:15:20.130\",\"lastModified\":\"2024-10-30T21:59:44.487\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnet/mlx5: Fix error path in multi-packet WQE transmit\\n\\nRemove the erroneous unmap in case no DMA mapping was established\\n\\nThe multi-packet WQE transmit code attempts to obtain a DMA mapping for\\nthe skb. This could fail, e.g. under memory pressure, when the IOMMU\\ndriver just can't allocate more memory for page tables. While the code\\ntries to handle this in the path below the err_unmap label it erroneously\\nunmaps one entry from the sq's FIFO list of active mappings. Since the\\ncurrent map attempt failed this unmap is removing some random DMA mapping\\nthat might still be required. If the PCI function now presents that IOVA,\\nthe IOMMU may assumes a rogue DMA access and e.g. on s390 puts the PCI\\nfunction in error state.\\n\\nThe erroneous behavior was seen in a stress-test environment that created\\nmemory pressure.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net/mlx5: Corregir ruta de error en transmisión WQE de paquetes múltiples Eliminar la desasignación errónea en caso de que no se haya establecido una asignación DMA El código de transmisión WQE de paquetes múltiples intenta obtener una asignación DMA para el skb. Esto podría fallar, por ejemplo, bajo presión de memoria, cuando el controlador IOMMU simplemente no puede asignar más memoria para las tablas de páginas. Si bien el código intenta manejar esto en la ruta debajo de la etiqueta err_unmap, desasigna erróneamente una entrada de la lista FIFO de asignaciones activas del sq. Dado que el intento de asignación actual falló, esta desasignación está eliminando alguna asignación DMA aleatoria que aún podría ser necesaria. Si la función PCI ahora presenta ese IOVA, el IOMMU puede asumir un acceso DMA no autorizado y, por ejemplo, en s390 pone la función PCI en estado de error. El comportamiento erróneo se observó en un entorno de prueba de estrés que creó presión de memoria.\"}],\"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\":\"CWE-755\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.10\",\"versionEndExcluding\":\"5.10.227\",\"matchCriteriaId\":\"658E9248-9CAC-4A1E-A483-039DF6CCAF8C\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.11\",\"versionEndExcluding\":\"5.15.168\",\"matchCriteriaId\":\"4D51C05D-455B-4D8D-89E7-A58E140B864C\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.16\",\"versionEndExcluding\":\"6.1.113\",\"matchCriteriaId\":\"D01BD22E-ACD1-4618-9D01-6116570BE1EE\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.2\",\"versionEndExcluding\":\"6.6.55\",\"matchCriteriaId\":\"E90B9576-56C4-47BC-AAB0-C5B2D438F5D0\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.7\",\"versionEndExcluding\":\"6.10.14\",\"matchCriteriaId\":\"4C16BCE0-FFA0-4599-BE0A-1FD65101C021\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.11\",\"versionEndExcluding\":\"6.11.3\",\"matchCriteriaId\":\"54D9C704-D679-41A7-9C40-10A6B1E7FFE9\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.12:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"7F361E1D-580F-4A2D-A509-7615F73167A1\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/26fad69b34fcba80d5c7d9e651f628e6ac927754\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/2bcae12c795f32ddfbf8c80d1b5f1d3286341c32\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/8bb8c12fb5e2b1f03d603d493c92941676f109b5\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/ca36d6c1a49b6965c86dd528a73f38bc62d9c625\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/ce828b347cf1b3c1b12b091d02463c35ce5097f5\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/ecf310aaf256acbc8182189fe0aa1021c3ddef72\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/fc357e78176945ca7bcacf92ab794b9ccd41b4f4\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
      vulnrichment: {
         containers: "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-50001\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-10-22T13:29:57.852551Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-10-22T13:30:01.049Z\"}}], \"cna\": {\"title\": \"net/mlx5: Fix error path in multi-packet WQE transmit\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"5af75c747e2a\", \"lessThan\": \"ca36d6c1a49b\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"5af75c747e2a\", \"lessThan\": \"ce828b347cf1\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"5af75c747e2a\", \"lessThan\": \"fc357e781769\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"5af75c747e2a\", \"lessThan\": \"26fad69b34fc\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"5af75c747e2a\", \"lessThan\": \"ecf310aaf256\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"5af75c747e2a\", \"lessThan\": \"8bb8c12fb5e2\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"5af75c747e2a\", \"lessThan\": \"2bcae12c795f\", \"versionType\": \"git\"}], \"programFiles\": [\"drivers/net/ethernet/mellanox/mlx5/core/en_tx.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.10\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"5.10\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"5.10.227\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.10.*\"}, {\"status\": \"unaffected\", \"version\": \"5.15.168\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.15.*\"}, {\"status\": \"unaffected\", \"version\": \"6.1.113\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.1.*\"}, {\"status\": \"unaffected\", \"version\": \"6.6.55\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.6.*\"}, {\"status\": \"unaffected\", \"version\": \"6.10.14\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.10.*\"}, {\"status\": \"unaffected\", \"version\": \"6.11.3\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.11.*\"}, {\"status\": \"unaffected\", \"version\": \"6.12-rc2\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"drivers/net/ethernet/mellanox/mlx5/core/en_tx.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/ca36d6c1a49b6965c86dd528a73f38bc62d9c625\"}, {\"url\": \"https://git.kernel.org/stable/c/ce828b347cf1b3c1b12b091d02463c35ce5097f5\"}, {\"url\": \"https://git.kernel.org/stable/c/fc357e78176945ca7bcacf92ab794b9ccd41b4f4\"}, {\"url\": \"https://git.kernel.org/stable/c/26fad69b34fcba80d5c7d9e651f628e6ac927754\"}, {\"url\": \"https://git.kernel.org/stable/c/ecf310aaf256acbc8182189fe0aa1021c3ddef72\"}, {\"url\": \"https://git.kernel.org/stable/c/8bb8c12fb5e2b1f03d603d493c92941676f109b5\"}, {\"url\": \"https://git.kernel.org/stable/c/2bcae12c795f32ddfbf8c80d1b5f1d3286341c32\"}], \"x_generator\": {\"engine\": \"bippy-9e1c9544281a\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnet/mlx5: Fix error path in multi-packet WQE transmit\\n\\nRemove the erroneous unmap in case no DMA mapping was established\\n\\nThe multi-packet WQE transmit code attempts to obtain a DMA mapping for\\nthe skb. This could fail, e.g. under memory pressure, when the IOMMU\\ndriver just can't allocate more memory for page tables. While the code\\ntries to handle this in the path below the err_unmap label it erroneously\\nunmaps one entry from the sq's FIFO list of active mappings. Since the\\ncurrent map attempt failed this unmap is removing some random DMA mapping\\nthat might still be required. If the PCI function now presents that IOVA,\\nthe IOMMU may assumes a rogue DMA access and e.g. on s390 puts the PCI\\nfunction in error state.\\n\\nThe erroneous behavior was seen in a stress-test environment that created\\nmemory pressure.\"}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2024-11-05T09:53:15.452Z\"}}}",
         cveMetadata: "{\"cveId\": \"CVE-2024-50001\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-11-05T09:53:15.452Z\", \"dateReserved\": \"2024-10-21T12:17:06.058Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-10-21T18:02:40.254Z\", \"assignerShortName\": \"Linux\"}",
         dataType: "CVE_RECORD",
         dataVersion: "5.1",
      },
   },
}


Log in or create an account to share your comment.

Security Advisory comment format.

This schema specifies the format of a comment related to a security advisory.

UUIDv4 of the comment
UUIDv4 of the Vulnerability-Lookup instance
When the comment was created originally
When the comment was last updated
Title of the comment
Description of the comment
The identifier of the vulnerability (CVE ID, GHSA-ID, PYSEC ID, etc.).



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.
  • 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.