🇰🇷 한글 설명
WordPress의 MDJM Event Management 플러그인 1.7.8.4 이하 버전에서 권한 상승 취약점이 발견되었습니다. 권한 확인 및 논스(nonce) 검증 누락과 서버 측 허용 목록 검증 부재로 인해, 인증되지 않은 공격자가 임의의 역할을 수정하여 관리자 권한을 획득할 수 있습니다.
💡 쉬운 설명
로그인을 하지 않은 외부인도 웹사이트의 권한 설정을 마음대로 바꿀 수 있는 보안 구멍이 발견되었습니다. 이를 통해 일반 사용자 계정을 관리자 계정으로 승격시켜 사이트 전체를 장악할 수 있습니다.
🇺🇸 원문 (English)
The MDJM Event Management plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 1.7.8.4. This is due to missing capability checks and nonce verification in the `MDJM_Permissions::set_permissions()` and `MDJM_Employee_Manager::init()` functions, combined with the absence of server-side allow-list validation on the `employee_roles[]` and `new_role` POST parameters before they are passed to `mdjm_set_employee_role()` and `WP_User::set_role()`. This makes it possible for unauthenticated attackers to grant arbitrary MDJM capabilities — including `mdjm_employee` and `mdjm_employee_edit` — to any registered WordPress role, and subsequently leverage a subscriber-level account to escalate privileges to Administrator. `MDJM_Permissions::init()` is registered on the public WordPress `init` hook without any authentication gate, meaning the role-manipulation endpoint is reachable without any prior login.
📍 영향받는 시스템
MDJM Event Management plugin for WordPress (버전 1.7.8.4 및 그 이하 모든 버전)
⚔️ 공격 벡터
인증되지 않은 상태에서 특정 POST 파라미터를 조작하여 권한 설정 엔드포인트에 접근하는 방식
🛡️ 대응 방법
MDJM Event Management 플러그인을 최신 버전으로 업데이트하거나, 권한 확인 및 논스 검증이 포함된 패치를 적용하십시오.
🔧 검증 코드
출력된 버전 번호가 1.7.8.4와 같거나 그보다 낮은 숫자인지 확인하십시오.
wp plugin list --name mdjm-event-management --format=json | grep -oP '(?<=version":")[^"]+'