🇰🇷 한글 설명
WordPress용 WP Recipe Maker 플러그인 10.8.1 이하 버전에서 임의의 숏코드 실행 취약점이 발견되었습니다. 공격자가 승인된 댓글의 내용을 통해 악성 숏코드를 삽입하면, 서버 측에서 해당 숏코드가 실행되어 민감한 정보가 JSON-LD 메타데이터를 통해 노출될 수 있습니다.
💡 쉬운 설명
댓글에 특수한 명령어를 숨겨서 작성하면, 웹사이트 관리자가 이를 승인하는 순간 서버 내부의 비밀 정보가 웹페이지에 나타나게 됩니다. 이를 통해 공격자는 사이트의 개인적인 데이터나 설정 정보를 훔쳐볼 수 있습니다.
🇺🇸 원문 (English)
The WP Recipe Maker plugin for WordPress is vulnerable to Arbitrary Shortcode Execution in all versions up to, and including, 10.8.1. The vulnerability exists because `WPRM_Metadata::sanitize_metadata()` recursively calls `do_shortcode()` on every scalar field of the recipe's structured metadata array — including the `reviewBody` field, which is populated verbatim from the `comment_content` of approved `wprm-comment-rating` comments — without sanitizing or stripping shortcode tokens before execution; the subsequent `wp_strip_all_tags()` and `strip_shortcodes()` calls operate only on the output string after execution has already fully occurred, providing no protection against server-side shortcode invocation. This makes it possible for unauthenticated attackers to execute arbitrary registered WordPress shortcodes server-side on every recipe page render, causing shortcode output — such as attachment captions, private post fields, or other data exposed by installed shortcodes — to be embedded in the page's JSON-LD `reviewBody` metadata and disclosed to all visitors who load the recipe page. Successful exploitation requires the attacker's rated comment to pass the site's comment approval threshold, either via auto-approval or moderator action, before the injected shortcode begins executing on page loads.
📍 영향받는 시스템
WP Recipe Maker plugin (WordPress) version 10.8.1 and below
⚔️ 공격 벡터
승인된 댓글(wprm-comment-rating)의 내용을 통해 악성 숏코드를 삽입하여 서버 측 실행 유도
🛡️ 대응 방법
WP Recipe Maker 플러그인을 최신 버전으로 업데이트하여 취약점이 해결된 패치를 적용하십시오.
🔧 검증 코드
출력된 결과에서 WP Recipe Maker의 버전을 확인하여 10.8.1 이하인지 체크합니다.
wp plugin list --format=table | grep -i 'wp-recipe-maker'