🇰🇷 한글 설명
리눅스 커널의 dm-pcache 구성 요소에서 kset의 크기가 할당된 세그먼트 범위를 초과할 수 있는 취약점이 발견되었습니다. 조작된 key_num을 통해 세그먼트 경계를 넘어서는 읽기/쓰기 작업이 발생하여 시스템 버그(BUG_ON)를 유발할 수 있습니다.
💡 쉬운 설명
데이터를 저장하는 공간의 크기를 속여서 정해진 범위를 벗어나게 만드는 오류입니다. 이로 인해 시스템이 예상치 못한 동작을 하거나 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
dm-pcache: reject a kset that overruns its segment
cache_replay(), the writeback worker and the GC worker read a kset of
get_kset_onmedia_size() bytes and advance the position by it. A forged
key_num makes that size exceed the segment's remaining space, so the
advance walks past the segment and trips the cache_pos_advance() BUG_ON.
Reject a kset whose on-media size exceeds cache_seg_remain() before use.
📍 영향받는 시스템
Linux kernel (dm-pcache 모듈을 사용하는 시스템)
⚔️ 공격 벡터
조작된 key_num 값을 전달하여 kset의 크기를 세그먼트 잔여 공간보다 크게 만드는 방식
🛡️ 대응 방법
dm-pcache의 kset 크기가 세그먼트 잔여 공간을 초과하는지 검사하는 패치가 적용된 최신 리눅스 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 보안 패치 버전인지 배포판 보안 공지를 통해 확인