What’s Vulnerable › Vulnerabilities
CVE-2021-47013: net:emac/emac-mac: Fix a use after free in emac_mac_tx_buf_send
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.8% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2024-02-28 · updated 2026-08-04
- Weakness: CWE-416
Description
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.
Affected products
- Linux kernel: from 4.9 before 4.9.269; from 4.10 before 4.14.233; from 4.15 before 4.19.191; from 4.20 before 5.4.119; from 5.5 before 5.10.37; from 5.11 before 5.11.21 — fixed in 4.14.233, 4.19.191, 4.9.269, 5.10.37, 5.11.21, 5.12.4
How to fix
Upgrade to a fixed version: Linux kernel 4.14.233, 4.19.191, 4.9.269, 5.10.37. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/16d8c44be52e3650917736d45f5904384a9da834
- https://git.kernel.org/stable/c/55fcdd1258faaecca74b91b88cc0921f9edd775d
- https://git.kernel.org/stable/c/6d72e7c767acbbdd44ebc7d89c6690b405b32b57
- https://git.kernel.org/stable/c/8c06f34785068b87e2b560534c77c163d6c6dca7
- https://git.kernel.org/stable/c/9dc373f74097edd0e35f3393d6248eda8d1ba99d
- https://git.kernel.org/stable/c/c7f75d11fe72913d2619f97b2334b083cd7bb955
- https://git.kernel.org/stable/c/dc1b438a35773d030be0ee80d9c635c3e558a322
- https://git.kernel.org/stable/c/e407495ba6788a67d1bd41714158c079e340879b
- https://git.kernel.org/stable/c/16d8c44be52e3650917736d45f5904384a9da834
- https://git.kernel.org/stable/c/55fcdd1258faaecca74b91b88cc0921f9edd775d
- https://git.kernel.org/stable/c/6d72e7c767acbbdd44ebc7d89c6690b405b32b57
- https://git.kernel.org/stable/c/8c06f34785068b87e2b560534c77c163d6c6dca7
Get alerted when CVE-2021-47013 or the next vulnerability affects your stack