Vulnerabilidad en la URL a la página de pago en sylius/paypal-plugin (CVE-2021-41120)
Gravedad CVSS v3.1:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
05/10/2021
Última modificación:
12/08/2022
Descripción
sylius/paypal-plugin es un plugin de paypal para la plataforma de desarrollo Sylius. En las versiones afectadas la URL a la página de pago realizada tras el checkout es creada con el id de pago autoincrementado (/pay-with-paypal/{id}) y por tanto era fácil de predecir. El problema es que el formulario de la tarjeta de crédito ha rellenado previamente el campo "credit card holder" con el nombre y los apellidos del cliente y, por tanto, esto puede conllevar a una exposición de información personal identificable. Además, el mencionado formulario no requería autenticación. El problema ha sido parcheado en Sylius/PayPalPlugin versiones 1.2.4 y 1.3.1. Si los usuarios no pueden actualizar pueden anular una ruta sylius_paypal_plugin_pay_with_paypal_form y cambiar sus parámetros de URL a (por ejemplo) {orderToken}/{paymentId}, y luego anular el servicio SyliusPayPalPlugin\Controller\PayWithPayPalFormAction, para operar sobre el pago tomado del repositorio por estos 2 valores. También requeriría el uso de un método personalizado del repositorio. Además, se podría anular la plantilla @SyliusPayPalPlugin/payWithPaypal.html.twig, para añadir contingencias: ["SCA_ALWAYS"] en la llamada a la función hostedFields.submit(...) (línea 421). Luego tendría que ser manejado en el callback de la función
Impacto
Puntuación base 3.x
7.50
Gravedad 3.x
ALTA
Puntuación base 2.0
5.00
Gravedad 2.0
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:sylius:paypal:*:*:*:*:*:sylius:*:* | 1.0.0 (incluyendo) | 1.2.4 (excluyendo) |
| cpe:2.3:a:sylius:paypal:*:*:*:*:*:sylius:*:* | 1.3.0 (incluyendo) | 1.3.1 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



