<?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 15:41:09 +0000</lastBuildDate>
    <item>
      <title>CVE-2025-40159 — xsk: Harden userspace-supplied xdp_desc validation</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2025-40159</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: Harden userspace-supplied xdp_desc validation&lt;/p&gt;
&lt;p&gt;Turned out certain clearly invalid values passed in xdp_desc from
userspace can pass xp_{,un}aligned_validate_desc() and then lead
to UBs or just invalid frames to be queued for xmit.&lt;/p&gt;
&lt;p&gt;desc-&amp;gt;len close to ``U32_MAX`` with a non-zero pool-&amp;gt;tx_metadata_len
can cause positive integer overflow and wraparound, the same way low
enough desc-&amp;gt;addr with a non-zero pool-&amp;gt;tx_metadata_len can cause
negative integer overflow. Both scenarios can then pass the
validation successfully.
This doesn&amp;#39;t happen with valid XSk applications, but can be used
to perform attacks.&lt;/p&gt;
&lt;p&gt;Always promote desc-&amp;gt;len to ``u64`` first to exclude positive
overflows of it. Use explicit check_{add,sub}_overflow() when
validating desc-&amp;gt;addr (which is ``u64`` already).&lt;/p&gt;
&lt;p&gt;bloat-o-meter reports a little growth of the code size:&lt;/p&gt;
&lt;p&gt;add/remove: 0/0 grow/shrink: 2/1 up/down: 60/-16 (44)
Function                                     old     new   delta
xskq_cons_peek_desc                          299     330     +31
xsk_tx_peek_release_desc_batch               973    1002     +29
xsk_generic_xmit                            3148    3132     -16&lt;/p&gt;
&lt;p&gt;but hopefully this doesn&amp;#39;t hurt the performance much.&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: Harden userspace-supplied xdp_desc validation&lt;/p&gt;
&lt;p&gt;Turned out certain clearly invalid values passed in xdp_desc from
userspace can pass xp_{,un}aligned_validate_desc() and then lead
to UBs or just invalid frames to be queued for xmit.&lt;/p&gt;
&lt;p&gt;desc-&amp;gt;len close to ``U32_MAX`` with a non-zero pool-&amp;gt;tx_metadata_len
can cause positive integer overflow and wraparound, the same way low
enough desc-&amp;gt;addr with a non-zero pool-&amp;gt;tx_metadata_len can cause
negative integer overflow. Both scenarios can then pass the
validation successfully.
This doesn&amp;#39;t happen with valid XSk applications, but can be used
to perform attacks.&lt;/p&gt;
&lt;p&gt;Always promote desc-&amp;gt;len to ``u64`` first to exclude positive
overflows of it. Use explicit check_{add,sub}_overflow() when
validating desc-&amp;gt;addr (which is ``u64`` already).&lt;/p&gt;
&lt;p&gt;bloat-o-meter reports a little growth of the code size:&lt;/p&gt;
&lt;p&gt;add/remove: 0/0 grow/shrink: 2/1 up/down: 60/-16 (44)
Function                                     old     new   delta
xskq_cons_peek_desc                          299     330     +31
xsk_tx_peek_release_desc_batch               973    1002     +29
xsk_generic_xmit                            3148    3132     -16&lt;/p&gt;
&lt;p&gt;but hopefully this doesn&amp;#39;t hurt the performance much.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2025-40159</guid>
    </item>
  </channel>
</rss>
