🇰🇷 한글 설명
Linux 커널의 EROFS 파일 시스템에서 글로벌 버퍼 크기 조정 시 발생하는 취약점입니다. 버퍼 크기 조정 실패 후 재시도 과정에서 잘못된 메모리 크기 계산으로 인해 버퍼 배열의 범위를 초과하여 데이터를 복사하는 메모리 손상이 발생할 수 있습니다.
💡 쉬운 설명
파일 시스템의 저장 공간을 늘리는 과정에서 계산 오류가 발생하여, 정해진 메모리 범위를 넘어서는 데이터를 잘못 기록할 수 있는 문제입니다. 이로 인해 시스템이 불안정해지거나 보안 문제가 생길 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
erofs: skip sufficiently large global buffers when resizing
z_erofs_gbuf_nrpages is advanced only after every global buffer has been
grown. If a resize fails after some buffers were enlarged, a retry
revisits those enlarged buffers.
Retrying the same size then returns -ENOMEM because alloc_pages_bulk()
has no pages to add and the unchanged return value is treated as a
failure. Retrying an intermediate size allocates a temporary pointer
array smaller than gbuf->nrpages and copies more existing pointers than
the array can hold.
Skip buffers that already satisfy the request. Once all remaining
buffers have caught up, advancing z_erofs_gbuf_nrpages again describes
the guaranteed minimum size across the pool.
📍 영향받는 시스템
Linux kernel (EROFS 파일 시스템을 사용하는 시스템)
⚔️ 공격 벡터
로컬 공격자가 조작된 EROFS 이미지 마운트를 통해 메모리 손상을 유도할 수 있음
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.