🔍 CVE-2026-107219

7.5
CVSS Score
HIGH
2026-10-07
2026-10-13 14:23
✅ 완료

🇰🇷 한글 설명

Excelize 라이브러리 2.3.1에서 2.11.0 버전 사이에서 발생하는 취약점으로, 공격자가 제어하는 spinCount 값을 통해 암호 키 유도 반복 횟수를 무제한으로 늘릴 수 있습니다. 조작된 OLE 암호화 워크북 헤더를 포함한 파일을 열 경우, CPU 코어 하나를 공격자가 의도한 시간 동안 점유하여 시스템 자원을 고갈시키는 서비스 거부(DoS) 공격이 가능합니다.

💡 쉬운 설명

악의적으로 만들어진 엑셀 파일을 열기만 해도 컴퓨터의 CPU가 멈추지 않고 계속 작동하여 컴퓨터가 느려지거나 먹통이 될 수 있습니다. 공격자가 계산 횟수를 엄청나게 높게 설정하여 컴퓨터를 계속 일하게 만드는 방식입니다.

🇺🇸 원문 (English)

Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.3.1 to 2.11.0, agile decryption accepts an attacker-controlled spinCount and performs that many password-key derivation iterations before verifier validation. OpenFile reaches agileDecrypt, which passes the unbounded spinCount to convertPasswdToKey before password verification. When a crafted OLE encrypted-workbook header supplies an excessive spinCount and the file is opened, the key-derivation loop performs unbounded attacker-selected work and cannot be cancelled, allowing an attacker to consume a CPU core for an attacker-controlled duration. No fixed version is available as of this review.

📍 영향받는 시스템

Excelize Go library versions 2.3.1 to 2.11.0

⚔️ 공격 벡터

조작된 spinCount 값이 포함된 OLE 암호화 엑셀 파일을 사용자에게 열도록 유도

🛡️ 대응 방법

현재 고정된 버전이 없으므로 라이브러리 업데이트를 주시하거나, 신뢰할 수 없는 암호화 파일의 처리를 제한해야 함

🔧 검증 코드

출력된 버전이 2.3.1 이상 2.11.0 이하인지 확인하여 취약 여부를 판단합니다.

Shell / Script
go list -m github.com/xuri/excelize/v2 2>/dev/null

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Microsoft Excel