🇰🇷 한글 설명
WordPress용 AnyComment 플러그인 0.3.6 이하 버전에서 'email' 파라미터를 통한 저장형 XSS 취약점이 발견되었습니다. REST API 엔드포인트의 입력값 검증 미흡과 관리자 페이지 출력 시 이스케이프 처리가 누락되어, 공격자가 악성 스크립트를 삽입할 수 있습니다. 관리자가 구독 관리 페이지에 접속할 경우 삽입된 스크립트가 실행될 수 있습니다.
💡 쉬운 설명
댓글 플러그인의 이메일 입력란에 악성 코드를 몰래 심어두는 공격입니다. 관리자가 관리자 페이지를 열 때 이 코드가 실행되어 관리자의 권한을 탈취할 수 있습니다.
🇺🇸 원문 (English)
The AnyComment plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'email' parameter in versions up to, and including, 0.3.6. This is due to insufficient input sanitization on the public /wp-json/anycomment/v1/subscribe REST endpoint and missing output escaping in AnyCommentSubscriptionsTable::column_default(), which returns the stored email verbatim into an HTML <td> when the subscription's user_ID does not resolve to an existing WP_User. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever an administrator accesses the AnyComment → Subscriptions admin page.
📍 영향받는 시스템
WordPress AnyComment plugin versions up to and including 0.3.6
⚔️ 공격 벡터
인증되지 않은 공격자가 REST API(/wp-json/anycomment/v1/subscribe)를 통해 악성 스크립트가 포함된 이메일 값을 전송
🛡️ 대응 방법
AnyComment 플러그인을 최신 버전으로 업데이트하거나, 입력값 검증 및 출력 이스케이프가 적용된 패치 적용
🔧 검증 코드
출력된 결과에서 anycomment 플러그인의 버전이 0.3.6 이하인지 확인
wp-cli plugin list --allow-root | grep -E 'anycomment'