<?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>Mon, 28 Sep 2026 06:36:35 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-74684 — net: tap: set skb-&gt;dev before parsing virtio net header in tap_get_user_xdp()</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-74684</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: tap: set skb-&amp;gt;dev before parsing virtio net header in tap_get_user_xdp()&lt;/p&gt;
&lt;p&gt;The commit 4f61f133f354 (&amp;#34;net: tap: NULL pointer derefence in
dev_parse_header_protocol when skb-&amp;gt;dev is null&amp;#34;) fixed a crash in
tap_get_user() by assigning skb-&amp;gt;dev before calling tun_vnet_hdr_to_skb().
This is required because virtio_net_hdr_to_skb() may invoke
dev_parse_header_protocol(), which dereferences skb-&amp;gt;dev. Without the
assignment, a NULL pointer dereference can occur.&lt;/p&gt;
&lt;p&gt;However, tap_get_user_xdp() still parses the virtio-net header before
assigning skb-&amp;gt;dev. When the vhost TX path passes an XDP buffer containing
a GSO virtio-net header but the protocol is set to zero on purpose,
tun_vnet_hdr_to_skb() can reach dev_parse_header_protocol() while skb-&amp;gt;dev
is still NULL, resulting in a crash.&lt;/p&gt;
&lt;p&gt;Fix this by looking up the tap device and assigning skb-&amp;gt;dev before calling
tun_vnet_hdr_to_skb(), matching the ordering already used in
tap_get_user(). Preserve the existing RCU read-side critical section across
dev_queue_xmit().&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: tap: set skb-&amp;gt;dev before parsing virtio net header in tap_get_user_xdp()&lt;/p&gt;
&lt;p&gt;The commit 4f61f133f354 (&amp;#34;net: tap: NULL pointer derefence in
dev_parse_header_protocol when skb-&amp;gt;dev is null&amp;#34;) fixed a crash in
tap_get_user() by assigning skb-&amp;gt;dev before calling tun_vnet_hdr_to_skb().
This is required because virtio_net_hdr_to_skb() may invoke
dev_parse_header_protocol(), which dereferences skb-&amp;gt;dev. Without the
assignment, a NULL pointer dereference can occur.&lt;/p&gt;
&lt;p&gt;However, tap_get_user_xdp() still parses the virtio-net header before
assigning skb-&amp;gt;dev. When the vhost TX path passes an XDP buffer containing
a GSO virtio-net header but the protocol is set to zero on purpose,
tun_vnet_hdr_to_skb() can reach dev_parse_header_protocol() while skb-&amp;gt;dev
is still NULL, resulting in a crash.&lt;/p&gt;
&lt;p&gt;Fix this by looking up the tap device and assigning skb-&amp;gt;dev before calling
tun_vnet_hdr_to_skb(), matching the ordering already used in
tap_get_user(). Preserve the existing RCU read-side critical section across
dev_queue_xmit().&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-74684</guid>
    </item>
  </channel>
</rss>
