🇰🇷 한글 설명
WordPress의 Next-Cart Store to WooCommerce Migration 플러그인 3.9.8 이하 버전에서 인증 우회 취약점이 발견되었습니다. 특정 조건에서 하드코딩된 기본 토큰을 사용함으로써 인증되지 않은 공격자가 임의의 SQL 실행 및 파일 삭제를 수행하여 사이트를 완전히 장악할 수 있습니다.
💡 쉬운 설명
플러그인의 보안 설정 오류로 인해 비밀번호 없이도 관리자 권한을 얻을 수 있는 문이 열려 있습니다. 공격자가 이 문을 통해 데이터베이스를 조작하거나 중요한 파일을 삭제하여 웹사이트를 망가뜨릴 수 있습니다.
🇺🇸 원문 (English)
The Next-Cart Store to WooCommerce Migration plugin for WordPress is vulnerable to Authentication Bypass in all versions up to, and including, 3.9.8 via the `NCWM_Kitconnect::run()` function. This is due to the plugin registering the `/wp-json/next_cart/v1/migration` REST route with `permission_callback` set to `__return_true` and relying on a hardcoded fallback value of `__token__` in `get_option('nextcart_token', '__token__')` when the `nextcart_token` option has not yet been written to the database. This makes it possible for unauthenticated attackers to bypass authentication to the migration endpoint by supplying the literal string `__token__` as the token, gaining access to privileged handlers that pass attacker-controlled SQL directly to `$wpdb->query()` and `$wpdb->get_results()` — enabling arbitrary SQL execution including administrator account creation — and pass an attacker-controlled path to `unlink()`, enabling arbitrary file deletion and full site takeover. The hardcoded fallback is reachable whenever the `nextcart_token` option has not yet been populated, which occurs after WP-CLI, network, or programmatic plugin activation without a subsequent authenticated `wp-admin` visit, as token generation is deferred to `admin_init` via `register_settings()`.
📍 영향받는 시스템
Next-Cart Store to WooCommerce Migration plugin (버전 3.9.8 및 그 이하 모든 버전)
⚔️ 공격 벡터
인증되지 않은 공격자가 특정 REST API 엔드포인트에 하드코딩된 '__token__' 값을 전송하여 인증을 우회하고 SQL 주입 및 파일 삭제 공격을 수행함
🛡️ 대응 방법
플러그인을 최신 버전으로 업데이트하거나, 해당 플러그인을 즉시 삭제하십시오.
🔧 검증 코드
명령어 결과에 해당 플러그인이 나타나면 설치된 것이며, 설치된 버전이 3.9.8 이하인지 확인이 필요합니다.
wp plugin list --status=active | grep -E 'next-cart-store-to-woocommerce-migration'