🇰🇷 한글 설명
Linux 커널의 NSM(Network Service Module) 드라이버에서 응답 길이를 검증하지 않아 발생하는 취약점입니다. 악의적인 백엔드가 버퍼 크기보다 큰 응답 길이를 보고할 경우, 커널 힙 메모리의 인접 데이터를 유출하는 Out-of-bounds read가 발생할 수 있습니다.
💡 쉬운 설명
장치가 보내주는 데이터의 길이를 제대로 확인하지 않아, 실제 데이터보다 더 많은 양을 읽어 들여 컴퓨터의 중요한 비밀 정보가 밖으로 새 나갈 수 있는 문제입니다. 이를 통해 공격자는 메모리에 저장된 민감한 정보를 훔쳐볼 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
misc: nsm: bound the device-reported response length
nsm_sendrecv_msg_locked() stores the virtqueue used-ring length reported
by the NSM device into msg->resp.len without bounding it to the response
buffer. A malicious or buggy backend can report a length larger than the
response buffer; parse_resp_raw() then copies that many bytes out of the
fixed buffer to user space, disclosing adjacent kernel heap (an
out-of-bounds read). The request path already floors its length in
fill_req_raw(); the response path lacks the symmetric check.
Clamp the stored length to the size of the response buffer. Well-behaved
devices report no more than the posted buffer size, so conforming traffic
is unaffected.
📍 영향받는 시스템
Linux kernel (NSM driver component)
⚔️ 공격 벡터
악의적이거나 버그가 있는 NSM 백엔드 장치가 버퍼 크기를 초과하는 응답 길이를 보고하여 커널 메모리 유출 유도
🛡️ 대응 방법
NSM 응답 길이를 응답 버퍼 크기 내로 제한하도록 커널 패치 적용
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 수정된 최신 보안 패치 버전인지 확인합니다.