CVE-2026-48095
GHSL-2026-140_7-Zip: 7-Zip에 NTFS 압축 스트림 버퍼 과소 할당을 통한 힙 버퍼 오버플로가 존재함
- 게시됨
- 2026. 6. 5.
- 업데이트됨
- 2026. 6. 8.
- CNA 할당 중
- GitHub_M
- 증거 관찰됨
- 2026. 8. 17.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H낮음 · 다음 30일
- 백분위수
- 64.1%
- 모델 날짜
- 2026. 9. 21.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
7-Zip은 높은 압축률을 가진 파일 아카이버입니다. 버전 26.00 및 이전 버전에는 NTFS 압축 스트림 버퍼의 과소 할당(GetCuSize 시프트 UB)으로 인한 힙 버퍼 오버플로 취약점이 존재하며, 공격자가 임의 코드 실행 또는 애플리케이션 충돌을 유발할 수 있습니다. NTFS 핸들러의 CInStream::GetCuSize()는 압축 단위 버퍼 크기를 (UInt32)1 << (BlockSizeLog + CompressionUnit)으로 계산하며, ClusterSizeLog >= 28 및 CompressionUnit == 4인 조작된 이미지는 지수를 32로 만들어 정의되지 않은 동작(UB)을 유발하고 x86/x64에서 붕괴되어 _inBuf가 1바이트로 할당됩니다. 그런 다음 ReadStream_FALSE는 64KB 반복으로 최대 256MB의 공격자 제어 데이터를 해당 1바이트 버퍼에 기록하며, CInStream 객체가 _inBuf로부터 불과 304바이트 뒤에 위치하므로 vtable 포인터가 덮어써지고 다음 디스패치 호출에서 vtable 하이재킹이 발생합니다. 32비트 빌드에서는 오버플로가 무조건 도달하며, 64비트에서는 병렬 8GB _outBuf 할당이 성공해야 하며, 그렇지 않으면 서비스 거부(DoS)로 안전하게 종료됩니다. NTFS 핸들러는 기본 7z.dll에서 기본적으로 활성화되어 있으며, 오프셋 3에서 "NTFS " 시그니처 기반 폴백 매칭을 통해 추출 또는 테스트 중 파일 확장자와 관계없이 조작된 이미지를 열 수 있습니다. 버전 26.01에서 이 문제가 수정되었습니다.
소스
1CVE-2026-48095
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.