🔍 CVE-2026-4021

8.1
CVSS Score
HIGH
2026-03-24
2026-04-24 16:32
✅ 완료

🇰🇷 한글 설명

Contest Gallery WordPress 플러그인의 이메일 확인 핸들러가 사용자 ID 대신 이메일 문자열을 SQL WHERE 절에 사용하여 MySQL 정수 강제 변환 취약점을 발생시킵니다. RegMailOptional 설정 활성화 시 공격자는 조작된 이메일로 등록해 관리자의 활성화 키를 덮어쓰고, 미인증 AJAX 엔드포인트를 통해 비밀번호 없이 관리자 계정을 탈취할 수 있습니다.

💡 쉬운 설명

WordPress의 특정 플러그인에 있는 인증 결함으로 공격자가 비밀번호 없이 관리자 계정에 접근할 수 있습니다. 특정 설정이 켜져있으면 누구나 쉽게 이를 악용할 수 있습니다.

🇺🇸 원문 (English)

The Contest Gallery plugin for WordPress is vulnerable to an authentication bypass leading to admin account takeover in all versions up to, and including, 28.1.5. This is due to the email confirmation handler in `users-registry-check-after-email-or-pin-confirmation.php` using the user's email string in a `WHERE ID = %s` clause instead of the numeric user ID, combined with an unauthenticated key-based login endpoint in `ajax-functions-frontend.php`. When the non-default `RegMailOptional=1` setting is enabled, an attacker can register with a crafted email starting with the target user ID (e.g., `[email protected]`), trigger the confirmation flow to overwrite the admin's `user_activation_key` via MySQL integer coercion, and then use the `post_cg1l_login_user_by_key` AJAX action to authenticate as the admin without any credentials. This makes it possible for unauthenticated attackers to take over any WordPress administrator account and gain full site control.

📍 영향받는 시스템

Contest Gallery plugin for WordPress version 28.1.5 and earlier

⚔️ 공격 벡터

Attacker registers with crafted email starting with admin user ID (e.g., [email protected]), triggers confirmation flow to overwrite admin's user_activation_key via MySQL integer coercion, then authenticates via post_cg1l_login_user_by_key AJAX action

🛡️ 대응 방법

Update Contest Gallery plugin to version 28.1.6 or later; temporarily disable RegMailOptional=1 setting if immediate upgrade is not possible

🔧 검증 코드

Plugin directory에서 user_activation_key 관련 코드가 발견되면 버전 확인 후 28.1.5 이하는 취약, 28.1.6 이상은 패치됨

Shell / Script
grep -r 'user_activation_key' /path/to/wordpress/wp-content/plugins/contest-gallery/ 2>/dev/null | head -1 || echo 'Plugin not installed'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

MySQL