<?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 23:48:57 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-64389 — ksmbd: validate NTLMv2 response before updating session key</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-64389</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;ksmbd: validate NTLMv2 response before updating session key&lt;/p&gt;
&lt;p&gt;ksmbd_auth_ntlmv2() derives the NTLMv2 session key into
sess-&amp;gt;sess_key before it verifies the NTLMv2 response.
ksmbd_decode_ntlmssp_auth_blob() then continues into KEY_XCH even
when ksmbd_auth_ntlmv2() failed.&lt;/p&gt;
&lt;p&gt;With SMB3 multichannel binding, the failed authentication operates on
an existing session and the session setup error path does not expire
binding sessions. A client can send a binding session setup with a
bad NT proof and KEY_XCH and still modify sess-&amp;gt;sess_key before
STATUS_LOGON_FAILURE is returned.&lt;/p&gt;
&lt;p&gt;Relevant path:&lt;/p&gt;
&lt;p&gt;smb2_sess_setup()
    -&amp;gt; conn-&amp;gt;binding = true
    -&amp;gt; ntlm_authenticate()
       -&amp;gt; session_user()
       -&amp;gt; ksmbd_decode_ntlmssp_auth_blob()
          -&amp;gt; ksmbd_auth_ntlmv2()
             -&amp;gt; calc_ntlmv2_hash()
             -&amp;gt; hmac_md5_usingrawkey(..., sess-&amp;gt;sess_key)
             -&amp;gt; crypto_memneq() returns mismatch
          -&amp;gt; KEY_XCH arc4_crypt(..., sess-&amp;gt;sess_key, ...)
    -&amp;gt; out_err without expiring the binding session&lt;/p&gt;
&lt;p&gt;Derive the base session key into a local buffer and copy it to
sess-&amp;gt;sess_key only after the proof matches. Return immediately on
authentication failure so KEY_XCH is only processed after successful
authentication.&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;ksmbd: validate NTLMv2 response before updating session key&lt;/p&gt;
&lt;p&gt;ksmbd_auth_ntlmv2() derives the NTLMv2 session key into
sess-&amp;gt;sess_key before it verifies the NTLMv2 response.
ksmbd_decode_ntlmssp_auth_blob() then continues into KEY_XCH even
when ksmbd_auth_ntlmv2() failed.&lt;/p&gt;
&lt;p&gt;With SMB3 multichannel binding, the failed authentication operates on
an existing session and the session setup error path does not expire
binding sessions. A client can send a binding session setup with a
bad NT proof and KEY_XCH and still modify sess-&amp;gt;sess_key before
STATUS_LOGON_FAILURE is returned.&lt;/p&gt;
&lt;p&gt;Relevant path:&lt;/p&gt;
&lt;p&gt;smb2_sess_setup()
    -&amp;gt; conn-&amp;gt;binding = true
    -&amp;gt; ntlm_authenticate()
       -&amp;gt; session_user()
       -&amp;gt; ksmbd_decode_ntlmssp_auth_blob()
          -&amp;gt; ksmbd_auth_ntlmv2()
             -&amp;gt; calc_ntlmv2_hash()
             -&amp;gt; hmac_md5_usingrawkey(..., sess-&amp;gt;sess_key)
             -&amp;gt; crypto_memneq() returns mismatch
          -&amp;gt; KEY_XCH arc4_crypt(..., sess-&amp;gt;sess_key, ...)
    -&amp;gt; out_err without expiring the binding session&lt;/p&gt;
&lt;p&gt;Derive the base session key into a local buffer and copy it to
sess-&amp;gt;sess_key only after the proof matches. Return immediately on
authentication failure so KEY_XCH is only processed after successful
authentication.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-64389</guid>
    </item>
  </channel>
</rss>
