CVE-2021-47013
Severity CVSS v4.0:
Pending analysis
Type:
CWE-416
Use After Free
Publication date:
28/02/2024
Last modified:
09/12/2024
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
net:emac/emac-mac: Fix a use after free in emac_mac_tx_buf_send<br />
<br />
In emac_mac_tx_buf_send, it calls emac_tx_fill_tpd(..,skb,..).<br />
If some error happens in emac_tx_fill_tpd(), the skb will be freed via<br />
dev_kfree_skb(skb) in error branch of emac_tx_fill_tpd().<br />
But the freed skb is still used via skb->len by netdev_sent_queue(,skb->len).<br />
<br />
As i observed that emac_tx_fill_tpd() haven&#39;t modified the value of skb->len,<br />
thus my patch assigns skb->len to &#39;len&#39; before the possible free and<br />
use &#39;len&#39; instead of skb->len later.
Impact
Base Score 3.x
7.80
Severity 3.x
HIGH
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.9 (including) | 4.9.269 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.10 (including) | 4.14.233 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.191 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.119 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.37 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.11.21 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.12 (including) | 5.12.4 (excluding) |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- 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
- 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



