🔍 CVE-2026-45964

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

🇰🇷 한글 설명

Linux 커널의 SUNRPC 구성 요소에서 gss_alloc_msg 함수 실행 중 오류가 발생할 경우 gss_auth 구조체의 참조 횟수(kref)가 적절히 해제되지 않는 메모리 누수 취약점이 발견되었습니다. kstrdup_const() 호출 실패 시 에러 경로에서 kref_put()이 누락되어 gss_auth 구조체가 메모리에서 해제되지 않는 문제가 있었습니다.

💡 쉬운 설명

시스템이 작업을 수행하다가 오류가 발생했을 때, 사용했던 메모리를 제대로 돌려주지 않고 계속 붙잡고 있는 현상입니다. 이 문제가 반복되면 시스템의 메모리가 점차 부족해져 성능 저하나 시스템 중단이 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: SUNRPC: fix gss_auth kref leak in gss_alloc_msg error path Commit 5940d1cf9f42 ("SUNRPC: Rebalance a kref in auth_gss.c") added a kref_get(&gss_auth->kref) call to balance the gss_put_auth() done in gss_release_msg(), but forgot to add a corresponding kref_put() on the error path when kstrdup_const() fails. If service_name is non-NULL and kstrdup_const() fails, the function jumps to err_put_pipe_version which calls put_pipe_version() and kfree(gss_msg), but never releases the gss_auth reference. This leads to a kref leak where the gss_auth structure is never freed. Add a forward declaration for gss_free_callback() and call kref_put() in the err_put_pipe_version error path to properly release the reference taken earlier.

📍 영향받는 시스템

Linux Kernel (SUNRPC 모듈을 사용하는 버전)

⚔️ 공격 벡터

특수하게 조작된 RPC 요청을 통해 커널 내 메모리 할당 오류를 유도하여 메모리 누수 발생

🛡️ 대응 방법

커널 패치(Commit 5940d1cf9f42 포함 버전)를 적용하여 에러 경로에서 kref_put()이 호출되도록 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인

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