CVE-2024-26898

aoe: fix the potential use-after-free problem in aoecmd_cfg_pkts

State
Published
Severity
7.8 High
Published
Apr 17, 2024
Updated
Oct 15, 2026
Reserved
Feb 19, 2024

Read the record on cve.org

Description

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

aoe: fix the potential use-after-free problem in aoecmd_cfg_pkts

This patch is against CVE-2023-6270. The description of cve is:

A flaw was found in the ATA over Ethernet (AoE) driver in the Linux kernel. The aoecmd_cfg_pkts() function improperly updates the refcnt on `struct net_device`, and a use-after-free can be triggered by racing between the free on the struct and the access through the `skbtxq` global queue. This could lead to a denial of service condition or potential code execution.

In aoecmd_cfg_pkts(), it always calls dev_put(ifp) when skb initial code is finished. But the net_device ifp will still be used in later tx()->dev_queue_xmit() in kthread. Which means that the dev_put(ifp) should NOT be called in the success path of skb initial code in aoecmd_cfg_pkts(). Otherwise tx() may run into use-after-free because the net_device is freed.

This patch removed the dev_put(ifp) in the success path in aoecmd_cfg_pkts(), and added dev_put() after skb xmit in tx().

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux
3.17.0 HighCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:HCISA-ADP

Weaknesses

Affected Products

ProductVersions
LinuxLinux
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before ad80c34944d7175fa1f5c7a55066020002921a99Affected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before 1a54aa506b3b2f31496731039e49778f54eee881Affected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before faf0b4c5e00bb680e8e43ac936df24d3f48c8e65Affected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before 7dd09fa80b0765ce68bfae92f4e2f395ccf0fba4Affected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before 74ca3ef68d2f449bc848c0a814cefc487bf755faAffected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before eb48680b0255a9e8a9bdc93d6a55b11c31262e62Affected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before 079cba4f4e307c69878226fdf5228c20aa1c969cAffected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before a16fbb80064634b254520a46395e36b87ca4731eAffected
  • 7562f876cd93800f2f8c89445f2a563590b24e09 to before f98364e926626c678fb4b9004b75cacf92ff0662Affected
LinuxLinux
  • 2.6.22Affected
  • before 2.6.22Not affected
  • 4.19.311 through 4.19.*Not affected
  • 5.4.273 through 5.4.*Not affected
  • 5.10.214 through 5.10.*Not affected
  • 5.15.153 through 5.15.*Not affected
  • 6.1.83 through 6.1.*Not affected
  • 6.6.23 through 6.6.*Not affected
  • 6.7.11 through 6.7.*Not affected
  • 6.8.2 through 6.8.*Not affected
  • 6.9 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.