Fallo en Paypal permitía obtener la contraseña en plano

La vulnerabilidad, la cual ha sido catalogada con un CVSS 8.0, permitía a un atacante obtener las credenciales del usuario desde el servidor

Indagando sobre el funcionamiento de PayPal, el investigador de seguridad Alex Birsan descubrió el pasado año un fichero Javascript dinámico en la plataforma de pagos online que contenía dos valores relevantes (el ‘csrf’ y el ‘_sessionId’). Dichos valores, al encontrarse en un JavaScript, eran accesibles mediante un XSSI, un tipo de ataque que incluyendo el fichero en una etiqueta ‘<script>’ los hace accesibles.

Los dos valores dinámicos del JavaScript. Fuente: Alex Birsan en Medium.

Aunque esto ya de por sí podría considerarse un fallo, profundizando sobre el uso de dichos valores llegó a la conclusión que eran utilizados por PayPal en la resolución de reCaptcha. Cuando se producen varios intentos de acceso en la plataforma, se valida enviando dichos valores, junto con el token de Google. Es entonces en dicha petición que el servidor devuelve el email y contraseña del usuario para volver a enviar el formulario de autenticación.

Aprovechando la vulnerabilidad, el sitio web de un atacante puede provocar varios accesos frustrados a PayPal para comenzar la verificación reCaptcha. Al ser accesible por el sitio del atacante los dos datos requeridos gracias al XSSI antes nombrado, sólo necesita enviar la comprobación del captcha con los valores para recibir las credenciales del usuario.

Prueba de concepto del robo de las credenciales por el sitio del atacante. Fuente: Alex Birsan en Medium.

El error, que fue reportado a PayPal el 18 de noviembre, fue resuelto 24 horas después tras ser confirmado. El descubrimiento le ha valido una recompensa de 15.300$ al investigador.

PayPal, para solucionar el fallo, ha implementado una tercera clave necesaria en la resolución del captcha que no es explotable por un XSSI. No obstante, ha quedado demostrado que la empresa almacena, aunque sea durante un corto periodo de tiempo, las contraseñas en plano de su usuarios, ya que es el servidor el que devuelve la credencial a la petición.

Aunque sea durante un corto periodo de tiempo (lo cual se desconoce) sigue siendo una mala práctica almacenar las credenciales de los usuarios en plano.

Más información:

The Bug That Exposed Your PayPal Password:
https://medium.com/@alex.birsan/the-bug-that-exposed-your-paypal-password-539fc2896da9

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.