🇰🇷 한글 설명
리눅스 커널의 vsock 모듈에서 버퍼 크기 제한 로직의 순서가 잘못되어 최소값 검사가 최대값 검사를 덮어쓰는 문제가 있습니다. 이로 인해 설정된 최대 메모리 한계를 초과하여 버퍼 크기가 무제한으로 증가할 수 있습니다.
💡 쉬운 설명
프로그램이 사용할 수 있는 메모리 크기를 제한하는 규칙에 오류가 있어, 설정된 최대 크기를 무시하고 더 큰 메모리를 사용할 수 있게 됩니다. 이는 시스템의 메모리 고갈이나 불안정을 초래할 수 있는 위험한 상태입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
vsock: fix buffer size clamping order
In vsock_update_buffer_size(), the buffer size was being clamped to the
maximum first, and then to the minimum. If a user sets a minimum buffer
size larger than the maximum, the minimum check overrides the maximum
check, inverting the constraint.
This breaks the intended socket memory boundaries by allowing the
vsk->buffer_size to grow beyond the configured vsk->buffer_max_size.
Fix this by checking the minimum first, and then the maximum. This
ensures the buffer size never exceeds the buffer_max_size.
📍 영향받는 시스템
Linux kernel (vsock 기능 사용 시스템)
⚔️ 공격 벡터
로컬에서 vsock 소켓을 생성하고 버퍼 크기를 최대값보다 큰 최소값으로 설정하여 메모리 한계를 우회
🛡️ 대응 방법
벤더가 제공하는 최신 커널 패치 또는 업데이트를 즉시 적용하여 버퍼 크기 제한 순서를 수정
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 안정 버전인지 벤더 문서에서 확인