🇰🇷 한글 설명
WordPress의 Advanced Form Integration 플러그인 2.9.0 버전 이하에서 인증 우회 취약점이 발견되었습니다. 공격자가 이메일 주소와 비밀번호 필드를 이용해 사용자 본인 확인 없이 임의의 사용자, 특히 관리자의 비밀번호를 변경할 수 있습니다. 이는 사이트 전체 권한 탈취로 이어질 수 있는 심각한 보안 결함입니다.
💡 쉬운 설명
로그인하지 않은 외부인이 웹사이트의 관리자 비밀번호를 마음대로 바꿀 수 있는 보안 구멍이 발견되었습니다. 공격자가 특정 양식을 이용해 관리자 계정을 가로채면 사이트의 모든 제어권을 뺏길 수 있습니다.
🇺🇸 원문 (English)
The Advanced Form Integration — Connect Forms to 300+ Apps plugin for WordPress is vulnerable to Authentication Bypass via Unverified Password Change in all versions up to, and including, 2.9.0 The `adfoin_ultimatememberac_send_data` function, which powers the Ultimate Member "Update Profile Field" action, resolves the target WordPress user from an attacker-supplied email address and passes an attacker-controlled field key and value directly to `UM()->user()->update_profile()` in the `account` context — which explicitly bypasses Ultimate Member's banned-key validation — without performing any submitter identity verification, ownership check, capability check, current-password reauthentication, or restriction on sensitive keys such as `user_pass`. This makes it possible for unauthenticated attackers to change the password of any WordPress user account, including Administrator accounts, by submitting a public Contact Form 7 form with a target email and `user_pass` as the field key, enabling full site takeover. Exploitation requires an administrator to have pre-configured a Contact Form 7 integration that maps the target email, field key, and value from public form inputs to the Ultimate Member Update Profile Field action — the exact workflow the plugin's own UI advertises for this action type.
📍 영향받는 시스템
Advanced Form Integration — Connect Forms to 300+ Apps plugin for WordPress (v2.9.0 및 그 이하 모든 버전)
⚔️ 공격 벡터
공개된 Contact Form 7 양식을 통해 타겟 이메일과 user_pass 필드 값을 전송하여 인증 없이 비밀번호 변경
🛡️ 대응 방법
해당 플러그인을 최신 버전으로 업데이트하거나, Contact Form 7과 Ultimate Member의 'Update Profile Field' 연동 설정을 즉시 제거하십시오.
🔧 검증 코드
출력된 플러그인 버전이 2.9.0 이하인지 확인하십시오.
wp plugin list --status=active | grep -i 'advanced-form-integration' && wp plugin list --all | grep -E 'advanced-form-integration' | awk '{print $2 " " $3}'