<?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://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-29T06:55:42.763479+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" 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://vulnerability.circl.lu/vuln/cve-2026-72446</id>
    <title>CVE-2026-72446 — ALSA: usb-audio: qcom: reject stream disable with no active interface</title>
    <updated>2026-09-29T06:55:42.780438+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>ALSA: usb-audio: qcom: reject stream disable with no active interface</p>
<p>handle_uaudio_stream_req() resolves an interface index with
info_idx_from_ifnum(), which returns -EINVAL when no interface matches.
The enable branch and the response: cleanup label both guard against a
negative index, but the disable branch does not: it forms
info = &amp;uadev[pcm_card_num].info[info_idx] and dereferences it.</p>
<p>uadev[].info is a pointer allocated only when a stream is first enabled,
so a negative info_idx on the disable path is unsafe in two ways:</p>
<p>- If the card was never enabled, .info is NULL and &amp;info[-EINVAL] is a
   wild pointer; reading info-&gt;data_ep_pipe faults (kernel oops).</p>
<p>- If the card was enabled at least once (.info allocated) and the
   disable names an interface that does not match, &amp;info[-EINVAL] points
   before the allocation; info-&gt;data_ep_pipe / info-&gt;sync_ep_pipe are an
   out-of-bounds slab read and, when non-zero, an out-of-bounds 4-byte
   write (both pipe fields are cleared to 0). That is memory corruption,
   not just a NULL dereference.</p>
<p>The request is reachable from unprivileged local userspace over
AF_QIPCRTR. Reject a disable request with no resolved interface, matching
the guard the enable path already has.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2026-72446"/>
  </entry>
</feed>
