🇰🇷 한글 설명
Jexactyl 4.0.5 미만 버전에서 결제 처리 API가 Stripe 체크아웃 세션의 총 금액이나 통화를 주문 정보와 비교하지 않는 취약점이 발견되었습니다. 이를 통해 인증된 사용자는 실제 요구 금액보다 낮은 금액이나 잘못된 통화로 결제를 완료하여 서버를 저렴하게 구매하거나 업그레이드할 수 있습니다.
💡 쉬운 설명
결제 시스템이 실제 지불된 금액이 주문 금액과 일치하는지 확인하지 않는 허점이 있습니다. 공격자는 아주 적은 금액만 결제하고도 비싼 유료 서비스를 정상적으로 이용할 수 있습니다.
🇺🇸 원문 (English)
Jexactyl is a customisable game management panel and billing system. Prior to 4.0.5, the POST /api/client/billing/stripe/process endpoint accepts a client-supplied Stripe Checkout Session when payment_status is paid but does not compare amount_total or currency with the referenced order and configured billing currency. On an instance where the billing module is enabled and a Stripe secret key is configured, an authenticated client can therefore complete a lower-value or mismatched-currency payment and cause the order to be processed, provisioning, renewing, upgrading, or unsuspending the purchased server for less than the required price. This issue is fixed in version 4.0.5.
📍 영향받는 시스템
Jexactyl 버전 4.0.5 미만
⚔️ 공격 벡터
인증된 사용자가 조작된 Stripe Checkout Session을 POST /api/client/billing/stripe/process 엔드포인트로 전송
🛡️ 대응 방법
Jexactyl를 최신 버전인 4.0.5 이상으로 업데이트하십시오.
🔧 검증 코드
명령어 결과에 4.0.5 미만의 버전 번호가 나타나면 해당 취약점에 노출된 상태입니다.
curl -s http://<target_ip>/api/version | grep -E '4\.[0-4]\.'
💻 영향받는 소프트웨어
Multi-Domain Security Management Server