Lucene search

K
cvelistLinuxCVELIST:CVE-2021-47241
HistoryMay 21, 2024 - 2:19 p.m.

CVE-2021-47241 ethtool: strset: fix message length calculation

2024-05-2114:19:41
Linux
www.cve.org
linux kernel
ethtool_a_strset_stringsets
message length
vulnerability fix
warning
skb size
device name
priv flags

6.4 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

15.6%

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

ethtool: strset: fix message length calculation

Outer nest for ETHTOOL_A_STRSET_STRINGSETS is not accounted for.
This may result in ETHTOOL_MSG_STRSET_GET producing a warning like:

calculated message payload length (684) not sufficient
WARNING: CPU: 0 PID: 30967 at net/ethtool/netlink.c:369 ethnl_default_doit+0x87a/0xa20

and a splat.

As usually with such warnings three conditions must be met for the warning
to trigger:

  • there must be no skb size rounding up (e.g. reply_size of 684);
  • string set must be per-device (so that the header gets populated);
  • the device name must be at least 12 characters long.

all in all with current user space it looks like reading priv flags
is the only place this could potentially happen. Or with syzbot :)

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "net/ethtool/strset.c"
    ],
    "versions": [
      {
        "version": "71921690f974",
        "lessThan": "fb3a94814368",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "71921690f974",
        "lessThan": "cfc7f0e70d64",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "71921690f974",
        "lessThan": "e175aef90269",
        "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/ethtool/strset.c"
    ],
    "versions": [
      {
        "version": "5.6",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "5.6",
        "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.4 Medium

AI Score

Confidence

Low

0.0004 Low

EPSS

Percentile

15.6%

Related for CVELIST:CVE-2021-47241