🇰🇷 한글 설명
WordPress의 Otter Blocks 플러그인에서 발생하는 부적절한 직접 객체 참조(IDOR) 취약점입니다. 공격자가 Stripe 결제 URL의 product_id 매개변수를 조작하여 낮은 가격의 제품을 결제하고도 프리미엄 제품의 권한을 획득할 수 있습니다.
💡 쉬운 설명
물건을 살 때 가격표를 몰래 바꿔치기하여 싼 가격에 비싼 물건을 살 수 있는 보안 결함입니다. 결제 과정에서 제품 번호와 가격이 제대로 일치하는지 확인하지 않아 발생합니다.
🇺🇸 원문 (English)
The Otter Blocks – Gutenberg Blocks, Page Builder for Gutenberg Editor & FSE plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 3.1.7 via the 'watch_checkout' function due to missing validation on a user controlled key. This makes it possible for unauthenticated attackers to pay for a lower-cost product while obtaining entitlement for a premium product by manipulating the product_id parameter independently of the price_id parameter in the Stripe checkout URL.
📍 영향받는 시스템
Otter Blocks – Gutenberg Blocks 플러그인 3.1.7 이하 모든 버전
⚔️ 공격 벡터
Stripe 결제 URL 내의 product_id 매개변수를 조작하여 가격 검증을 우회함
🛡️ 대응 방법
플러그인을 최신 버전으로 업데이트하거나 결제 로직에서 제품 ID와 가격 간의 일치 여부를 서버 측에서 검증하도록 수정해야 합니다.
🔧 검증 코드
출력된 결과에서 otter-blocks의 버전을 확인하여 3.1.7 이하인지 체크합니다.
wp plugin list --status=active | grep -E 'otter-blocks'