<?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 03:38:04 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-98021 — net: reject oversized tx_queue_len at netlink parse time</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-98021</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;net: reject oversized tx_queue_len at netlink parse time&lt;/p&gt;
&lt;p&gt;rtnl_create_link() assigns IFLA_TXQLEN directly to dev-&amp;gt;tx_queue_len
without going through netif_change_tx_queue_len(), so a device created
with &amp;#34;ip link add ... txqueuelen 500000&amp;#34; bypasses the S16_MAX cap and
still triggers the oversized ring allocations in pfifo_fast, tun and
tap. The veth peer nest (rtnl_nla_parse_ifinfomsg()) and the
RTM_NEWLINK-on-existing-device path reach the same sinks.&lt;/p&gt;
&lt;p&gt;Enforce the cap in ifla_policy instead: IFLA_TXQLEN becomes
NLA_POLICY_FULL_RANGE(NLA_U32, &amp;amp;txqlen_range) with
txqlen_range = { .min = 0, .max = S16_MAX }. All netlink consumers
parse against this policy - rtnl_setlink(), rtnl_newlink() (create
and change), and the veth peer nest - so every netlink path is capped
at parse time and rejects the attribute with -ERANGE plus a proper
&amp;#34;integer out of range&amp;#34; extack message before any device state is
modified (the RTM_SETLINK half-application wart is gone with it).&lt;/p&gt;
&lt;p&gt;Document the bound in the rt-link.yaml netlink spec.&lt;/p&gt;
&lt;p&gt;Conditions to recreate the bug:
- CONFIG_NET_SCHED=y, CONFIG_VETH=y, CONFIG_USER_NS=y, CONFIG_NET_NS=y.
- Unprivileged user in a fresh user+net namespace (unshare -Urn):
  ip link add v0 txqueuelen 500000 type veth peer name v1
  -&amp;gt; on the fixed kernel this is rejected with -ERANGE (&amp;#34;integer out
  of range&amp;#34; extack) instead of installing an oversized tx_queue_len
  that later inflates pfifo_fast/tun/tap…&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;net: reject oversized tx_queue_len at netlink parse time&lt;/p&gt;
&lt;p&gt;rtnl_create_link() assigns IFLA_TXQLEN directly to dev-&amp;gt;tx_queue_len
without going through netif_change_tx_queue_len(), so a device created
with &amp;#34;ip link add ... txqueuelen 500000&amp;#34; bypasses the S16_MAX cap and
still triggers the oversized ring allocations in pfifo_fast, tun and
tap. The veth peer nest (rtnl_nla_parse_ifinfomsg()) and the
RTM_NEWLINK-on-existing-device path reach the same sinks.&lt;/p&gt;
&lt;p&gt;Enforce the cap in ifla_policy instead: IFLA_TXQLEN becomes
NLA_POLICY_FULL_RANGE(NLA_U32, &amp;amp;txqlen_range) with
txqlen_range = { .min = 0, .max = S16_MAX }. All netlink consumers
parse against this policy - rtnl_setlink(), rtnl_newlink() (create
and change), and the veth peer nest - so every netlink path is capped
at parse time and rejects the attribute with -ERANGE plus a proper
&amp;#34;integer out of range&amp;#34; extack message before any device state is
modified (the RTM_SETLINK half-application wart is gone with it).&lt;/p&gt;
&lt;p&gt;Document the bound in the rt-link.yaml netlink spec.&lt;/p&gt;
&lt;p&gt;Conditions to recreate the bug:
- CONFIG_NET_SCHED=y, CONFIG_VETH=y, CONFIG_USER_NS=y, CONFIG_NET_NS=y.
- Unprivileged user in a fresh user+net namespace (unshare -Urn):
  ip link add v0 txqueuelen 500000 type veth peer name v1
  -&amp;gt; on the fixed kernel this is rejected with -ERANGE (&amp;#34;integer out
  of range&amp;#34; extack) instead of installing an oversized tx_queue_len
  that later inflates pfifo_fast/tun/tap…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-98021</guid>
    </item>
  </channel>
</rss>
