🇰🇷 한글 설명
phpoffice/phpspreadsheet 라이브러리의 XSS 샤니타이저가 javascript 프로토콜과 특수 문자를 이용한 우회 공격에 취약합니다. 공격자가 스프레드시트 파일에 악성 스크립트를 삽입하면 사용자가 파일을 열 때 실행될 수 있습니다.
💡 쉬운 설명
엑셀 같은 스프레드시트를 다루는 PHP 라이브러리가 악성 코드 필터를 특수한 방식으로 우회당할 수 있습니다. 공격자가 파일에 숨겨진 악성 코드를 삽입하면 사용자가 열 때 실행됩니다.
🇺🇸 원문 (English)
phpoffice/phpspreadsheet is a pure PHP library for reading and writing spreadsheet files. Affected versions have been found to have a Bypass of the Cross-site Scripting (XSS) sanitizer using the javascript protocol and special characters. This issue has been addressed in versions 3.9.0, 2.3.7, 2.1.8, and 1.29.9. Users are advised to upgrade. There are no known workarounds for this vulnerability.
📍 영향받는 시스템
phpoffice/phpspreadsheet 3.9.0 미만, 2.3.7 미만, 2.1.8 미만, 1.29.9 미만 모든 버전
⚔️ 공격 벡터
javascript 프로토콜 및 특수 문자를 사용하여 XSS 필터를 우회하고 스프레드시트에 악성 스크립트 삽입
🛡️ 대응 방법
phpoffice/phpspreadsheet를 3.9.0, 2.3.7, 2.1.8 또는 1.29.9 이상으로 즉시 업그레이드
🔧 검증 코드
출력된 버전이 3.9.0, 2.3.7, 2.1.8, 1.29.9 중 하나 이상인지 확인하세요.
php -r '$c=json_decode(file_get_contents("composer.lock"));foreach($c->packages as $p)if($p->name=="phpoffice/phpspreadsheet")echo $p->version;' 2>/dev/null