🇰🇷 한글 설명
The Popup Builder WordPress 플러그인 4.4.5 이하 버전에는 권한 검증이 누락되어 인증되지 않은 공격자가 단일 GET 요청으로 사이트의 모든 게시된 팝업을 휴지통으로 보낼 수 있습니다. 또한 sg_popup_preview_id 파라미터가 존재할 때 SGPopup::find() 함수의 결함으로 인해 모든 팝업에 대해 삭제 동작이 동시에 실행됩니다.
💡 쉬운 설명
이 취약점은 로그인하지 않은 누구나 웹사이트의 팝업 광고를 한꺼번에 삭제할 수 있는 문제입니다. 공격 자체는 매우 간단한 요청 하나로 가능하여 위험도가 매우 높습니다.
🇺🇸 원문 (English)
The Popup Builder – Create highly converting, mobile friendly marketing popups. plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 4.4.5 This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for unauthenticated attackers to trash all published popups on the site with a single unauthenticated GET request. The attack is amplified by a second flaw in SGPopup::find(), which returns false for every normally published popup when the sg_popup_preview_id parameter is present, causing the trash branch to fire against every popup on the site simultaneously.
📍 영향받는 시스템
WordPress Popup Builder 플러그인 4.4.5 이하 모든 버전
⚔️ 공격 벡터
인증 없이 특수 파라미터(sg_popup_preview_id)를 포함한 GET 요청을 전송하여 모든 게시된 팝업을 휴지통으로 이동
🛡️ 대응 방법
Popup Builder 플러그인을 4.4.6 이상 최신 버전으로 즉시 업데이트하고 권한 검증 로직을 확인
🔧 검증 코드
출력된 버전이 4.4.5 이하이면 취약하므로 즉시 업데이트가 필요하며, 4.4.6 이상이면 패치가 적용된 것입니다.
wp plugin get popup-builder --field=version 2>/dev/null || grep -m1 "Version:" wp-content/plugins/popup-builder/popup-builder.php