<?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>Sun, 11 Oct 2026 18:34:37 +0000</lastBuildDate>
    <item>
      <title>CVE-2024-41041 — udp: Set SOCK_RCU_FREE earlier in udp_lib_get_port().</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2024-41041</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;udp: Set SOCK_RCU_FREE earlier in udp_lib_get_port().&lt;/p&gt;
&lt;p&gt;syzkaller triggered the warning [0] in udp_v4_early_demux().&lt;/p&gt;
&lt;p&gt;In udp_v[46]_early_demux() and sk_lookup(), we do not touch the refcount
of the looked-up sk and use sock_pfree() as skb-&amp;gt;destructor, so we check
SOCK_RCU_FREE to ensure that the sk is safe to access during the RCU grace
period.&lt;/p&gt;
&lt;p&gt;Currently, SOCK_RCU_FREE is flagged for a bound socket after being put
into the hash table.  Moreover, the SOCK_RCU_FREE check is done too early
in udp_v[46]_early_demux() and sk_lookup(), so there could be a small race
window:&lt;/p&gt;
&lt;p&gt;CPU1                                 CPU2
  ----                                 ----
  udp_v4_early_demux()                 udp_lib_get_port()
  |                                    |- hlist_add_head_rcu()
  |- sk = __udp4_lib_demux_lookup()    |
  |- DEBUG_NET_WARN_ON_ONCE(sk_is_refcounted(sk));
                                       `- sock_set_flag(sk, SOCK_RCU_FREE)&lt;/p&gt;
&lt;p&gt;We had the same bug in TCP and fixed it in commit 871019b22d1b (&amp;#34;net:
set SOCK_RCU_FREE before inserting socket into hashtable&amp;#34;).&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s apply the same fix for UDP.&lt;/p&gt;
&lt;p&gt;[0]:
WARNING: CPU: 0 PID: 11198 at net/ipv4/udp.c:2599 udp_v4_early_demux+0x481/0xb70 net/ipv4/udp.c:2599
Modules linked in:
CPU: 0 PID: 11198 Comm: syz-executor.1 Not tainted 6.9.0-g93bda33046e7 #13
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.0-0-gd239552ce722-prebuilt.qemu.org 04/01/…&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;udp: Set SOCK_RCU_FREE earlier in udp_lib_get_port().&lt;/p&gt;
&lt;p&gt;syzkaller triggered the warning [0] in udp_v4_early_demux().&lt;/p&gt;
&lt;p&gt;In udp_v[46]_early_demux() and sk_lookup(), we do not touch the refcount
of the looked-up sk and use sock_pfree() as skb-&amp;gt;destructor, so we check
SOCK_RCU_FREE to ensure that the sk is safe to access during the RCU grace
period.&lt;/p&gt;
&lt;p&gt;Currently, SOCK_RCU_FREE is flagged for a bound socket after being put
into the hash table.  Moreover, the SOCK_RCU_FREE check is done too early
in udp_v[46]_early_demux() and sk_lookup(), so there could be a small race
window:&lt;/p&gt;
&lt;p&gt;CPU1                                 CPU2
  ----                                 ----
  udp_v4_early_demux()                 udp_lib_get_port()
  |                                    |- hlist_add_head_rcu()
  |- sk = __udp4_lib_demux_lookup()    |
  |- DEBUG_NET_WARN_ON_ONCE(sk_is_refcounted(sk));
                                       `- sock_set_flag(sk, SOCK_RCU_FREE)&lt;/p&gt;
&lt;p&gt;We had the same bug in TCP and fixed it in commit 871019b22d1b (&amp;#34;net:
set SOCK_RCU_FREE before inserting socket into hashtable&amp;#34;).&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s apply the same fix for UDP.&lt;/p&gt;
&lt;p&gt;[0]:
WARNING: CPU: 0 PID: 11198 at net/ipv4/udp.c:2599 udp_v4_early_demux+0x481/0xb70 net/ipv4/udp.c:2599
Modules linked in:
CPU: 0 PID: 11198 Comm: syz-executor.1 Not tainted 6.9.0-g93bda33046e7 #13
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.0-0-gd239552ce722-prebuilt.qemu.org 04/01/…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2024-41041</guid>
    </item>
  </channel>
</rss>
