🔍 CVE-2026-109975

6.4
CVSS Score
MEDIUM
2026-10-28
2026-10-29 02:16
✅ 완료

🇰🇷 한글 설명

Cozy Blocks – Website Builder for WordPress 플러그인은 2.2.27 이하 버전에서 'content (block attribute icon.view / icon.layout / icon.gap)' 매개변수에 대한 입력값 검증 및 출력 이스케이프가 부족하여 저장형 크로스사이트 스크립팅(XSS)에 취약합니다. 기여자(Contributor) 이상 권한을 가진 인증된 공격자가 악성 스크립트를 삽입할 수 있으며, 해당 페이지에 접근하는 사용자의 브라우저에서 스크립트가 실행됩니다. wp_kses_post가 저장 시 적용되지만 '<' 문자가 없는 따옴표 기반 속성 탈출 페이로드는 차단되지 않습니다.

💡 쉬운 설명

글을 올릴 수 있는 권한이 있는 사용자가 웹사이트 페이지에 몰래 악성 코드를 심을 수 있습니다. 다른 방문자가 그 페이지를 열면 악성 코드가 실행되어 정보가 유출될 수 있습니다.

🇺🇸 원문 (English)

The Cozy Blocks – Website Builder for WordPress Block Editor | Gutenberg Blocks, Patterns & Templates plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'content (block attribute icon.view / icon.layout / icon.gap)' parameter in all versions up to, and including, 2.2.27 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Although wp_kses_post is applied on save, it does not neutralize a quote-only attribute-breakout payload containing no '<' character, leaving the block comment and its decoded JSON attributes intact and exploitable at render time.

📍 영향받는 시스템

Cozy Blocks 플러그인 2.2.27 이하 버전이 설치된 WordPress 사이트

⚔️ 공격 벡터

기여자 이상 권한의 인증된 사용자가 블록 속성(icon.view/icon.layout/icon.gap)에 따옴표 기반 속성 탈출 스크립트를 삽입하여 저장형 XSS를 유발

🛡️ 대응 방법

Cozy Blocks 플러그인을 2.2.28 이상 최신 버전으로 업데이트하고, 업데이트 전까지 기여자 등 낮은 권한 사용자의 콘텐츠 작성 권한을 제한

🔧 검증 코드

출력된 버전이 2.2.27 이하이면 취약하며, 2.2.28 이상이면 패치된 버전입니다. 명령 결과가 없으면 플러그인이 설치되지 않은 것입니다.

Shell / Script
wp plugin get cozy-blocks --field=version 2>/dev/null || grep -h 'Version:' wp-content/plugins/cozy-blocks/*.php 2>/dev/null | head -1

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

WordPress