🇰🇷 한글 설명
Linux 커널의 dm-integrity 모듈에서 인라인 모드이고 태그 크기가 HASH_MAX_DIGESTSIZE보다 클 때, 체크섬 계산용 스택 버퍼가 오버플로되는 문제가 수정되었습니다. CONFIG_STACKPROTECTOR가 활성화된 시스템에서는 커널 패닉이 발생할 수 있습니다. 이는 root 권한으로만 트리거 가능하므로 보안 취약점이 아닙니다.
💡 쉬운 설명
리눅스 커널의 디스크 무결성 검사 기능에서 특정 설정일 때 메모리 버퍼 크기가 부족해 시스템이 멈출 수 있는 버그입니다. 관리자(root) 권한이 있어야만 발생시킬 수 있어 외부 해커의 공격 대상은 아닙니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
dm-integrity: fix buffer overflow in inline mode with large tag size
In inline mode, dm_integrity_check and dm_integrity_inline_recheck
compute the checksum of each block into an on-stack buffer of
HASH_MAX_DIGESTSIZE bytes. integrity_sector_checksum pads its result
with zeroes up to the tag size, so if the tag size is larger than
HASH_MAX_DIGESTSIZE, the padding runs past the end of the buffer. With
CONFIG_STACKPROTECTOR the kernel panics in dm_integrity_check on the
first read.
Enlarge both buffers to hold MAX_TAG_SIZE bytes, as commit b93b6643e9b5
("dm integrity: fix a crash with unusually large tag size") did for
integrity_metadata.
Note that this is not a security bug because the buffer overflow can only
be triggered by root.
📍 영향받는 시스템
dm-integrity 인라인 모드를 사용하며 큰 태그 크기를 설정한 Linux 커널 (수정 커밋 적용 전 버전)
⚔️ 공격 벡터
로컬 root 권한 사용자가 큰 태그 크기로 dm-integrity 인라인 모드 장치를 구성해야 하므로 외부 원격 공격은 불가능합니다.
🛡️ 대응 방법
커널을 해당 수정 사항(b93b6643e9b5 이후 관련 패치)이 포함된 최신 버전으로 업데이트하십시오.
🔧 검증 코드
커널 버전이 패치된 최신 버전인지 확인하고, dm_integrity 모듈이 로드되지 않았다면 이 취약점의 영향을 받지 않습니다.
uname -r && grep -i dm_integrity /proc/modules 2>/dev/null || echo 'dm_integrity 모듈 미로드'