🇰🇷 한글 설명
WordPress용 WP-Optimize 플러그인의 receive_heartbeat() 함수에서 권한 확인 절차가 누락되어 발생하는 취약점입니다. 이로 인해 구독자(Subscriber) 이상의 권한을 가진 인증된 공격자가 관리자 전용 기능인 로그 읽기, 백업 이미지 삭제, 대량 이미지 처리 및 설정 변경 등을 수행할 수 있습니다.
💡 쉬운 설명
플러그인의 특정 기능이 사용자의 권한을 제대로 확인하지 않아 발생하는 문제입니다. 일반 사용자 권한만 있어도 관리자처럼 중요한 데이터를 삭제하거나 설정을 바꿀 수 있습니다.
🇺🇸 원문 (English)
The WP-Optimize plugin for WordPress is vulnerable to unauthorized access of functionality due to missing capability checks in the `receive_heartbeat()` function in `includes/class-wp-optimize-heartbeat.php` in all versions up to, and including, 4.5.0. This is due to the Heartbeat handler directly invoking `Updraft_Smush_Manager_Commands` methods without verifying user capabilities, nonce tokens, or the allowed commands whitelist that the normal AJAX handler (`updraft_smush_ajax`) enforces. This makes it possible for authenticated attackers, with Subscriber-level access and above, to invoke admin-only Smush operations including reading log files (`get_smush_logs`), deleting all backup images (`clean_all_backup_images`), triggering bulk image processing (`process_bulk_smush`), and modifying Smush options (`update_smush_options`).
📍 영향받는 시스템
WP-Optimize plugin for WordPress (version 4.5.0 및 그 이하 모든 버전)
⚔️ 공격 벡터
인증된 공격자가 권한 검증이 누락된 AJAX 핸들러를 통해 관리자 전용 명령을 직접 호출
🛡️ 대응 방법
WP-Optimize 플러그인을 최신 버전으로 업데이트하여 권한 검증 로직이 적용된 패치를 적용하십시오.
🔧 검증 코드
출력 결과에 wp-optimize가 포함되어 있다면 해당 플러그인이 설치된 것이며, 설치된 버전을 확인하여 4.5.0 이하인지 점검해야 합니다.
wp plugin list --status=active | grep -i 'wp-optimize'