🇰🇷 한글 설명
OPay Payment Gateway for WooCommerce 워드프레스 플러그인(2.5.5 이하)은 결제 제공자로부터 온 결제 알림인지 제대로 검증하지 않습니다. 서명 검증에 쓰이는 시크릿이 기본값으로 비어 있어, 인증되지 않은 공격자가 위조된 알림으로 임의 주문을 결제 완료, 취소, 실패 상태로 변경할 수 있습니다.
💡 쉬운 설명
온라인 쇼핑몰의 결제 확인 시스템이 진짜 결제 회사에서 온 메시지인지 제대로 확인하지 않습니다. 해커가 가짜 결제 완료 메시지를 보내 주문 상태를 임의로 바꿀 수 있습니다.
🇺🇸 원문 (English)
The OPay Payment Gateway for WooCommerce WordPress plugin through 2.5.5 does not properly verify that payment notifications originate from the payment provider, as the secret used to validate their signature is empty by default, allowing unauthenticated attackers to forge a valid notification and mark arbitrary orders as paid, cancelled or failed.
📍 영향받는 시스템
WordPress WooCommerce용 OPay Payment Gateway 플러그인 2.5.5 이하 버전
⚔️ 공격 벡터
공격자가 시크릿이 비어 있는 점을 이용해 서명을 위조한 결제 알림 요청을 플러그인 엔드포인트로 보내 주문 상태를 변경
🛡️ 대응 방법
OPay 플러그인을 2.5.5 초과 패치 버전으로 업데이트하고 결제 알림 시크릿 값을 강력한 임의 문자열로 설정
🔧 검증 코드
출력된 버전이 2.5.5 이하이면 취약하므로 즉시 업데이트가 필요하고, 출력이 없으면 해당 플러그인이 설치되지 않은 것입니다.
wp plugin list --name=opay-payment-gateway-for-woocommerce --field=version 2>/dev/null || grep -i 'Version' wp-content/plugins/*opay*/*.php 2>/dev/null | head -n 5