🇰🇷 한글 설명
Linux 커널의 nfp 드라이버에서 리소스 뮤텍스 할당 실패 시 NULL 포인터를 역참조하는 취약점이 발견되었습니다. nfp_cpp_resource_find() 함수가 뮤텍스 할당 실패에도 불구하고 성공을 반환하여, 이후 과정에서 NULL 포인터를 참조하며 시스템 오류를 유발할 수 있습니다.
💡 쉬운 설명
컴퓨터의 자원을 관리하는 과정에서 메모리 할당이 실패했을 때, 이를 제대로 확인하지 않고 잘못된 주소를 참조하여 시스템이 멈추거나 오류가 발생하는 문제입니다. 이는 프로그램이 '빈 주소'를 사용하려고 시도할 때 발생하는 전형적인 오류입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
nfp: Check resource mutex allocation
nfp_cpp_resource_find() allocates a CPP mutex handle for the matching
resource-table entry and then reports success. nfp_resource_try_acquire()
immediately passes that handle to nfp_cpp_mutex_trylock().
However, nfp_cpp_mutex_alloc() returns NULL on failure. If that happens
for a matching table entry, the resource lookup still returns success and
the following trylock dereferences a NULL mutex pointer while opening the
resource.
nfp_resource_acquire() already treats failure to allocate the table mutex
as -ENOMEM. Do the same for the resource mutex and fail the lookup before
publishing the rest of the resource handle.
This issue was found by a static analysis checker and confirmed by
manual source review.
📍 영향받는 시스템
Linux kernel (nfp driver 포함 버전)
⚔️ 공격 벡터
로컬 공격자가 리소스 할당 실패를 유도하여 커널 패닉 또는 시스템 불안정을 유발할 수 있음
🛡️ 대응 방법
nfp 드라이버의 뮤텍스 할당 실패 처리가 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인