🇰🇷 한글 설명
WordPress용 Extra Checkout Options 플러그인의 eco_save_settings() 함수에서 권한 검증 및 논스(nonce) 검증이 누락되어 임의 파일 업로드가 가능합니다. 이를 통해 낮은 권한을 가진 인증된 사용자가 PHP 파일 업로드를 허용하도록 설정을 변경하고, 장바구니 및 결제 페이지의 AJAX 액션을 악용하여 원격 코드 실행(RCE)을 수행할 수 있습니다.
💡 쉬운 설명
웹사이트의 낮은 권한을 가진 사용자가 관리자처럼 설정을 바꿔서 악성 파일을 올릴 수 있는 보안 약점입니다. 공격자가 이 파일을 통해 웹사이트를 마음대로 조종할 수 있는 위험이 있습니다.
🇺🇸 원문 (English)
The Extra Checkout Options (addon for Extra Product Options & Add-Ons for WooCommerce) plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 2.3.2. This is due to missing authorization and nonce validation in the eco_save_settings() function, which allows low-privileged authenticated users to modify the tc_eco_custom_file_types upload allowlist setting, combined with insufficient authorization on the wc_eco_upload_file AJAX action. This makes it possible for authenticated attackers, with Subscriber-level access and above, to allow PHP uploads, upload a PHP file using the frontend upload nonce exposed on cart and checkout pages, and achieve remote code execution. NOTE: This vulnerability was partially fixed in version 2.3.2.
📍 영향받는 시스템
Extra Checkout Options (WooCommerce 애드온) 플러그인 2.3.2 이하 모든 버전
⚔️ 공격 벡터
낮은 권한의 인증된 사용자가 설정 변경 및 AJAX 업로드 기능을 악용하여 PHP 파일 업로드
🛡️ 대응 방법
플러그인을 최신 버전으로 업데이트하거나 보안 패치가 적용된 버전으로 교체하십시오.
🔧 검증 코드
명령어 결과에 해당 플러그인이 나타나면 설치 여부를 확인하고, 관리자 페이지에서 버전을 체크하여 2.3.2 이하인지 확인하십시오.
wp plugin list --status=active | grep -i 'extra-checkout-options'