Use After Free Affecting kernel-modules-extra package, versions <0:4.18.0-553.5.1.el8_10


Severity

Recommended
medium

Based on CentOS security rating.

Threat Intelligence

EPSS
0.04% (6th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-CENTOS8-KERNELMODULESEXTRA-6338028
  • published29 Feb 2024
  • disclosed28 Feb 2024

Introduced: 28 Feb 2024

CVE-2021-47013  (opens in a new tab)
CWE-416  (opens in a new tab)

How to fix?

Upgrade Centos:8 kernel-modules-extra to version 0:4.18.0-553.5.1.el8_10 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-modules-extra package and not the kernel-modules-extra package as distributed by Centos. See How to fix? for Centos:8 relevant fixed versions and status.

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

net:emac/emac-mac: Fix a use after free in emac_mac_tx_buf_send

In emac_mac_tx_buf_send, it calls emac_tx_fill_tpd(..,skb,..). If some error happens in emac_tx_fill_tpd(), the skb will be freed via dev_kfree_skb(skb) in error branch of emac_tx_fill_tpd(). But the freed skb is still used via skb->len by netdev_sent_queue(,skb->len).

As i observed that emac_tx_fill_tpd() haven't modified the value of skb->len, thus my patch assigns skb->len to 'len' before the possible free and use 'len' instead of skb->len later.

CVSS Scores

version 3.1