CVE-2026-45870

SUNRPC: auth_gss: fix memory leaks in XDR decoding error paths

State
Published
Severity
Not scored
Published
May 27, 2026
Updated
May 27, 2026
Reserved
May 13, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

SUNRPC: auth_gss: fix memory leaks in XDR decoding error paths

The gssx_dec_ctx(), gssx_dec_status(), and gssx_dec_name() functions allocate memory via gssx_dec_buffer(), which calls kmemdup(). When a subsequent decode operation fails, these functions return immediately without freeing previously allocated buffers, causing memory leaks.

The leak in gssx_dec_ctx() is particularly relevant because the caller (gssp_accept_sec_context_upcall) initializes several buffer length fields to non-zero values, resulting in memory allocation:

struct gssx_ctx rctxh = { .exported_context_token.len = GSSX_max_output_handle_sz, .mech.len = GSS_OID_MAX_LEN, .src_name.display_name.len = GSSX_max_princ_sz, .targ_name.display_name.len = GSSX_max_princ_sz };

If, for example, gssx_dec_name() succeeds for src_name but fails for targ_name, the memory allocated for exported_context_token, mech, and src_name.display_name remains unreferenced and cannot be reclaimed.

Add error handling with goto-based cleanup to free any previously allocated buffers before returning an error.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before c81431b1b9fbd21e9a5a9211b5517b7295d18e6aAffected
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before caf7eff432e91a9eba1c79fa545c2f54be15d62bAffected
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before 64303b92d94c0c7845a273acd8d84b796d6f1db7Affected
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before df10f23defff22c8d55fe6db74f6e4ce927145bfAffected
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before b4af3806846778799cd4ab0766dc18341e777264Affected
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before d79b9097a6a2b91471b40755f1225364be5d85ffAffected
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before 3b56eb90feb8a3709417f5624f3871847d42bcb1Affected
  • 1d658336b05f8697d6445834f8867f8ad5e4f735 to before 3e6397b056335cc56ef0e9da36c95946a19f5118Affected
LinuxLinux
  • 3.10Affected
  • before 3.10Not affected
  • 5.10.252 through 5.10.*Not affected
  • 5.15.202 through 5.15.*Not affected
  • 6.1.165 through 6.1.*Not affected
  • 6.6.128 through 6.6.*Not affected
  • 6.12.75 through 6.12.*Not affected
  • 6.18.14 through 6.18.*Not affected
  • 6.19.4 through 6.19.*Not affected
  • 7.0 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.