Lucene search

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

CVE-2021-47223

2024-05-2115:15:11
416baaa9-dc9f-4396-8d5f-8c081fb06d67
web.nvd.nist.gov
28
linux kernel
bridge module
vulnerability
null pointer dereference
vlan tunnel
egress path

6.6 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

10.4%

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

net: bridge: fix vlan tunnel dst null pointer dereference

This patch fixes a tunnel_dst null pointer dereference due to lockless
access in the tunnel egress path. When deleting a vlan tunnel the
tunnel_dst pointer is set to NULL without waiting a grace period (i.e.
while it’s still usable) and packets egressing are dereferencing it
without checking. Use READ/WRITE_ONCE to annotate the lockless use of
tunnel_id, use RCU for accessing tunnel_dst and make sure it is read
only once and checked in the egress path. The dst is already properly RCU
protected so we don’t need to do anything fancy than to make sure
tunnel_id and tunnel_dst are read only once and checked in the egress path.

Affected configurations

Vulners
Node
linuxlinux_kernelRange4.114.14.238
OR
linuxlinux_kernelRange4.15.04.19.196
OR
linuxlinux_kernelRange4.20.05.4.128
OR
linuxlinux_kernelRange5.5.05.10.46
OR
linuxlinux_kernelRange5.11.05.12.13
OR
linuxlinux_kernelRange5.13.0

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "net/bridge/br_private.h",
      "net/bridge/br_vlan_tunnel.c"
    ],
    "versions": [
      {
        "version": "11538d039ac6",
        "lessThan": "ad7feefe7164",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "11538d039ac6",
        "lessThan": "24a6e55f17aa",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "11538d039ac6",
        "lessThan": "a2241e62f6b4",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "11538d039ac6",
        "lessThan": "fe0448a3fad3",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "11538d039ac6",
        "lessThan": "abb02e05cb1c",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "11538d039ac6",
        "lessThan": "58e2071742e3",
        "status": "affected",
        "versionType": "git"
      }
    ]
  },
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "affected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "net/bridge/br_private.h",
      "net/bridge/br_vlan_tunnel.c"
    ],
    "versions": [
      {
        "version": "4.11",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "4.11",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "4.14.238",
        "lessThanOrEqual": "4.14.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "4.19.196",
        "lessThanOrEqual": "4.19.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.4.128",
        "lessThanOrEqual": "5.4.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.10.46",
        "lessThanOrEqual": "5.10.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.12.13",
        "lessThanOrEqual": "5.12.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "5.13",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

6.6 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

10.4%