Bug 2172020 (CVE-2023-25564)

Summary: CVE-2023-25564 gssntlmssp: memory corruption when decoding UTF16 strings
Product: [Other] Security Response Reporter: TEJ RATHI <trathi>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: jrische
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: gssntlmssp 1.2.0 Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in GSS-NTLMSSP, a mechglue plugin for the GSSAPI library that implements NTLM authentication. Memory corruption can be triggered when decoding UTF16 strings. The variable `outlen` was not initialized and could cause writing a zero to an arbitrary place in memory if the `ntlm_str_convert()` fails, which would leave `outlen` uninitialized. This issue can lead to a denial of service if the write hits unmapped memory or randomly corrupts a byte in the application memory space. This vulnerability can trigger an out-of-bounds write, leading to memory corruption, and can be triggered via the main `gss_accept_sec_context` entry point.
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-05-17 03:42:09 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2172025, 2175083, 2178907, 2181313    
Bug Blocks: 2169915    

Description TEJ RATHI 2023-02-21 08:50:28 UTC
GSS-NTLMSSP is a mechglue plugin for the GSSAPI library that implements NTLM authentication. Prior to version 1.2.0, memory corruption can be triggered when decoding UTF16 strings. The variable `outlen` was not initialized and could cause writing a zero to an arbitrary place in memory if `ntlm_str_convert()` were to fail, which would leave `outlen` uninitialized. This can lead to a denial of service if the write hits unmapped memory or randomly corrupts a byte in the application memory space. This vulnerability can trigger an out-of-bounds write, leading to memory corruption. This vulnerability can be triggered via the main `gss_accept_sec_context` entry point. This issue is fixed in version 1.2.0.

https://github.com/gssapi/gss-ntlmssp/commit/c753000eb31835c0664e528fbc99378ae0cbe950
https://github.com/gssapi/gss-ntlmssp/releases/tag/v1.2.0
https://github.com/gssapi/gss-ntlmssp/security/advisories/GHSA-r85x-q5px-9xfq

Comment 1 TEJ RATHI 2023-02-21 08:50:50 UTC
Created gssntlmssp tracking bugs for this issue:

Affects: epel-7 [bug 2172025]

Comment 2 Sandipan Roy 2023-03-03 07:51:15 UTC
Created gssntlmssp tracking bugs for this issue:

Affects: fedora-all [bug 2175083]

Comment 4 errata-xmlrpc 2023-05-16 10:01:01 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 8

Via RHSA-2023:3097 https://access.redhat.com/errata/RHSA-2023:3097

Comment 5 Product Security DevOps Team 2023-05-17 03:42:07 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2023-25564