🇰🇷 한글 설명
WordPress의 Divi Form Builder 플러그인 5.1.8 이하 버전에서 임의 파일 업로드를 통한 원격 코드 실행(RCE) 취약점이 발견되었습니다. do_image_upload() 함수 내의 불충분한 확장자 검증으로 인해 공격자가 .phtml, .php5 등 실행 가능한 파일을 업로드할 수 있습니다. 특히 Nginx 서버 환경에서는 .htaccess 보호가 작동하지 않아 공격 위험이 더욱 높습니다.
💡 쉬운 설명
웹사이트의 양식 만들기 도구에 허점이 있어, 해커가 악성 파일을 몰래 올릴 수 있는 문제입니다. 해커가 파일을 올리는 데 성공하면 웹사이트를 마음대로 조종할 수 있게 됩니다.
🇺🇸 원문 (English)
The Divi Form Builder plugin for WordPress is vulnerable to Arbitrary File Upload leading to Remote Code Execution in all versions up to and including 5.1.8. This is due to insufficient file extension validation in the do_image_upload() function where user-supplied input from the acceptFileTypes POST parameter is directly interpolated into a regular expression used to validate uploaded files. Attackers can specify PHP-executable extensions such as .phtml, .phar, .php5, or .php7 to bypass the plugin's .htaccess protection which only blocks .php files specifically. Additionally, on Nginx-based servers, the .htaccess protection is completely ineffective as Nginx does not process .htaccess files. This makes it possible for unauthenticated attackers (who can obtain a nonce from any public page containing a form) to upload executable PHP files to the publicly accessible /wp-content/uploads/de_fb_uploads/ directory and achieve Remote Code Execution by accessing the uploaded file via HTTP. The vulnerability was partially patched in version 5.1.3.
📍 영향받는 시스템
Divi Form Builder plugin for WordPress (version 5.1.8 and below)
⚔️ 공격 벡터
acceptFileTypes POST 파라미터를 조작하여 검증을 우회한 후, 실행 가능한 PHP 파일을 업로드하여 HTTP로 접근
🛡️ 대응 방법
Divi Form Builder 플러그인을 최신 버전으로 즉시 업데이트하십시오.
🔧 검증 코드
출력된 결과에서 divi-form-builder의 버전이 5.1.8 이하인지 확인하십시오.
wp-cli plugin list --allow-root | grep -E 'divi-form-builder'