🇰🇷 한글 설명
WordPress용 GamiPress 플러그인의 'gamipress_achievement' 숏코드 내 'heading_size' 속수에서 저장형 XSS 취약점이 발견되었습니다. 입력값 검증 및 출력 이스케이프 미비로 인해, 기여자(Contributor) 이상의 권한을 가진 공격자가 악성 스크립트를 삽입할 수 있습니다. 이 스크립트는 해당 페이지를 방문하는 사용자의 브라우저에서 실행됩니다.
💡 쉬운 설명
게이미피케이션 플러그인의 특정 설정값에 악성 코드를 숨겨둘 수 있는 보안 약점이 있습니다. 권한이 있는 사용자가 이 코드를 심어두면, 일반 사용자가 해당 페이지를 볼 때 해킹 공격을 당할 수 있습니다.
🇺🇸 원문 (English)
The GamiPress – Gamification plugin to reward points, achievements, badges & ranks in WordPress plugin for WordPress is vulnerable to Stored Cross-Site Scripting via 'heading_size' Shortcode Attribute in 'gamipress_achievement' in all versions up to, and including, 7.9.9.1 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. WordPress save-time wp_kses_post does not neutralize this payload because the injected value is stored inside a shortcode attribute rather than as a raw HTML tag, and is only emitted into HTML at render time without escaping.
📍 영향받는 시스템
GamiPress plugin for WordPress (version 7.9.9.1 및 그 이하 모든 버전)
⚔️ 공격 벡터
기여자(Contributor) 이상의 권한을 가진 공격자가 'gamipress_achievement' 숏코드의 'heading_size' 속성에 악성 스크립트를 삽입
🛡️ 대응 방법
GamiPress 플러그인을 최신 보안 패치가 적용된 버전으로 즉시 업데이트하십시오.
🔧 검증 코드
출력된 결과에서 gami-press의 버전이 7.9.9.1 이하인지 확인하십시오.
wp plugin list --allow-root | grep -E 'gami-press'