🔍 CVE-2026-109231

4.3
CVSS Score
MEDIUM
2026-10-31
2026-11-03 19:17
✅ 완료

🇰🇷 한글 설명

Germanized for WooCommerce 플러그인 4.1.4 이하 버전에는 활성화 토큰 재사용 취약점이 있습니다. 이중 옵트인이 활성화되고 미인증 고객 로그인 차단이 '아니요'로 설정된 경우, 인증된 공격자가 이메일을 피해자 이메일로 변경한 뒤 기존 활성화 토큰을 사용해 피해자의 주문 정보(이름, 주소, 전화번호, 구매 상품)를 열람할 수 있습니다.

💡 쉬운 설명

가입한 사용자가 자신의 이메일을 다른 사람의 이메일로 바꾼 뒤 예전 인증 링크를 사용하면, 그 사람의 주문 내역을 가져올 수 있는 문제입니다. 특정 설정이 기본값이 아닐 때만 발생합니다.

🇺🇸 원문 (English)

The Germanized for WooCommerce plugin for WordPress is vulnerable to Unauthorized Access of Private Data via Activation Token Reuse in versions up to, and including, 4.1.4. This is due to the `on_user_email_changed` hook — which is responsible for rotating the activation token and recording a pending-email-change marker on an unactivated Customer account — only being registered inside the `is_double_opt_in_login_enabled()` branch when "Disable login for unactivated customers" is set to Yes, leaving the original `?activate=` token valid and entirely unbound to the email address it was issued for when that setting is No. This makes it possible for authenticated attackers, with Subscriber-level access and above, to change their account email to a victim's billing email via the standard `/my-account/edit-account/` form and then redeem their original activation token through `customer_account_activate()`, triggering `link_customer_past_orders()` to reassign any matching guest order to the attacker's account and exposing the original buyer's billing name, street address, phone number, and purchased items on the attacker's My Account order page. Exploitation requires the site to have double opt-in enabled with "Disable login for unactivated customers" explicitly set to No (a non-default configuration), public customer registration enabled, and the original activation token redeemed within its one-day expiry window.

📍 영향받는 시스템

Germanized for WooCommerce 플러그인 4.1.4 이하 버전 (WordPress/WooCommerce 환경, 이중 옵트인 활성화 및 미인증 고객 로그인 차단 '아니요' 설정)

⚔️ 공격 벡터

구독자 권한 이상의 인증된 사용자가 계정 이메일을 피해자 이메일로 변경한 후 원래의 활성화 토큰(?activate=)을 사용해 피해자 주문을 자신의 계정에 연결하여 개인정보를 열람

🛡️ 대응 방법

Germanized for WooCommerce 플러그인을 4.1.5 이상 버전으로 업데이트하고, 필요 시 '미인증 고객 로그인 차단' 설정을 '예'로 변경

🔧 검증 코드

출력된 버전이 4.1.4 이하이면 취약하므로 4.1.5 이상으로 업데이트가 필요하며, 명령이 아무 결과도 내지 않으면 플러그인 경로를 직접 확인해야 합니다.

Shell / Script
wp plugin get germanized-for-woocommerce --field=version 2>/dev/null || grep -i 'Version:' wp-content/plugins/woocommerce-germanized/woocommerce-germanized.php 2>/dev/null

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

WordPress