🔍 CVE-2026-48102

3.1
CVSS Score
LOW
2026-06-05
2026-06-17 10:54
✅ 완료

🇰🇷 한글 설명

7-Zip 9.11부터 26.00 버전까지 UDF 디스크 이미지 처리 중 힙 영역 바깥을 읽는 버그가 존재합니다. 이는 파일 식별자 설명자 파싱 시 경계 검사 순서가 잘못되어 최대 3바이트의 정보 유출 또는 서비스 거부(Crash)를 유발할 수 있습니다. 26.01 버전에서 해당 문제가 해결되었습니다.

💡 쉬운 설명

7-Zip 프로그램이 특정 형식의 압축 파일을 열 때, 메모리 경계를 넘어 잘못된 데이터를 읽는 오류가 있습니다. 이로 인해 프로그램이 충돌하거나 민감한 정보가 유출될 위험이 있습니다.

🇺🇸 원문 (English)

7-Zip is a file archiver with a high compression ratio. Versions 9.11 through 26.00 contain a heap out-of-bounds read of up to 3 bytes in the UDF disc image handler's File Identifier Descriptor parser. In CFileId::Parse (CPP/7zip/Archive/Udf/UdfIn.cpp), after validating size < 38 + idLen + impLen and advancing processed to 38 + impLen + idLen, the alignment-padding loop reads p[processed] while incrementing up to 3 times to reach a 4-byte boundary, and the processed <= size bounds check only runs after the loop. When (38 + impLen + idLen) % 4 != 0 and 38 + impLen + idLen == size, the loop reads 1 to 3 bytes past the end of the exact-size heap buffer allocated via buf.Alloc((size_t)item.Size). The UDF handler is registered for .iso and .udf files and auto-detected by signature, and the OOB read triggers during Open() when listing or extracting a crafted UDF image. Impact is limited to information disclosure (a 1-bit oracle per OOB byte via open/fail behavior) and denial of service (crash under hardened allocators); there is no write primitive. Version 26.01 fixes the issue.

📍 영향받는 시스템

7-Zip versions 9.11 through 26.00

⚔️ 공격 벡터

악의적으로 제작된 UDF 이미지 파일(.iso 또는 .udf)을 열거나 추출할 때 자동 감지되어 발생

🛡️ 대응 방법

7-Zip을 최신 버전(26.01 이상)으로 업데이트하여 취약점을 해결하십시오.

🔧 검증 코드

명령어 실행 결과 'Vulnerable'이 출력되면 취약한 버전이므로 업데이트가 필요하며, 'Safe'이면 안전한 버전입니다.

Shell / Script
7z | grep -oP 'Version \K[\d.]+' | awk '$1 < 26.01 {print "Vulnerable"} $1 >= 26.01 {print "Safe"}'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N

💻 영향받는 소프트웨어

7-Zip