🇰🇷 한글 설명
WordPress의 Advanced IP Blocker 플러그인에서 인증 우회 취약점이 발견되었습니다. 공격자가 비밀번호 검증 단계 없이 TOTP(2단계 인증) 단계로 직접 접근하여 6자리 코드를 무차별 대입함으로써 관리자 권한을 탈취할 수 있습니다.
💡 쉬운 설명
로그인할 때 비밀번호를 맞게 입력했는지 확인하는 절차가 빠져 있어, 공격자가 비밀번호 없이 2단계 인증 번호만 계속 입력해 맞출 수 있는 보안 구멍이 있습니다. 이를 통해 해커가 사이트의 관리자 권한을 통째로 뺏을 수 있습니다.
🇺🇸 원문 (English)
The Advanced IP Blocker plugin for WordPress is vulnerable to Authentication Bypass in all versions up to, and including, 8.13.13 The vulnerability exists because `handle_login_action()` performs no server-side check — via transient, session marker, or equivalent — that a requester completed step-1 password authentication before processing a step-2 TOTP submission for the POSTed `user_id`; compounding this, an error branch in the function unconditionally mints a fresh `advaipbl-2fa-interim-{user_id}` nonce and delivers it in a `Location` header to any unauthenticated caller, after which `display_2fa_login_form_step_2()` renders a valid `advaipbl-2fa-verify-{user_id}` nonce in HTML — both nonces computed against a fixed `uid=0` empty-session context and therefore fully reusable by the attacker across subsequent requests. This makes it possible for unauthenticated attackers to bypass authentication entirely for any 2FA-enabled account, including administrators, by brute-forcing an unthrottled 6-digit TOTP code (no attempt counter, no account lockout, and no `wp_login_failed` firing) and receiving a fully authenticated session cookie via `wp_set_auth_cookie` without ever supplying the account password, resulting in complete site takeover. Exploitation requires only a known `user_id` for an account that has the plugin's 2FA feature enabled.
📍 영향받는 시스템
Advanced IP Blocker plugin for WordPress (version 8.13.13 및 그 이하 모든 버전)
⚔️ 공격 벡터
알려진 user_id를 대상으로 인증 없이 TOTP 입력 단계에 접근하여 6자리 코드를 무차별 대입(Brute-force) 공격
🛡️ 대응 방법
플러그인을 최신 버전으로 즉시 업데이트하고, 2단계 인증 설정이 활성화된 계정의 보안 상태를 점검하십시오.
🔧 검증 코드
출력된 결과에서 플러그인 이름과 현재 설치된 버전을 확인하여 8.13.13 이하인지 체크하십시오.
wp plugin list --status=active | grep -i 'advanced-ip-blocker'