Use After Free Affecting kernel-rt package, versions <0:4.18.0-553.5.1.rt7.346.el8_10


Severity

Recommended
medium

Based on AlmaLinux security rating.

Threat Intelligence

EPSS
0.04% (15th 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 Learn

Learn about Use After Free vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-ALMALINUX8-KERNELRT-7215381
  • published5 Jun 2024
  • disclosed5 Jun 2024

Introduced: 5 Jun 2024

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

How to fix?

Upgrade AlmaLinux:8 kernel-rt to version 0:4.18.0-553.5.1.rt7.346.el8_10 or higher.
This issue was patched in ALSA-2024:3627.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-rt package and not the kernel-rt package as distributed by AlmaLinux. See How to fix? for AlmaLinux: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