🔍 CVE-2026-45870

5.5
CVSS Score
MEDIUM
2026-05-27
2026-11-06 16:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 SUNRPC auth_gss 구성 요소에서 XDR 디코딩 오류 발생 시 메모리 누수가 발생하는 취약점입니다. gssx_dec_ctx() 등의 함수가 메모리를 할당한 후 디코딩 과정에서 오류가 발생하면, 이미 할당된 버퍼를 해제하지 않고 즉시 반환하여 메모리 누수를 유발합니다.

💡 쉬운 설명

프로그램이 데이터를 읽는 과정에서 오류가 났을 때, 사용하던 메모리를 제대로 정리하지 않고 버려버리는 문제입니다. 이 문제가 반복되면 시스템의 메모리가 점점 부족해져 성능 저하나 시스템 중단이 발생할 수 있습니다.

🇺🇸 원문 (English)

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.

📍 영향받는 시스템

Linux Kernel (SUNRPC auth_gss 모듈 사용 시스템)

⚔️ 공격 벡터

조작된 XDR 데이터를 전송하여 디코딩 오류를 유도함으로써 지속적인 메모리 누수 유발

🛡️ 대응 방법

오류 발생 시 할당된 메모리를 해제하도록 수정된 최신 Linux 커널로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 패치된 버전인지 배포판 보안 공지를 통해 확인

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel