<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Tue, 06 Oct 2026 00:39:06 +0000</lastBuildDate>
    <item>
      <title>CVE-2024-56614 — xsk: fix OOB map writes when deleting elements</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2024-56614</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;xsk: fix OOB map writes when deleting elements&lt;/p&gt;
&lt;p&gt;Jordy says:&lt;/p&gt;
&lt;p&gt;&amp;#34;
In the xsk_map_delete_elem function an unsigned integer
(map-&amp;gt;max_entries) is compared with a user-controlled signed integer
(k). Due to implicit type conversion, a large unsigned value for
map-&amp;gt;max_entries can bypass the intended bounds check:&lt;/p&gt;
&lt;p&gt;if (k &amp;gt;= map-&amp;gt;max_entries)
		return -EINVAL;&lt;/p&gt;
&lt;p&gt;This allows k to hold a negative value (between -2147483648 and -2),
which is then used as an array index in m-&amp;gt;xsk_map[k], which results
in an out-of-bounds access.&lt;/p&gt;
&lt;p&gt;spin_lock_bh(&amp;amp;m-&amp;gt;lock);
	map_entry = &amp;amp;m-&amp;gt;xsk_map[k]; // Out-of-bounds map_entry
	old_xs = unrcu_pointer(xchg(map_entry, NULL));  // Oob write
	if (old_xs)
		xsk_map_sock_delete(old_xs, map_entry);
	spin_unlock_bh(&amp;amp;m-&amp;gt;lock);&lt;/p&gt;
&lt;p&gt;The xchg operation can then be used to cause an out-of-bounds write.
Moreover, the invalid map_entry passed to xsk_map_sock_delete can lead
to further memory corruption.
&amp;#34;&lt;/p&gt;
&lt;p&gt;It indeed results in following splat:&lt;/p&gt;
&lt;p&gt;[76612.897343] BUG: unable to handle page fault for address: ffffc8fc2e461108
[76612.904330] #PF: supervisor write access in kernel mode
[76612.909639] #PF: error_code(0x0002) - not-present page
[76612.914855] PGD 0 P4D 0
[76612.917431] Oops: Oops: 0002 [#1] PREEMPT SMP
[76612.921859] CPU: 11 UID: 0 PID: 10318 Comm: a.out Not tainted 6.12.0-rc1+ #470
[76612.929189] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0008.031920191559 03/19/20…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;xsk: fix OOB map writes when deleting elements&lt;/p&gt;
&lt;p&gt;Jordy says:&lt;/p&gt;
&lt;p&gt;&amp;#34;
In the xsk_map_delete_elem function an unsigned integer
(map-&amp;gt;max_entries) is compared with a user-controlled signed integer
(k). Due to implicit type conversion, a large unsigned value for
map-&amp;gt;max_entries can bypass the intended bounds check:&lt;/p&gt;
&lt;p&gt;if (k &amp;gt;= map-&amp;gt;max_entries)
		return -EINVAL;&lt;/p&gt;
&lt;p&gt;This allows k to hold a negative value (between -2147483648 and -2),
which is then used as an array index in m-&amp;gt;xsk_map[k], which results
in an out-of-bounds access.&lt;/p&gt;
&lt;p&gt;spin_lock_bh(&amp;amp;m-&amp;gt;lock);
	map_entry = &amp;amp;m-&amp;gt;xsk_map[k]; // Out-of-bounds map_entry
	old_xs = unrcu_pointer(xchg(map_entry, NULL));  // Oob write
	if (old_xs)
		xsk_map_sock_delete(old_xs, map_entry);
	spin_unlock_bh(&amp;amp;m-&amp;gt;lock);&lt;/p&gt;
&lt;p&gt;The xchg operation can then be used to cause an out-of-bounds write.
Moreover, the invalid map_entry passed to xsk_map_sock_delete can lead
to further memory corruption.
&amp;#34;&lt;/p&gt;
&lt;p&gt;It indeed results in following splat:&lt;/p&gt;
&lt;p&gt;[76612.897343] BUG: unable to handle page fault for address: ffffc8fc2e461108
[76612.904330] #PF: supervisor write access in kernel mode
[76612.909639] #PF: error_code(0x0002) - not-present page
[76612.914855] PGD 0 P4D 0
[76612.917431] Oops: Oops: 0002 [#1] PREEMPT SMP
[76612.921859] CPU: 11 UID: 0 PID: 10318 Comm: a.out Not tainted 6.12.0-rc1+ #470
[76612.929189] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0008.031920191559 03/19/20…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2024-56614</guid>
    </item>
  </channel>
</rss>
