<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://db.gcve.eu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-30T05:47:44.642017+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@gcve.eu</email>
  </author>
  <link href="https://db.gcve.eu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://db.gcve.eu/vuln/cve-2022-50704</id>
    <title>CVE-2022-50704 — USB: gadget: Fix use-after-free during usb config switch</title>
    <updated>2026-09-30T05:47:44.643658+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Linux</p>
<p>In the Linux kernel, the following vulnerability has been resolved:</p>
<p>USB: gadget: Fix use-after-free during usb config switch</p>
<p>In the process of switching USB config from rndis to other config,
if the hardware does not support the -&gt;pullup callback, or the
hardware encounters a low probability fault, both of them may cause
the -&gt;pullup callback to fail, which will then cause a system panic
(use after free).</p>
<p>The gadget drivers sometimes need to be unloaded regardless of the
hardware's behavior.</p>
<p>Analysis as follows:
=======================================================================
(1) write /config/usb_gadget/g1/UDC "none"</p>
<p>gether_disconnect+0x2c/0x1f8
rndis_disable+0x4c/0x74
composite_disconnect+0x74/0xb0
configfs_composite_disconnect+0x60/0x7c
usb_gadget_disconnect+0x70/0x124
usb_gadget_unregister_driver+0xc8/0x1d8
gadget_dev_desc_UDC_store+0xec/0x1e4</p>
<p>(2) rm /config/usb_gadget/g1/configs/b.1/f1</p>
<p>rndis_deregister+0x28/0x54
rndis_free+0x44/0x7c
usb_put_function+0x14/0x1c
config_usb_cfg_unlink+0xc4/0xe0
configfs_unlink+0x124/0x1c8
vfs_unlink+0x114/0x1dc</p>
<p>(3) rmdir /config/usb_gadget/g1/functions/rndis.gs4</p>
<p>panic+0x1fc/0x3d0
do_page_fault+0xa8/0x46c
do_mem_abort+0x3c/0xac
el1_sync_handler+0x40/0x78
0xffffff801138f880
rndis_close+0x28/0x34
eth_stop+0x74/0x110
dev_close_many+0x48/0x194
rollback_registered_many+0x118/0x814
unregister_netdev+0x20/0x30
gether_cleanup+0x1c/0x38
rndis_attr_release+0xc/0x14
kref_put+0x74/0xb8
configfs_rmdir+0x314/0x374</p>
<p>If gadget-&gt;ops-&gt;pullup()…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/cve-2022-50704"/>
  </entry>
</feed>
