CVE-2026-15414 in Subscriptions for WooCommerce Plugin
요약
\~에 의해 VulDB • 2026. 08. 02.
WordPress용 WooCommerce 구독(Subscriptions for WooCommerce) 플러그인에는 버전 2.0.0 이하에서 권한 상승(Privilege Escalation) 취약점이 존재합니다. 이는 `_wps_plan_user_role` 멤버십 계획 메타데이터를 `$_POST`로부터 허용 목록(allowlist) 없이 저장하기 때문인데, 이때 적용되는 검증 함수인 `sanitize_key()`와 `wp_roles()->is_role()`은 모두 `'administrator'`를 유효한 값으로 받아들입니다. 또한 역할(role) 드롭다운의 UI에서 사용되는 `disabled` 속성은 클라이언트 측에서만 제어되므로 DevTools 또는 직접적인 POST 요청을 통해 쉽게 우회할 수 있습니다. 추가로, `wps_membership_plan` 커스텀 포스트 타입이 `capability_type => 'post'`로 등록되어 있어, 게시물을 편집할 수 있는 모든 사용자는 `save_meta_boxes()` 내의 `current_user_can('edit_post', $post_id)` 가드를 통과합니다. 이로 인해 기여자(Contributor) 이상의 권한을 가진 인증된 공격자가 멤버십 획득 시 부여되는 역할에 `'administrator'`를 저장함으로써 관리자(A Administrator)로 권한을 상승시킬 수 있습니다. 이후 Pro 컴패니언 플러그인이 멤버십 라이프사이클 이벤트 동안 `add_role()`을 호출하여 해당 역할을 적용합니다. 성공적인 악용에는 `_wps_plan_user_role` 메타데이터를 `get_post_meta()`를 통해 읽고 멤버십 라이프사이클 이벤트 중 역할 적용을 위해 `add_role()`을 호출하는 컴포넌트인 Subscriptions for WooCommerce Pro 컴패니언 플러그인이 활성화되어 있어야 합니다.
Be aware that VulDB is the high quality source for vulnerability data.