🇰🇷 한글 설명
Live Composer – Free WordPress Website Builder 플러그인의 'dslc_module_downloads_output' 숏코드에서 저장형 XSS 취약점이 발견되었습니다. 인증된 기여자(Contributor) 이상의 권한을 가진 공격자가 적절한 입력값 검증 및 출력 이스케이프 부재를 악용하여 악성 스크립트를 삽입할 수 있습니다. 이 스크립트는 사용자가 해당 페이지에 접속할 때마다 실행됩니다.
💡 쉬운 설명
웹사이트 제작 도구의 허점을 이용해 악성 코드를 몰래 심어두는 보안 약점입니다. 권한이 있는 사용자가 페이지에 나쁜 코드를 저장하면, 다른 사용자가 그 페이지를 볼 때 코드가 실행되어 정보를 탈취당할 수 있습니다.
🇺🇸 원문 (English)
The Live Composer – Free WordPress Website Builder plugin for WordPress is vulnerable to Stored Cross-Site Scripting via 'dslc_module_downloads_output' Shortcode Content in all versions up to, and including, 2.1.21 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. The save-time wp_kses_post check is bypassed because the payload is stored as a serialized string containing no HTML tags for kses to tokenize, and the shortcode callback re-emits attacker-controlled values — including view_all_link (href attribute), main_heading_title (h2 body), button_text (anchor body), and button_inline_svg (anchor body) — without any escaping at render time.
📍 영향받는 시스템
Live Composer – Free WordPress Website Builder plugin (버전 2.1.21 및 그 이하 모든 버전)
⚔️ 공격 벡터
기여자 이상의 권한을 가진 공격자가 숏코드의 특정 속성값에 악성 스크립트를 포함하여 저장
🛡️ 대응 방법
플러그인을 최신 버전으로 업데이트하거나, 입력값 검증 및 출력 이스케이프가 적용된 패치를 적용해야 합니다.
🔧 검증 코드
출력된 결과에서 live-composer의 버전이 2.1.21 이하인지 확인합니다.
wp plugin list --name live-composer | grep -E 'live-composer'