Lucene search

K
cve416baaa9-dc9f-4396-8d5f-8c081fb06d67CVE-2021-47541
HistoryMay 24, 2024 - 3:15 p.m.

CVE-2021-47541

2024-05-2415:15:18
CWE-416
416baaa9-dc9f-4396-8d5f-8c081fb06d67
web.nvd.nist.gov
27
cve-2021-47541
vulnerability resolved
static analyzer
inconsistent security operations
mlxx4_en_try_alloc_resources
mlx4_en_copy_priv
mlx4_en_alloc_resources

7.8 High

CVSS3

Attack Vector

LOCAL

Attack Complexity

LOW

Privileges Required

LOW

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

7 High

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

5.1%

In the Linux kernel, the following vulnerability has been resolved:

net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources()

In mlx4_en_try_alloc_resources(), mlx4_en_copy_priv() is called and
tmp->tx_cq will be freed on the error path of mlx4_en_copy_priv().
After that mlx4_en_alloc_resources() is called and there is a dereference
of &tmp->tx_cq[t][i] in mlx4_en_alloc_resources(), which could lead to
a use after free problem on failure of mlx4_en_copy_priv().

Fix this bug by adding a check of mlx4_en_copy_priv()

This bug was found by a static analyzer. The analysis employs
differential checking to identify inconsistent security operations
(e.g., checks or kfrees) between two code paths and confirms that the
inconsistent operations are not recovered in the current function or
the callers, so they constitute bugs.

Note that, as a bug found by static analysis, it can be a false
positive or hard to trigger. Multiple researchers have cross-reviewed
the bug.

Builds with CONFIG_MLX4_EN=m show no new warnings,
and our static analyzer no longer warns about this code.

Affected configurations

Vulners
NVD
Node
linuxlinux_kernelRange4.74.14.257
OR
linuxlinux_kernelRange4.15.04.19.220
OR
linuxlinux_kernelRange4.20.05.4.164
OR
linuxlinux_kernelRange5.5.05.10.84
OR
linuxlinux_kernelRange5.11.05.15.7
OR
linuxlinux_kernelRange5.16.0

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/net/ethernet/mellanox/mlx4/en_netdev.c"
    ],
    "versions": [
      {
        "version": "ec25bc04ed8e",
        "lessThan": "be12572c5ddc",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "ec25bc04ed8e",
        "lessThan": "676dc7d9b15b",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "ec25bc04ed8e",
        "lessThan": "e461a9816a1a",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "ec25bc04ed8e",
        "lessThan": "f1d43efa59f1",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "ec25bc04ed8e",
        "lessThan": "75917372eef0",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "ec25bc04ed8e",
        "lessThan": "addad7643142",
        "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/net/ethernet/mellanox/mlx4/en_netdev.c"
    ],
    "versions": [
      {
        "version": "4.7",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "4.7",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "4.14.257",
        "lessThanOrEqual": "4.14.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "4.19.220",
        "lessThanOrEqual": "4.19.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.4.164",
        "lessThanOrEqual": "5.4.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.10.84",
        "lessThanOrEqual": "5.10.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.15.7",
        "lessThanOrEqual": "5.15.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.16",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

7.8 High

CVSS3

Attack Vector

LOCAL

Attack Complexity

LOW

Privileges Required

LOW

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

7 High

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

5.1%