Bug 2533698 (CVE-2026-91926) - CVE-2026-91926 gss-ntlmssp: gss-ntlmssp: memory leak in ntlm_decode_target_info via duplicated AV_PAIR entries in NTLM CHALLENGE
Summary: CVE-2026-91926 gss-ntlmssp: gss-ntlmssp: memory leak in ntlm_decode_target_in...
Keywords:
Status: NEW
Alias: CVE-2026-91926
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-09-15 10:57 UTC by OSIDB Bzimport
Modified: 2026-09-15 11:06 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-09-15 10:57:00 UTC
gss-ntlmssp (gssapi/gss-ntlmssp) contains a memory leak in the NTLM CHALLENGE target-info parsing on the client (initiator) path. The function ntlm_decode_av_pair_u16l_str() in src/ntlm.c (line 444) allocates a buffer via malloc and assigns it to *str (line 464) without freeing any previous value. The caller ntlm_decode_target_info() (line 637) iterates over AV_PAIRs in a while loop and decodes each string-valued AV_PAIR (MSV_AV_NB_COMPUTER_NAME, MSV_AV_NB_DOMAIN_NAME, MSV_AV_DNS_COMPUTER_NAME, MSV_AV_DNS_DOMAIN_NAME, MSV_AV_DNS_TREE_NAME, MSV_AV_TARGET_NAME) into local variables. If a CHALLENGE message contains a duplicated string-valued AV_PAIR ID, the second call overwrites the local pointer without freeing the first allocation. The done: cleanup only frees the last value held. The acceptor path (gss_sec_ctx.c:843) passes NULL for all six string out-parameters, so the leak does not fire server-side. The initiator path is reachable via ntlm_process_target_info() (src/ntlm.c:765), called from gssntlm_cli_auth() in src/gss_auth.c:85, which passes all six string parameters non-NULL. The unguarded allocation predates the February 2023 security batch (GHSL-2023-011/012/013) and was not caught because oss-fuzz drives the acceptor entry point which never runs the string decode. By inspection, all released versions are affected. Reported by Chase Bevan-Thomas (cbev0x), independent security researcher. No upstream fix available at time of report. PSIRT Ticket: PSIRTSUPT-23614. Verified via static analysis in Kaiden sandbox.


Note You need to log in before you can comment on or make changes to this bug.