<?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://cve.radiocsirt.org</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>Wed, 07 Oct 2026 07:44:43 +0000</lastBuildDate>
    <item>
      <title>CVE-2021-47103 — inet: fully convert sk-&gt;sk_rx_dst to RCU rules</title>
      <link>https://cve.radiocsirt.org/vuln/cve-2021-47103</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;inet: fully convert sk-&amp;gt;sk_rx_dst to RCU rules&lt;/p&gt;
&lt;p&gt;syzbot reported various issues around early demux,
one being included in this changelog [1]&lt;/p&gt;
&lt;p&gt;sk-&amp;gt;sk_rx_dst is using RCU protection without clearly
documenting it.&lt;/p&gt;
&lt;p&gt;And following sequences in tcp_v4_do_rcv()/tcp_v6_do_rcv()
are not following standard RCU rules.&lt;/p&gt;
&lt;p&gt;[a]    dst_release(dst);
[b]    sk-&amp;gt;sk_rx_dst = NULL;&lt;/p&gt;
&lt;p&gt;They look wrong because a delete operation of RCU protected
pointer is supposed to clear the pointer before
the call_rcu()/synchronize_rcu() guarding actual memory freeing.&lt;/p&gt;
&lt;p&gt;In some cases indeed, dst could be freed before [b] is done.&lt;/p&gt;
&lt;p&gt;We could cheat by clearing sk_rx_dst before calling
dst_release(), but this seems the right time to stick
to standard RCU annotations and debugging facilities.&lt;/p&gt;
&lt;p&gt;[1]
BUG: KASAN: use-after-free in dst_check include/net/dst.h:470 [inline]
BUG: KASAN: use-after-free in tcp_v4_early_demux+0x95b/0x960 net/ipv4/tcp_ipv4.c:1792
Read of size 2 at addr ffff88807f1cb73a by task syz-executor.5/9204&lt;/p&gt;
&lt;p&gt;CPU: 0 PID: 9204 Comm: syz-executor.5 Not tainted 5.16.0-rc5-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 &amp;lt;TASK&amp;gt;
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
 print_address_description.constprop.0.cold+0x8d/0x320 mm/kasan/report.c:247
 __kasan_report mm/kasan/report.c:433 [inline]
 kasan_report.cold+0x83/0xdf mm/kasan/r…&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;inet: fully convert sk-&amp;gt;sk_rx_dst to RCU rules&lt;/p&gt;
&lt;p&gt;syzbot reported various issues around early demux,
one being included in this changelog [1]&lt;/p&gt;
&lt;p&gt;sk-&amp;gt;sk_rx_dst is using RCU protection without clearly
documenting it.&lt;/p&gt;
&lt;p&gt;And following sequences in tcp_v4_do_rcv()/tcp_v6_do_rcv()
are not following standard RCU rules.&lt;/p&gt;
&lt;p&gt;[a]    dst_release(dst);
[b]    sk-&amp;gt;sk_rx_dst = NULL;&lt;/p&gt;
&lt;p&gt;They look wrong because a delete operation of RCU protected
pointer is supposed to clear the pointer before
the call_rcu()/synchronize_rcu() guarding actual memory freeing.&lt;/p&gt;
&lt;p&gt;In some cases indeed, dst could be freed before [b] is done.&lt;/p&gt;
&lt;p&gt;We could cheat by clearing sk_rx_dst before calling
dst_release(), but this seems the right time to stick
to standard RCU annotations and debugging facilities.&lt;/p&gt;
&lt;p&gt;[1]
BUG: KASAN: use-after-free in dst_check include/net/dst.h:470 [inline]
BUG: KASAN: use-after-free in tcp_v4_early_demux+0x95b/0x960 net/ipv4/tcp_ipv4.c:1792
Read of size 2 at addr ffff88807f1cb73a by task syz-executor.5/9204&lt;/p&gt;
&lt;p&gt;CPU: 0 PID: 9204 Comm: syz-executor.5 Not tainted 5.16.0-rc5-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 &amp;lt;TASK&amp;gt;
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
 print_address_description.constprop.0.cold+0x8d/0x320 mm/kasan/report.c:247
 __kasan_report mm/kasan/report.c:433 [inline]
 kasan_report.cold+0x83/0xdf mm/kasan/r…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/cve-2021-47103</guid>
    </item>
  </channel>
</rss>
