🇰🇷 한글 설명
Linux 커널의 ublk 구성 요소에서 import_ubuf() 함수의 반환 값을 적절히 확인하지 않아 발생하는 취약점입니다. 사용자 공간의 주소 범위가 허용되지 않은 영역일 경우, 초기화되지 않은 iov_iter 구조체가 ublk_copy_user_pages()로 전달되어 시스템 불안정이나 보안 문제를 야기할 수 있습니다.
💡 쉬운 설명
컴퓨터의 핵심 운영체제인 리눅스에서 메모리 주소를 확인하는 과정에 실수가 있어 발생한 문제입니다. 잘못된 메모리 주소를 사용하려고 시도할 때 시스템이 오류를 일으키거나 보안에 취약해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ublk: check import_ubuf() return value
import_ubuf() can fail if the address range (provided by the userspace
ublk server) is outside the allowed user address space. Return that 0
bytes were copied if import_ubuf() fails rather than passing an
uninitialized struct iov_iter to ublk_copy_user_pages().
📍 영향받는 시스템
ublk 모듈을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
사용자 공간의 ublk 서버가 허용되지 않은 메모리 주소 범위를 제공하여 커널의 메모리 처리 로직을 오작동하게 만듦
🛡️ 대응 방법
import_ubuf()의 반환 값을 검증하도록 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인