🇰🇷 한글 설명
Advanced Custom Fields: Extended 및 PRO 플러그인 0.9.2.8 이전 버전의 프론트엔드 Forms 모듈 update-user 동작에서 요청자의 수정 권한 검증이 누락되어 있습니다. 관리자가 아닌 대상 계정의 경우 권한 확인이 수행되지 않아, 인증되지 않은 방문자가 해당 계정의 자격 증명을 덮어쓰고 세션을 획득할 수 있습니다. 공격은 사이트가 사용자 업데이트 대상을 현재 사용자 대신 방문자 입력값으로 매핑한 폼을 게시한 경우에만 가능합니다.
💡 쉬운 설명
웹사이트에 설치된 특정 플러그인의 결함으로, 로그인하지 않은 방문자가 다른 일반 사용자의 비밀번호를 바꿔 그 계정을 가로챌 수 있습니다. 해당 사이트가 특정 형태의 입력 폼을 운영하는 경우에만 위험합니다.
🇺🇸 원문 (English)
The Advanced Custom Fields: Extended WordPress plugin before 0.9.2.8, Advanced Custom Fields: Extended PRO WordPress plugin before 0.9.2.8 does not verify that the requester is authorised to edit the targeted user account in the update-user action of its front-end Forms module, performing that check only when the target account holds an administrator role, which allows unauthenticated visitors to overwrite any non-administrator account's credentials and obtain a session for that account. Exploitation requires the site to publish a form whose user-update action maps its target to a visitor-submitted value rather than to the default current user.
📍 영향받는 시스템
WordPress용 Advanced Custom Fields: Extended 및 Advanced Custom Fields: Extended PRO 플러그인 0.9.2.8 미만 버전
⚔️ 공격 벡터
사용자 업데이트 대상을 방문자 입력값으로 매핑한 프론트엔드 폼을 통해 인증 없이 대상 계정의 자격 증명을 덮어쓰고 세션을 탈취
🛡️ 대응 방법
플러그인을 0.9.2.8 이상 버전으로 즉시 업데이트하고, 사용자 업데이트 폼 설정을 점검하며, 의심 계정의 비밀번호를 재설정
🔧 검증 코드
출력된 version 값이 0.9.2.8 미만이면 취약하며, 0.9.2.8 이상이면 패치가 적용된 것입니다. 플러그인이 없으면 결과가 비어 있습니다.
wp plugin list --name=acf-extended --fields=name,version,status 2>/dev/null || grep -h 'Version' wp-content/plugins/acf-extended/acf-extended.php 2>/dev/null