<?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, 29 Sep 2026 12:49:46 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-53260 — tcp: Add preempt_{disable,enable}_nested() in reqsk_queue_hash_req().</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-53260</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;tcp: Add preempt_{disable,enable}_nested() in reqsk_queue_hash_req().&lt;/p&gt;
&lt;p&gt;syzbot reported a weird reqsk-&amp;gt;rsk_refcnt underflow in
__inet_csk_reqsk_queue_drop().&lt;/p&gt;
&lt;p&gt;The captured reqsk_put() in __inet_csk_reqsk_queue_drop()
is called only when it successfully removes reqsk from ehash.&lt;/p&gt;
&lt;p&gt;Moreover, reqsk_timer_handler() calls another reqsk_put()
after that.&lt;/p&gt;
&lt;p&gt;This indicates that the reqsk was missing both refcnts for
ehash and the timer itself.&lt;/p&gt;
&lt;p&gt;Since all the syzbot reports had PREEMPT_RT enabled, the only
possible scenario is that reqsk_queue_hash_req() is preempted
after mod_timer() and before refcount_set(), and then the timer
triggered after 1s aborts the reqsk due to its listener&amp;#39;s close().&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s wrap mod_timer() and refcount_set() with
preempt_disable_nested() and preempt_enable_nested().&lt;/p&gt;
&lt;p&gt;Note that inet_ehash_insert() holds the normal spin_lock()
(mutex in PREEMPT_RT), so it must be called outside of
preempt_disable_nested(), but this is fine.&lt;/p&gt;
&lt;p&gt;The lookup path just ignores 0 sk_refcnt entries in ehash
and tries to create another reqsk, but this will fail at
inet_ehash_insert().&lt;/p&gt;
&lt;p&gt;[0]:
refcount_t: underflow; use-after-free.
WARNING: lib/refcount.c:28 at refcount_warn_saturate+0xb2/0x110 lib/refcount.c:28, CPU#0: ktimers/0/16
Modules linked in:
CPU: 0 UID: 0 PID: 16 Comm: ktimers/0 Tainted: G             L      syzkaller #0 PREEMPT_{RT,(full)}
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Goo…&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;tcp: Add preempt_{disable,enable}_nested() in reqsk_queue_hash_req().&lt;/p&gt;
&lt;p&gt;syzbot reported a weird reqsk-&amp;gt;rsk_refcnt underflow in
__inet_csk_reqsk_queue_drop().&lt;/p&gt;
&lt;p&gt;The captured reqsk_put() in __inet_csk_reqsk_queue_drop()
is called only when it successfully removes reqsk from ehash.&lt;/p&gt;
&lt;p&gt;Moreover, reqsk_timer_handler() calls another reqsk_put()
after that.&lt;/p&gt;
&lt;p&gt;This indicates that the reqsk was missing both refcnts for
ehash and the timer itself.&lt;/p&gt;
&lt;p&gt;Since all the syzbot reports had PREEMPT_RT enabled, the only
possible scenario is that reqsk_queue_hash_req() is preempted
after mod_timer() and before refcount_set(), and then the timer
triggered after 1s aborts the reqsk due to its listener&amp;#39;s close().&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s wrap mod_timer() and refcount_set() with
preempt_disable_nested() and preempt_enable_nested().&lt;/p&gt;
&lt;p&gt;Note that inet_ehash_insert() holds the normal spin_lock()
(mutex in PREEMPT_RT), so it must be called outside of
preempt_disable_nested(), but this is fine.&lt;/p&gt;
&lt;p&gt;The lookup path just ignores 0 sk_refcnt entries in ehash
and tries to create another reqsk, but this will fail at
inet_ehash_insert().&lt;/p&gt;
&lt;p&gt;[0]:
refcount_t: underflow; use-after-free.
WARNING: lib/refcount.c:28 at refcount_warn_saturate+0xb2/0x110 lib/refcount.c:28, CPU#0: ktimers/0/16
Modules linked in:
CPU: 0 UID: 0 PID: 16 Comm: ktimers/0 Tainted: G             L      syzkaller #0 PREEMPT_{RT,(full)}
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Goo…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-53260</guid>
    </item>
  </channel>
</rss>
